@import url("/css/evodecks-brand-tokens-v3-0e88059ab5780edec538bda84152c809.css");

:root {
    --tracker-cyan: var(--ed-cyan, #00D4FF);
    --tracker-blue: var(--ed-blue, #2D78FF);
    --tracker-purple: var(--ed-purple, #6A3AFF);
    --tracker-navy: var(--ed-navy, #080E28);
    --tracker-graphite: var(--ed-graphite, #222837);
    --tracker-soft-surface: var(--ed-surface, #F6F8FC);
    --tracker-success: var(--ed-mint, #4BE2B5);
    --tracker-green: var(--ed-mint, #4BE2B5);
    --tracker-warning: var(--ed-warning, #FFD166);
    --tracker-danger: #FF697A;
    --tracker-deep-surface: #131E41;
    --tracker-deep-border: #384874;
    --tracker-light-muted: #AEB9D3;
    --tracker-ink: #080E28;
    --tracker-panel: #ffffff;
    --tracker-bg: linear-gradient(120deg, #F6F8FC 0%, #ffffff 48%, #E8FAFF 70%, #EEE9FF 100%);
    --tracker-border: #DDE4F0;
    --tracker-muted: #5B6478;
    --tracker-surface: #F6F8FC;
    --tracker-shadow: rgba(8, 14, 40, 0.12);
    --tracker-red: var(--tracker-purple);
    --tracker-red-dark: var(--tracker-ink);
    --tracker-yellow: var(--tracker-warning);
    --tracker-font-heading: Arial, Inter, system-ui, sans-serif;
    --tracker-font-body: Arial, Inter, system-ui, sans-serif;
    --tracker-radius-sm: var(--ed-radius-sm, 8px);
    --tracker-radius-md: var(--ed-radius-md, 16px);
    --tracker-card-shadow: var(--ed-shadow-card, 0 18px 50px rgba(8, 14, 40, 0.18));
    --tracker-sidebar-width: 17rem;
    --tracker-sidebar-rail-width: 4.75rem;
    --tracker-sidebar-collapsed-offset: calc(var(--tracker-sidebar-rail-width) + var(--tracker-sidebar-gutter));
    --tracker-sidebar-gutter: 1.5rem;
}

body {
    background: var(--tracker-bg);
    color: var(--tracker-ink);
    font-family: var(--tracker-font-body);
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--tracker-ink);
    font-family: var(--tracker-font-heading);
    font-weight: 800;
    letter-spacing: 0;
}

a {
    color: var(--tracker-blue);
}

a:hover,
a:focus {
    color: var(--tracker-purple);
}

.btn-primary {
    border-color: var(--tracker-blue);
    background: var(--tracker-blue);
    color: #ffffff;
    font-weight: 700;
}

.btn-primary:hover,
.btn-primary:focus {
    border-color: var(--tracker-purple);
    background: linear-gradient(135deg, var(--tracker-cyan) 0%, var(--tracker-blue) 48%, var(--tracker-purple) 100%);
    color: #ffffff;
}

.btn-outline-primary {
    border-color: var(--tracker-blue);
    color: var(--tracker-blue);
    font-weight: 700;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    border-color: var(--tracker-blue);
    background: var(--tracker-blue);
    color: #ffffff;
}

.btn-outline-secondary {
    border-color: var(--tracker-border);
    color: var(--tracker-muted);
    font-weight: 700;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    border-color: var(--tracker-blue);
    background: rgba(45, 120, 255, 0.1);
    color: var(--tracker-ink);
}

.btn-outline-success {
    border-color: var(--tracker-success);
    color: #12715c;
    font-weight: 700;
}

.btn-outline-success:hover,
.btn-outline-success:focus {
    border-color: var(--tracker-success);
    background: var(--tracker-success);
    color: var(--tracker-navy);
}

.btn-outline-danger {
    border-color: var(--tracker-danger);
    color: #bd3044;
    font-weight: 700;
}

.btn-outline-danger:hover,
.btn-outline-danger:focus {
    border-color: var(--tracker-danger);
    background: var(--tracker-danger);
    color: #ffffff;
}

.form-control,
.form-select {
    border-color: var(--tracker-border);
    color: var(--tracker-ink);
}

.form-control:focus,
.form-select:focus {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 0.2rem rgba(45, 120, 255, 0.18);
}

.nav-icon-sprite {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

.nav-icon {
    flex: 0 0 auto;
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.site-brand {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 13rem;
    min-width: 0;
    padding: 0.15rem;
}

.site-brand-logo {
    display: block;
    width: 100%;
    height: 2.8rem;
    object-fit: contain;
    object-position: left center;
}

.tracker-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 1030;
    width: var(--tracker-sidebar-width);
    border-right: 1px solid rgba(0, 212, 255, 0.28);
    background: rgba(8, 14, 40, 0.98);
    box-shadow: 14px 0 32px rgba(8, 14, 40, 0.22);
    color: var(--tracker-light-muted);
    overflow: hidden;
    transition: width 180ms ease, transform 180ms ease, visibility 180ms ease;
}

.tracker-sidebar-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    padding: 0.9rem 0.75rem;
}

.tracker-sidebar-header {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    min-height: 3.65rem;
    padding: 0 0.45rem 0.8rem;
    border-bottom: 1px solid rgba(221, 228, 240, 0.14);
}

.tracker-sidebar-nav {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    padding-top: 0.7rem;
}

.sidebar-nav-scroll {
    flex: 1 1 auto;
    min-height: 0;
    padding-right: 0.15rem;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(174, 185, 211, 0.35) transparent;
}

.sidebar-nav-group {
    display: grid;
    gap: 0.2rem;
    margin: 0 0 0.9rem;
}

.sidebar-nav-group-label {
    margin: 0 0 0.3rem;
    padding: 0 0.7rem;
    color: #8f9bb8;
    font-size: 0.69rem;
    font-weight: 900;
    letter-spacing: 0.11em;
    line-height: 1.2;
    text-transform: uppercase;
}

.tracker-sidebar .nav-link,
.tracker-sidebar .nav-logout-button,
.sidebar-nav-disclosure > summary {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    min-height: 2.65rem;
    padding: 0.62rem 0.72rem;
    border: 1px solid transparent;
    border-radius: 10px;
    background: transparent;
    color: var(--tracker-light-muted);
    font-weight: 750;
    line-height: 1.2;
    overflow-wrap: anywhere;
    text-align: left;
    text-decoration: none;
    transition: background-color 150ms ease, border-color 150ms ease, color 150ms ease, transform 150ms ease;
}

.tracker-sidebar .nav-link:hover,
.tracker-sidebar .nav-logout-button:hover,
.sidebar-nav-disclosure > summary:hover {
    border-color: rgba(0, 212, 255, 0.16);
    background: rgba(45, 120, 255, 0.15);
    color: #ffffff;
}

.tracker-sidebar .nav-link:focus-visible,
.tracker-sidebar .nav-logout-button:focus-visible,
.sidebar-nav-disclosure > summary:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: -3px;
    box-shadow: 0 0 0 2px var(--tracker-cyan);
    color: #ffffff;
}

.tracker-sidebar .nav-link.is-active,
.tracker-sidebar .nav-link[aria-current="page"] {
    border-color: rgba(0, 212, 255, 0.46);
    background: linear-gradient(100deg, rgba(45, 120, 255, 0.34), rgba(106, 58, 255, 0.2));
    box-shadow: inset 3px 0 0 var(--tracker-cyan);
    color: #ffffff;
}

.tracker-sidebar .nav-link.is-active .nav-icon,
.tracker-sidebar .nav-link[aria-current="page"] .nav-icon {
    color: var(--tracker-cyan);
}

.sidebar-nav-disclosure {
    margin: 0 0 0.55rem;
}

.sidebar-nav-disclosure > summary {
    cursor: pointer;
    list-style: none;
}

.sidebar-nav-disclosure > summary::-webkit-details-marker {
    display: none;
}

.nav-disclosure-chevron {
    width: 0.48rem;
    height: 0.48rem;
    margin-left: auto;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg) translateY(-0.15rem);
    transition: transform 150ms ease;
}

.sidebar-nav-disclosure[open] .nav-disclosure-chevron {
    transform: rotate(225deg) translate(-0.1rem, -0.05rem);
}

.sidebar-nav-disclosure-links {
    display: grid;
    gap: 0.15rem;
    margin-top: 0.2rem;
    padding-left: 0.7rem;
}

.sidebar-nav-disclosure-links .nav-link {
    font-size: 0.9rem;
}

.sidebar-account-block {
    flex: 0 0 auto;
    display: grid;
    gap: 0.2rem;
    margin-top: 0.55rem;
    padding-top: 0.75rem;
    border-top: 1px solid rgba(221, 228, 240, 0.14);
}

.nav-label {
    min-width: 0;
}

.nav-logout-form {
    display: flex;
    margin: 0;
}

.nav-logout-button {
    border: 0;
    cursor: pointer;
}

.sidebar-toggle {
    position: fixed;
    top: 1.25rem;
    left: calc(var(--tracker-sidebar-width) - 1rem);
    z-index: 1040;
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0, 212, 255, 0.5);
    border-radius: 999px;
    background: var(--tracker-navy);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(8, 14, 40, 0.24);
    transition: left 180ms ease, background-color 150ms ease, transform 150ms ease;
}

.sidebar-toggle:hover,
.sidebar-toggle:focus-visible {
    border-color: var(--tracker-cyan);
    background: var(--tracker-blue);
    color: #ffffff;
}

.sidebar-toggle:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 2px;
}

.sidebar-menu-icon {
    display: grid;
    gap: 0.2rem;
    width: 1rem;
}

.sidebar-menu-icon span {
    display: block;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
}

body.sidebar-collapsed .tracker-sidebar {
    width: var(--tracker-sidebar-rail-width);
}

body.sidebar-collapsed .sidebar-toggle {
    left: calc(var(--tracker-sidebar-rail-width) - 1rem);
}

body.sidebar-collapsed .tracker-sidebar-inner {
    padding-inline: 0.55rem;
}

body.sidebar-collapsed .tracker-sidebar-header {
    justify-content: center;
    padding-inline: 0;
}

body.sidebar-collapsed .site-brand {
    justify-content: center;
    width: 2.65rem;
    height: 2.65rem;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--tracker-cyan), var(--tracker-blue) 50%, var(--tracker-purple));
    color: #ffffff;
    text-decoration: none;
}

body.sidebar-collapsed .site-brand::before {
    content: "E";
    font-family: var(--tracker-font-heading);
    font-size: 1.25rem;
    font-weight: 900;
}

body.sidebar-collapsed .site-brand-logo,
body.sidebar-collapsed .sidebar-nav-group-label,
body.sidebar-collapsed .sidebar-nav-secondary,
body.sidebar-collapsed .sidebar-nav-disclosure,
body.sidebar-collapsed .nav-logout-form,
body.sidebar-collapsed .nav-label {
    display: none;
}

body.sidebar-collapsed .sidebar-nav-group,
body.sidebar-collapsed .sidebar-account-block {
    gap: 0.35rem;
}

body.sidebar-collapsed .tracker-sidebar .nav-link {
    justify-content: center;
    min-height: 2.85rem;
    padding: 0.7rem;
}

body.sidebar-collapsed .tracker-sidebar .nav-link.is-active,
body.sidebar-collapsed .tracker-sidebar .nav-link[aria-current="page"] {
    box-shadow: inset 0 -3px 0 var(--tracker-cyan);
}

.sidebar-scrim,
.mobile-bottom-nav,
.shared-public-menu {
    display: none;
}

.shared-public-nav {
    position: sticky;
    top: 0;
    z-index: 1020;
    display: grid;
    grid-template-columns: minmax(8rem, 14rem) minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    min-height: 4.5rem;
    padding: 0.6rem clamp(1rem, 3vw, 2.5rem);
    border-bottom: 1px solid rgba(0, 212, 255, 0.22);
    background: rgba(8, 14, 40, 0.96);
    box-shadow: 0 12px 30px rgba(8, 14, 40, 0.14);
    backdrop-filter: blur(14px);
}

.shared-public-brand img {
    display: block;
    width: 100%;
    max-width: 12rem;
    height: 2.75rem;
    object-fit: contain;
    object-position: left center;
}

.shared-public-links {
    display: flex;
    gap: 0.25rem;
    align-items: center;
    justify-content: center;
}

.shared-public-links a,
.shared-public-sign-in,
.shared-public-sign-up,
.shared-public-menu summary,
.shared-public-menu div a {
    border-radius: 9px;
    color: var(--tracker-light-muted);
    font-weight: 800;
    text-decoration: none;
}

.shared-public-links a {
    padding: 0.55rem 0.75rem;
}

.shared-public-links a:hover,
.shared-public-links a:focus-visible,
.shared-public-links a.is-active,
.shared-public-links a[aria-current="page"] {
    background: rgba(45, 120, 255, 0.18);
    color: #ffffff;
}

.shared-public-links a.is-active,
.shared-public-links a[aria-current="page"] {
    box-shadow: inset 0 -2px 0 var(--tracker-cyan);
}

.shared-public-sign-in {
    min-height: 2.55rem;
    display: inline-flex;
    align-items: center;
    padding: 0.55rem 1rem;
    border: 1px solid var(--tracker-cyan);
    background: rgba(0, 212, 255, 0.12);
    color: #ffffff;
    white-space: nowrap;
}

.shared-public-account-actions {
    display: flex;
    gap: 0.55rem;
    align-items: center;
}

.shared-public-sign-up {
    min-height: 2.55rem;
    display: inline-flex;
    align-items: center;
    padding: 0.55rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.32);
    color: #ffffff;
    white-space: nowrap;
}

.shared-public-sign-up:hover,
.shared-public-sign-up:focus-visible {
    border-color: var(--tracker-cyan);
    background: rgba(0, 212, 255, 0.12);
    color: #ffffff;
}

.shared-public-sign-in:hover,
.shared-public-sign-in:focus-visible {
    background: var(--tracker-blue);
    color: #ffffff;
}

.shared-public-nav a:focus-visible,
.shared-public-menu summary:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 2px;
}

.public-home-page {
    min-height: 100vh;
    background: #080e28;
    color: #ffffff;
}

.public-home-topbar {
    position: absolute;
    top: 1rem;
    left: 1rem;
    right: 1rem;
    z-index: 20;
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    justify-content: space-between;
}

.public-login-dropdown {
    position: relative;
    flex: 0 0 auto;
}

.public-login-dropdown summary {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: 0.45rem 0.9rem;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 8px;
    background: rgba(8, 14, 40, 0.82);
    color: #ffffff;
    cursor: pointer;
    font-weight: 900;
    list-style: none;
}

.public-login-dropdown summary::-webkit-details-marker {
    display: none;
}

.public-login-form,
.public-login-menu {
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 0;
    display: grid;
    gap: 0.75rem;
    width: min(20rem, calc(100vw - 2rem));
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.98);
    color: var(--tracker-ink);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.32);
}

.public-login-form label {
    display: grid;
    gap: 0.25rem;
    margin: 0;
    font-size: 0.78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.public-login-menu a,
.public-login-menu button {
    display: block;
    width: 100%;
    padding: 0.35rem 0;
    border: 0;
    background: transparent;
    color: var(--tracker-blue);
    font-weight: 900;
    text-align: left;
    text-decoration: none;
}

.public-home-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-end;
    max-width: min(46rem, calc(100vw - 9rem));
}

.public-home-nav a {
    min-height: 2.25rem;
    padding: 0.38rem 0.75rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    background: rgba(8, 14, 40, 0.62);
    color: #ffffff;
    font-size: 0.88rem;
    font-weight: 900;
    text-decoration: none;
}

.public-home-nav a:hover,
.public-home-nav a:focus,
.public-login-dropdown summary:hover,
.public-login-dropdown summary:focus {
    border-color: rgba(0, 212, 255, 0.72);
    color: #ffffff;
}

.public-search-hero {
    position: relative;
    display: grid;
    align-items: center;
    min-height: 84vh;
    padding: 6.5rem 1rem 4rem;
    overflow: hidden;
    background: #080e28;
}

.public-search-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("/photos/evodecks-logo-v3-fe4aabe06e007d078a65c54581588e6e.png");
    background-repeat: no-repeat;
    background-position: right 7vw center;
    background-size: min(42rem, 58vw) auto;
    opacity: 0.2;
}

.public-search-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(8, 14, 40, 0.82);
}

.public-search-hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 1.4rem;
    width: min(100%, 68rem);
    margin: 0 auto;
}

.public-search-logo {
    width: min(22rem, 84vw);
    height: auto;
}

.public-search-copy {
    display: grid;
    gap: 0.75rem;
    max-width: 44rem;
}

.public-search-copy h1 {
    margin: 0;
    color: #ffffff;
    font-size: 4rem;
    line-height: 1;
}

.public-search-copy p:not(.eyebrow) {
    max-width: 38rem;
    margin: 0;
    color: var(--tracker-light-muted);
    font-size: 1.1rem;
    line-height: 1.45;
}

.public-search-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: stretch;
    width: min(100%, 58rem);
}

.public-search-input {
    min-height: 3.35rem;
    border: 2px solid rgba(0, 212, 255, 0.32);
    border-radius: 8px;
    font-size: 1rem;
}

.public-search-button {
    min-width: 10rem;
    border-radius: 8px;
    font-weight: 900;
}

.public-search-examples {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.public-search-examples a {
    display: inline-flex;
    min-height: 2rem;
    align-items: center;
    padding: 0.25rem 0.75rem;
    border: 1px solid rgba(75, 226, 181, 0.28);
    border-radius: 8px;
    background: rgba(75, 226, 181, 0.1);
    color: #dffdf3;
    font-weight: 900;
    text-decoration: none;
}

.public-route-section {
    padding: 3rem 1rem 4rem;
    background: #f6f8fc;
    color: var(--tracker-ink);
}

.public-route-inner {
    width: min(100%, 74rem);
    margin: 0 auto;
}

.public-route-heading {
    margin-bottom: 1.25rem;
}

.public-route-heading h2 {
    margin: 0;
    font-size: 2rem;
}

.public-route-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 0.85rem;
}

.public-route-card {
    display: grid;
    gap: 0.4rem;
    min-height: 8rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    color: var(--tracker-ink);
    text-decoration: none;
    box-shadow: 0 10px 24px rgba(8, 14, 40, 0.08);
}

.public-route-card:hover,
.public-route-card:focus {
    border-color: rgba(45, 120, 255, 0.45);
    color: var(--tracker-ink);
    transform: translateY(-1px);
}

.public-route-card span {
    color: var(--tracker-blue);
    font-weight: 900;
    text-transform: uppercase;
}

.public-route-card strong {
    font-size: 1.05rem;
    line-height: 1.35;
}

.public-home-footer {
    background: var(--tracker-navy);
    color: var(--tracker-light-muted);
}

.public-home-footer-inner {
    display: grid;
    gap: 0.75rem;
    padding: 1.2rem 0;
}

.public-home-footer p {
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.45;
}

.login-page {
    background: linear-gradient(120deg, var(--tracker-navy) 0%, #0A1533 48%, #064D63 68%, #3A218C 100%);
}

.login-page .tracker-shell {
    padding: 2rem 0;
}

.login-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 30rem);
    gap: 4rem;
    align-items: center;
    max-width: 1120px;
    min-height: 100vh;
}

.login-brand-story {
    display: grid;
    gap: 2.5rem;
    color: #ffffff;
}

.login-brand-story h1 {
    margin: 0 0 1rem;
    color: #ffffff;
    font-size: clamp(3rem, 8vw, 5.6rem);
    line-height: 0.96;
}

.login-brand-story p {
    max-width: 38rem;
    margin: 0;
    color: var(--tracker-light-muted);
    font-size: 1.15rem;
    line-height: 1.45;
}

.login-brand-logo {
    display: block;
    width: min(24rem, 100%);
    height: auto;
}

.login-panel h1 {
    margin-bottom: 1rem;
}

.login-logo {
    display: block;
    width: min(19rem, 100%);
    margin-bottom: 1rem;
}

.user-admin-create-form {
    padding-top: 0.5rem;
}

.user-admin-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
    gap: 0.9rem;
}

.user-admin-store-grid,
.profile-store-grid,
.event-form-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
    gap: 0.9rem;
}

.user-admin-store-grid.compact {
    grid-template-columns: repeat(2, minmax(9rem, 1fr));
    gap: 0.45rem;
    margin-top: 0.6rem;
}

.user-admin-store-details summary {
    cursor: pointer;
    color: var(--tracker-blue);
    font-weight: 800;
}

.profile-store-wide,
.event-form-wide {
    grid-column: 1 / -1;
}

.form-check-row {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
}

.user-admin-table {
    min-width: 1180px;
}

.profile-shell {
    max-width: 56rem;
}

.profile-form {
    gap: 1rem;
}

.account-email-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
}

.registration-shell {
    padding-block: 2rem;
}

.registration-honeypot {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.registration-terms {
    display: flex;
    gap: 0.5rem;
    align-items: flex-start;
}

.profile-password-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
    gap: 0.9rem;
}

.tracker-shell {
    width: auto;
    max-width: none;
    margin-left: calc(var(--tracker-sidebar-width) + var(--tracker-sidebar-gutter));
    margin-right: var(--tracker-sidebar-gutter);
    padding: 2rem 0 3rem;
    transition: margin-left 180ms ease;
}

body.sidebar-collapsed .tracker-shell {
    margin-left: var(--tracker-sidebar-collapsed-offset);
}

body.has-public-navigation .tracker-shell {
    margin-right: var(--tracker-sidebar-gutter);
    margin-left: var(--tracker-sidebar-gutter);
}

body.has-public-navigation.login-page .tracker-shell,
body.has-public-navigation.printable-checklist-page .tracker-shell {
    margin-right: auto;
    margin-left: auto;
}

.login-page .tracker-shell,
.printable-checklist-page .tracker-shell {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
}

.site-footer {
    margin-top: 2rem;
    margin-left: var(--tracker-sidebar-width);
    border-top: 1px solid rgba(0, 212, 255, 0.22);
    background: var(--tracker-navy);
    color: var(--tracker-light-muted);
    transition: margin-left 180ms ease;
}

body.sidebar-collapsed .site-footer {
    margin-left: var(--tracker-sidebar-rail-width);
}

body.has-public-navigation .site-footer {
    margin-left: 0;
}

.login-page .site-footer,
.printable-checklist-page .site-footer {
    margin-left: 0;
}

.site-footer-inner {
    padding: 1rem 0;
    max-width: none;
}

.site-footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem 1rem;
    margin-bottom: 0.65rem;
}

.site-footer-links a {
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 900;
    text-decoration: none;
}

.site-footer-links a:hover,
.site-footer-links a:focus {
    color: var(--tracker-cyan);
}

.site-footer p {
    max-width: 72rem;
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.45;
}

.policy-shell {
    max-width: 66rem;
}

.policy-panel {
    display: grid;
    gap: 0.85rem;
}

.policy-panel h1,
.policy-panel h2,
.policy-panel p {
    margin: 0;
}

.policy-panel h2 {
    margin-top: 0.45rem;
    font-size: 1.2rem;
}

.tracker-panel {
    position: relative;
    margin-bottom: 1.5rem;
    padding: 1.5rem;
    border: 1px solid var(--tracker-border);
    border-radius: var(--tracker-radius-sm);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 34px var(--tracker-shadow);
}

.tracker-panel > :last-child {
    margin-bottom: 0;
}

.tracker-panel .table {
    margin-bottom: 0;
    color: var(--tracker-ink);
    border-color: var(--tracker-border);
}

.tracker-panel .table > :not(caption) > * > * {
    border-bottom-color: var(--tracker-border);
}

.tracker-panel .table thead th {
    border-bottom: 1px solid var(--tracker-border);
    background: var(--tracker-surface);
    color: var(--tracker-muted);
    font-size: 0.86rem;
    font-weight: 800;
}

.tracker-panel .table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-accent-bg: var(--tracker-surface);
    color: var(--tracker-ink);
}

.tracker-panel .table-hover > tbody > tr:hover > * {
    --bs-table-accent-bg: rgba(45, 120, 255, 0.08);
    color: var(--tracker-ink);
}

.panel-header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.panel-header > div:first-child {
    min-width: 0;
}

.panel-header h2,
.panel-header h3 {
    margin: 0 0 0.35rem;
}

.panel-header > .btn,
.panel-header > .action-row {
    flex: 0 0 auto;
}

.compact-header {
    margin-bottom: 0.5rem;
}

.deck-section-totals {
    margin-bottom: 1rem;
}

.deck-list-section {
    margin-top: 1.25rem;
}

.deck-list-section:first-of-type {
    margin-top: 0;
}

.deck-list-section-heading {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    align-items: center;
    justify-content: space-between;
    padding: 0.85rem 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-red-dark);
}

.deck-list-section-heading h3 {
    margin: 0;
    font-size: 1.05rem;
}

.deck-list-section-table {
    margin-top: 0.75rem;
}

[data-deck-list-view][hidden] {
    display: none !important;
}

.deck-list-view-toggle {
    flex: 0 0 auto;
}

.panel-header > .deck-list-toolbar {
    flex: 1 1 26rem;
}

.deck-list-toolbar {
    justify-content: flex-end;
    max-width: 100%;
    min-width: 0;
}

.deck-list-toolbar > * {
    min-width: 0;
}

.deck-list-lock-control {
    flex: 0 0 auto;
}

[data-deck-list-view-controller]:not([data-active-deck-list-view="list"]) [data-deck-list-only] {
    display: none;
}

.deck-list-lock-toggle {
    display: inline-flex;
    gap: 0.4rem;
    align-items: center;
}

.deck-list-lock-checkbox:focus-visible + .deck-list-lock-toggle {
    outline: 3px solid rgba(45, 120, 255, 0.32);
    outline-offset: 2px;
}

.deck-list-lock-toggle.is-unlocked {
    color: #2b8a3e;
    border-color: rgba(43, 138, 62, 0.45);
    background: rgba(226, 246, 230, 0.8);
}

.deck-lock-icon {
    position: relative;
    display: inline-block;
    width: 0.95rem;
    height: 0.95rem;
    color: currentColor;
}

.deck-lock-icon::before,
.deck-lock-icon::after {
    content: "";
    position: absolute;
    display: block;
}

.deck-lock-icon::before {
    left: 0.22rem;
    top: 0;
    width: 0.52rem;
    height: 0.48rem;
    border: 2px solid currentColor;
    border-bottom: 0;
    border-radius: 0.45rem 0.45rem 0 0;
}

.deck-lock-icon::after {
    left: 0.08rem;
    bottom: 0.02rem;
    width: 0.8rem;
    height: 0.58rem;
    border: 2px solid currentColor;
    border-radius: 0.16rem;
}

.deck-list-lock-toggle.is-unlocked .deck-lock-icon::before {
    left: 0.42rem;
    transform: rotate(-24deg);
    transform-origin: left bottom;
}

.deck-art-layout-toggle {
    flex: 0 0 auto;
}

[data-active-deck-list-view="list"] [data-deck-art-layout-controls] {
    display: none;
}

.deck-art-stack-button {
    flex: 0 0 auto;
}

[data-active-deck-list-view="list"] [data-deck-art-stack-cards],
[data-active-deck-art-layout="snap"] [data-deck-art-stack-cards] {
    display: none;
}

.deck-list-card-stack {
    display: grid;
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.deck-list-card-row {
    display: grid;
    grid-template-columns: 3.25rem minmax(11rem, 1fr) minmax(12rem, 0.72fr) minmax(10.5rem, auto);
    gap: 0.85rem;
    align-items: center;
    min-width: 0;
    padding: 0.8rem;
    border: 1px solid rgba(45, 120, 255, 0.18);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 8px 20px rgba(8, 14, 40, 0.06);
}

.deck-list-card-main {
    align-self: center;
    display: grid;
    gap: 0.4rem;
    min-width: 0;
}

.deck-list-card-main .card-name {
    font-size: 1rem;
}

.deck-list-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 800;
}

.deck-list-card-meta > span:not(.status-pill) {
    display: inline-flex;
    align-items: center;
    min-height: 1.45rem;
    padding: 0.12rem 0.45rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: var(--tracker-surface);
}

.deck-card-format-legality {
    max-width: 100%;
}

.deck-list-card-counts {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(5.65rem, 1fr));
    gap: 0.45rem;
    align-items: stretch;
    min-width: 0;
}

.deck-list-card-count {
    display: grid;
    place-items: center;
    gap: 0.2rem;
    min-width: 0;
    margin: 0;
    padding: 0.45rem 0.5rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    text-align: center;
}

.deck-list-card-count > span {
    color: var(--tracker-muted);
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1;
    max-width: 100%;
    overflow-wrap: normal;
    text-transform: uppercase;
}

.deck-list-card-count > strong {
    color: var(--tracker-red-dark);
    font-size: 0.95rem;
    line-height: 1.15;
}

.deck-list-card-count .form-control-sm {
    width: min(100%, 5.75rem);
    min-width: 0;
    text-align: center;
}

.deck-list-card-actions {
    align-self: center;
    align-items: center;
    justify-content: flex-end;
    min-width: 0;
}

.deck-list-card-actions .btn {
    white-space: nowrap;
}

[data-inline-edit-active="true"] .deck-list-card-row {
    grid-template-columns: 3.25rem minmax(12rem, 1fr) minmax(17rem, 0.8fr) minmax(7.5rem, auto);
}

[data-inline-edit-active="true"] .deck-list-card-counts {
    grid-template-columns: repeat(2, minmax(7rem, 1fr)) minmax(5.65rem, 0.75fr);
}

[data-inline-edit-active="true"] .deck-list-card-count .form-control-sm {
    width: min(100%, 6.75rem);
}

.deck-list-delete-card-button {
    flex: 0 0 auto;
}

.trash-can-icon {
    position: relative;
    display: inline-block;
    width: 0.85rem;
    height: 0.95rem;
    color: currentColor;
}

.trash-can-icon::before,
.trash-can-icon::after {
    content: "";
    position: absolute;
    display: block;
}

.trash-can-icon::before {
    left: 0.08rem;
    top: 0.06rem;
    width: 0.7rem;
    height: 0.16rem;
    border-top: 2px solid currentColor;
    border-radius: 0.12rem;
    box-shadow: 0.2rem -0.14rem 0 -0.04rem currentColor;
}

.trash-can-icon::after {
    left: 0.15rem;
    top: 0.3rem;
    width: 0.56rem;
    height: 0.55rem;
    border: 2px solid currentColor;
    border-top-width: 1px;
    border-radius: 0.05rem 0.05rem 0.14rem 0.14rem;
}

.segmented-control-option:disabled,
.segmented-control-option.disabled {
    cursor: not-allowed;
    opacity: 0.58;
}

.deck-card-action-menu {
    position: absolute;
    top: 0.45rem;
    right: 0.45rem;
    z-index: 8;
}

.deck-card-action-menu-trigger {
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 1px solid rgba(8, 14, 40, 0.14);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 8px 18px rgba(8, 14, 40, 0.12);
    cursor: pointer;
    list-style: none;
}

.deck-card-action-menu-trigger::-webkit-details-marker {
    display: none;
}

.deck-card-action-menu-trigger span {
    display: block;
    width: 0.88rem;
    height: 2px;
    margin: 1px 0;
    border-radius: 999px;
    background: var(--tracker-ink);
}

.deck-card-action-menu[open] .deck-card-action-menu-trigger,
.deck-card-action-menu-trigger:hover,
.deck-card-action-menu-trigger:focus-visible {
    border-color: rgba(45, 120, 255, 0.42);
    box-shadow: 0 10px 22px rgba(45, 120, 255, 0.18);
}

.deck-card-action-menu-panel {
    position: absolute;
    top: calc(100% + 0.35rem);
    right: 0;
    display: grid;
    gap: 0.25rem;
    min-width: 10.5rem;
    padding: 0.35rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 16px 34px rgba(8, 14, 40, 0.18);
}

.deck-card-action-menu-form {
    margin: 0;
}

.deck-card-action-menu-item {
    width: 100%;
    padding: 0.42rem 0.55rem;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--tracker-ink);
    font-size: 0.82rem;
    font-weight: 900;
    line-height: 1.2;
    text-align: left;
    cursor: pointer;
}

.deck-card-action-menu-item:hover,
.deck-card-action-menu-item:focus-visible {
    background: var(--tracker-surface);
}

.deck-card-action-menu-item.danger {
    color: var(--tracker-danger);
}

.deck-card-action-menu-item:disabled {
    color: var(--tracker-muted);
    cursor: not-allowed;
    opacity: 0.62;
}

.deck-printing-dialog {
    width: min(62rem, calc(100vw - 2rem));
    max-height: min(80vh, 46rem);
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--tracker-ink);
}

.deck-printing-dialog::backdrop {
    background: rgba(8, 14, 40, 0.46);
}

.deck-printing-dialog-content {
    display: grid;
    gap: 1rem;
    max-height: min(80vh, 46rem);
    overflow: auto;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 24px 58px rgba(8, 14, 40, 0.28);
}

.deck-printing-dialog-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.deck-printing-dialog-header h3 {
    margin: 0;
    font-size: clamp(1.15rem, 2vw, 1.45rem);
    line-height: 1.15;
}

.deck-printing-dialog-close {
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-ink);
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
}

.deck-printing-dialog-close:hover,
.deck-printing-dialog-close:focus-visible {
    border-color: rgba(45, 120, 255, 0.42);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.14);
}

.deck-printing-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
    gap: 0.8rem;
}

.deck-printing-option {
    display: grid;
    grid-template-columns: minmax(4.75rem, 0.42fr) minmax(0, 1fr);
    gap: 0.75rem;
    min-width: 0;
    padding: 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.deck-printing-option-image {
    display: grid;
    place-items: center;
    align-self: start;
    aspect-ratio: 0.716;
    min-height: 6.6rem;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 7px;
    background: #ffffff;
    color: var(--tracker-muted);
    font-size: 0.78rem;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
}

.deck-printing-option-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.deck-printing-option-body {
    display: grid;
    align-content: start;
    gap: 0.55rem;
    min-width: 0;
}

.deck-printing-option-body .card-name {
    font-weight: 900;
    line-height: 1.15;
}

.deck-printing-option-form {
    margin: 0;
}

@media (max-width: 560px) {
    .deck-printing-dialog {
        width: calc(100vw - 1rem);
        max-height: calc(100vh - 1rem);
    }

    .deck-printing-dialog-content {
        max-height: calc(100vh - 1rem);
        padding: 0.8rem;
    }

    .deck-printing-option {
        grid-template-columns: minmax(4.25rem, 0.34fr) minmax(0, 1fr);
    }
}

.deck-list-art-grid {
    grid-template-columns: repeat(auto-fill, minmax(7.25rem, 1fr));
    align-items: start;
}

.deck-list-art-view {
    position: relative;
}

.deck-list-art-section-heading {
    grid-column: 1 / -1;
    margin: 0.25rem 0 -0.15rem;
}

.deck-list-art-section-heading:first-child {
    margin-top: 0;
}

.deck-list-art-card {
    position: relative;
    min-width: 0;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: transparent;
}

.deck-list-art-card .card-art-frame {
    -webkit-user-drag: none;
    border-width: 3px;
    border-color: var(--tracker-border);
    box-shadow: 0 8px 18px rgba(8, 14, 40, 0.08);
    transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.deck-list-art-card .card-art-frame img {
    -webkit-user-drag: none;
}

.deck-list-art-card.is-selected .card-art-frame {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.2), 0 14px 26px rgba(8, 14, 40, 0.14);
}

.deck-list-art-menu,
.binder-clipboard-action-menu {
    top: 0.1rem;
    right: 0.1rem;
}

.deck-list-art-menu-trigger,
.binder-clipboard-action-menu-trigger {
    width: 0.78rem;
    height: 0.78rem;
    background: rgba(255, 255, 255, 0.94);
}

.deck-list-art-menu-trigger span,
.binder-clipboard-action-menu-trigger span {
    width: 0.12rem;
    height: 0.12rem;
    margin: 0.035rem 0;
    border-radius: 999px;
}

[data-active-deck-art-layout="free"] .deck-list-art-grid {
    position: relative;
    display: block;
    height: clamp(22rem, 64vh, 47.5rem);
    min-height: 0;
    padding: 0.75rem;
    overflow: auto;
    border: 1px dashed rgba(45, 120, 255, 0.28);
    border-radius: 8px;
    background: rgba(45, 120, 255, 0.04);
    cursor: crosshair;
}

[data-active-deck-art-layout="free"] .deck-list-art-section-heading {
    display: none;
}

[data-active-deck-art-layout="free"] .deck-list-art-card {
    position: absolute;
    width: clamp(7.5rem, 12vw, 8.75rem);
    touch-action: none;
    cursor: grab;
}

[data-active-deck-art-layout="free"] .deck-list-art-card .card-art-frame {
    cursor: grab;
}

.deck-list-art-card.is-free-dragging {
    z-index: 30;
    cursor: grab;
}

.deck-list-art-card.is-free-dragging,
.deck-list-art-card.is-group-dragging,
.deck-list-art-card.is-free-dragging .card-art-frame,
.deck-list-art-card.is-group-dragging .card-art-frame {
    cursor: grabbing;
}

.deck-list-art-card.is-free-dragging,
.deck-list-art-card.is-group-dragging {
    backface-visibility: hidden;
    will-change: transform;
}

.deck-list-art-resize-handle {
    position: absolute;
    right: 0.75rem;
    bottom: 0.75rem;
    z-index: 260;
    display: none;
    width: 1.15rem;
    height: 1.15rem;
    padding: 0;
    border: 0;
    border-radius: 3px;
    background:
            linear-gradient(135deg, transparent 0 45%, rgba(45, 120, 255, 0.72) 46% 54%, transparent 55%),
            linear-gradient(135deg, transparent 0 65%, rgba(45, 120, 255, 0.48) 66% 74%, transparent 75%);
    cursor: nwse-resize;
    touch-action: none;
}

[data-active-deck-art-layout="free"] .deck-list-art-resize-handle {
    display: block;
}

.deck-list-art-resize-handle:focus-visible {
    outline: 2px solid var(--tracker-blue);
    outline-offset: 2px;
}

[data-active-deck-art-layout="free"] .deck-list-art-grid.is-resizing {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.14);
}

.deck-list-art-card.is-free-dragging .card-art-frame,
.deck-list-art-card.is-group-dragging .card-art-frame {
    box-shadow: 0 18px 36px rgba(8, 14, 40, 0.18);
    transform: translateY(-1px);
}

.deck-list-art-selection-box {
    position: absolute;
    z-index: 200;
    border: 1px solid var(--tracker-blue);
    border-radius: 6px;
    background: rgba(45, 120, 255, 0.14);
    pointer-events: none;
}

.deck-list-art-card-status-complete .card-art-frame {
    border-color: var(--tracker-success);
}

.deck-list-art-card-status-incomplete .card-art-frame {
    border-color: var(--tracker-danger);
}

.deck-list-art-legality-row {
    display: flex;
    justify-content: center;
    min-height: 1.35rem;
    margin-top: 0.25rem;
}

.deck-list-art-legality {
    max-width: 100%;
    padding: 0.12rem 0.45rem;
    overflow: hidden;
    font-size: 0.68rem;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.deck-list-art-card.is-newly-added .card-art-frame {
    border-color: #f59e0b;
    box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.24), 0 16px 30px rgba(8, 14, 40, 0.18);
}

.deck-list-art-card.is-drop-handoff-target {
    opacity: 0;
}

.deck-card-drop-handoff-preview {
    position: fixed;
    z-index: 2800;
    pointer-events: none;
    opacity: 0.96;
    transform: translate3d(0, 0, 0);
    transform-origin: top left;
    backface-visibility: hidden;
    contain: layout paint style;
    filter: drop-shadow(0 18px 34px rgba(8, 14, 40, 0.24));
    will-change: transform, opacity;
}

.deck-card-drop-handoff-preview.is-fading {
    opacity: 0;
    transform: translate3d(0, 8px, 0) scale(0.96);
    transition: opacity 160ms ease-out, transform 160ms ease-out;
}

.deck-card-drop-handoff-preview .card-art-frame {
    display: block;
    width: 100%;
    height: 100%;
    border-width: 3px;
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.14), 0 16px 28px rgba(8, 14, 40, 0.2);
}

.deck-card-drop-handoff-preview img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.deck-section-counts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    color: var(--tracker-muted);
    font-size: 0.84rem;
}

.deck-section-counts span {
    display: inline-flex;
    align-items: center;
    min-height: 1.5rem;
    padding: 0.18rem 0.5rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: #ffffff;
}

.deck-section-counts strong {
    margin-right: 0.25rem;
    color: var(--tracker-red-dark);
}

.deck-card-thumb-link {
    display: inline-flex;
    align-self: center;
    justify-self: center;
    color: inherit;
    text-decoration: none;
}

.deck-card-thumb-frame {
    width: 3.25rem;
    aspect-ratio: 5 / 7;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 6px;
    background: #ffffff;
}

.deck-card-thumb-link:hover .deck-card-thumb-frame,
.deck-card-thumb-link:focus .deck-card-thumb-frame {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.16);
}

.deck-card-thumb {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.deck-card-thumb-placeholder {
    padding: 0.25rem;
    color: var(--tracker-muted);
    font-size: 0.62rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
}

.tracker-hero {
    margin-bottom: 2rem;
    padding: 2rem;
    border: 1px solid rgba(0, 212, 255, 0.24);
    border-radius: var(--tracker-radius-sm);
    background: linear-gradient(120deg, var(--tracker-navy) 0%, #0A1533 42%, #064D63 68%, #3A218C 100%);
    color: #ffffff;
    box-shadow: var(--tracker-card-shadow);
    overflow: hidden;
}

.tracker-hero h1,
.tracker-hero h2,
.tracker-hero h3 {
    color: #ffffff;
}

.hero-logo {
    display: block;
    width: min(34rem, 100%);
    max-height: 8rem;
    object-fit: contain;
    object-position: left center;
    margin-bottom: 1rem;
}

.eyebrow {
    text-transform: uppercase;
    letter-spacing: 0;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--tracker-blue);
}

.tracker-hero .eyebrow,
.login-brand-story .eyebrow {
    color: var(--tracker-cyan);
}

.hero-copy {
    max-width: 50rem;
    color: var(--tracker-light-muted);
}

.tracker-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-auto-flow: dense;
    gap: 1.5rem;
    align-items: start;
}

.quick-action-grid,
.dashboard-status-grid,
.tournament-summary-grid,
.snapshot-comparison-grid {
    display: grid;
    gap: 1rem;
}

.quick-action-grid {
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
}

.dashboard-setup-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 0.75rem;
}

.dashboard-step-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.75rem;
    align-items: start;
    min-height: 100%;
    padding: 0.8rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-ink);
    text-decoration: none;
}

.dashboard-step-card:hover,
.dashboard-step-card:focus {
    border-color: var(--tracker-blue);
    background: rgba(45, 120, 255, 0.08);
    color: var(--tracker-ink);
}

.dashboard-step-card > span:last-child {
    display: grid;
    gap: 0.2rem;
}

.dashboard-step-card strong {
    font-size: 0.95rem;
}

.dashboard-step-card small {
    color: var(--tracker-muted);
    font-size: 0.82rem;
    line-height: 1.35;
}

.dashboard-step-card em {
    margin-top: 0.2rem;
    color: var(--tracker-blue);
    font-size: 0.82rem;
    font-style: normal;
    font-weight: 800;
}

.dashboard-step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.8rem;
    height: 1.8rem;
    border-radius: 50%;
    background: var(--tracker-blue);
    color: #ffffff;
    font-size: 0.84rem;
    font-weight: 800;
}

/* Dashboard bento experience */
.dashboard-home-shell {
    max-width: 86rem;
}

.dashboard-bento-lead {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(22rem, 5fr);
    gap: 1rem;
    align-items: stretch;
    margin-bottom: 1.25rem;
}

.dashboard-command-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 9rem;
    gap: 1rem;
    min-height: 21rem;
    padding: clamp(1.5rem, 3vw, 2.25rem);
    overflow: hidden;
    border: 1px solid rgba(0, 212, 255, 0.28);
    border-radius: 18px;
    background:
        radial-gradient(circle at 15% 0%, rgba(0, 212, 255, 0.24), transparent 34%),
        radial-gradient(circle at 88% 88%, rgba(106, 58, 255, 0.38), transparent 42%),
        linear-gradient(135deg, #080E28 0%, #101C43 58%, #24359A 100%);
    color: #ffffff;
    box-shadow: 0 20px 48px rgba(8, 14, 40, 0.24);
}

.dashboard-command-card::before {
    position: absolute;
    inset: auto -5rem -7rem auto;
    width: 18rem;
    height: 18rem;
    border: 1px solid rgba(0, 212, 255, 0.18);
    border-radius: 50%;
    box-shadow:
        0 0 0 2.5rem rgba(45, 120, 255, 0.05),
        0 0 0 5rem rgba(106, 58, 255, 0.04);
    content: "";
}

.dashboard-command-copy {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
}

.dashboard-command-kicker {
    margin: 0 0 0.45rem;
    color: var(--tracker-cyan);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.dashboard-command-card h1 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(2rem, 4vw, 3.15rem);
    line-height: 1.02;
}

.dashboard-command-intro {
    max-width: 34rem;
    margin: 0.75rem 0 1.2rem;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.98rem;
    line-height: 1.5;
}

.dashboard-command-spotlight {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.3rem 0.9rem;
    width: min(100%, 28rem);
    margin-top: auto;
    padding: 0.85rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.13);
    backdrop-filter: blur(8px);
}

.dashboard-command-spotlight > span:not(.dashboard-spotlight-number) {
    display: grid;
    gap: 0.2rem;
}

.dashboard-spotlight-label {
    flex: 1 0 100%;
    color: var(--tracker-cyan);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dashboard-command-spotlight > strong,
.dashboard-command-spotlight span > strong {
    color: #ffffff;
    font-size: 1rem;
}

.dashboard-command-spotlight > a,
.dashboard-command-spotlight span > a {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    margin: -0.2rem -0.35rem;
    padding: 0.2rem 0.35rem;
    border-radius: 6px;
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 900;
    text-decoration: none;
}

.dashboard-command-spotlight > a:hover,
.dashboard-command-spotlight > a:focus,
.dashboard-command-spotlight span > a:hover,
.dashboard-command-spotlight span > a:focus {
    color: var(--tracker-cyan);
}

.dashboard-spotlight-number {
    color: #ffffff;
    font-size: 3.1rem;
    font-weight: 900;
    line-height: 0.95;
}

.dashboard-card-fan {
    position: relative;
    z-index: 1;
    align-self: center;
    width: 9rem;
    height: 12rem;
}

.dashboard-card-fan span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6rem;
    aspect-ratio: 5 / 7;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 10px;
    background:
        radial-gradient(circle at 50% 35%, rgba(255, 255, 255, 0.72) 0 11%, transparent 12%),
        linear-gradient(160deg, rgba(0, 212, 255, 0.88), rgba(45, 120, 255, 0.84) 48%, rgba(106, 58, 255, 0.9));
    box-shadow: 0 18px 34px rgba(2, 8, 28, 0.34);
    transform-origin: 50% 110%;
    transition: transform 220ms ease;
}

.dashboard-card-fan span:nth-child(1) {
    transform: translate(-62%, -48%) rotate(-15deg);
}

.dashboard-card-fan span:nth-child(2) {
    z-index: 2;
    transform: translate(-50%, -52%) rotate(1deg);
}

.dashboard-card-fan span:nth-child(3) {
    transform: translate(-38%, -47%) rotate(16deg);
}

.dashboard-launchpad {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.dashboard-action-card {
    --dashboard-action-accent: var(--tracker-blue);
    --dashboard-action-tint: rgba(45, 120, 255, 0.11);
    --dashboard-action-border: rgba(45, 120, 255, 0.24);
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: start;
    min-height: 0;
    padding: 1rem;
    overflow: hidden;
    border: 1px solid var(--dashboard-action-border);
    border-radius: 16px;
    background:
        radial-gradient(circle at 100% 0%, var(--dashboard-action-tint), transparent 55%),
        #ffffff;
    color: var(--tracker-ink);
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(8, 14, 40, 0.1);
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.dashboard-action-card-decks {
    --dashboard-action-accent: #1F60D8;
    --dashboard-action-tint: rgba(45, 120, 255, 0.18);
}

.dashboard-action-card-collection {
    --dashboard-action-accent: #12715C;
    --dashboard-action-tint: rgba(75, 226, 181, 0.22);
    --dashboard-action-border: rgba(24, 169, 130, 0.25);
}

.dashboard-action-card-binders {
    --dashboard-action-accent: var(--tracker-purple);
    --dashboard-action-tint: rgba(106, 58, 255, 0.16);
    --dashboard-action-border: rgba(106, 58, 255, 0.24);
}

.dashboard-action-card-search {
    --dashboard-action-accent: #007994;
    --dashboard-action-tint: rgba(0, 212, 255, 0.2);
    --dashboard-action-border: rgba(0, 143, 180, 0.24);
}

.dashboard-action-icon {
    display: inline-grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 12px;
    background: var(--dashboard-action-tint);
    color: var(--dashboard-action-accent);
}

.dashboard-action-icon svg {
    width: 1.45rem;
    height: 1.45rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.dashboard-action-content {
    display: grid;
    gap: 0.05rem;
    min-width: 0;
}

.dashboard-action-content > span {
    color: var(--dashboard-action-accent);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.dashboard-action-content > strong {
    color: var(--tracker-ink);
    font-size: clamp(1.35rem, 2.5vw, 2rem);
    line-height: 1.1;
}

.dashboard-action-content > small {
    color: var(--tracker-muted);
    font-size: 0.75rem;
    line-height: 1.25;
}

.dashboard-action-arrow {
    color: var(--dashboard-action-accent);
    font-size: 1rem;
    font-weight: 900;
}

.dashboard-setup-card {
    display: grid;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 1.25rem;
    border: 1px solid rgba(45, 120, 255, 0.22);
    border-radius: 16px;
    background:
        radial-gradient(circle at 100% 0%, rgba(0, 212, 255, 0.13), transparent 35%),
        linear-gradient(135deg, rgba(45, 120, 255, 0.07), rgba(106, 58, 255, 0.05)),
        #ffffff;
    box-shadow: 0 12px 28px rgba(8, 14, 40, 0.08);
}

.dashboard-setup-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
}

.dashboard-setup-heading p {
    margin: 0 0 0.2rem;
    color: #1F60D8;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.dashboard-setup-heading h2 {
    margin: 0;
    font-size: 1.25rem;
}

.dashboard-setup-heading > span {
    color: var(--tracker-muted);
    font-size: 0.82rem;
}

.dashboard-setup-steps {
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 0.75rem;
}

.dashboard-step-card {
    border-color: rgba(45, 120, 255, 0.16);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 6px 16px rgba(8, 14, 40, 0.06);
}

.dashboard-step-number {
    background: linear-gradient(135deg, var(--tracker-cyan), var(--tracker-blue));
    box-shadow: 0 5px 12px rgba(45, 120, 255, 0.22);
}

.dashboard-active-work {
    margin-bottom: 1.5rem;
}

.dashboard-section-heading {
    display: flex;
    align-items: end;
    gap: 1rem;
    margin-bottom: 1rem;
}

.dashboard-section-heading > div {
    flex: 0 1 auto;
}

.dashboard-section-heading h2 {
    margin: 0;
    font-size: 1.45rem;
}

.dashboard-section-heading p {
    margin: 0.25rem 0 0;
    color: var(--tracker-muted);
    font-size: 0.88rem;
}

.dashboard-section-heading-line {
    flex: 1;
    height: 1px;
    margin-bottom: 0.35rem;
    background: linear-gradient(90deg, var(--tracker-border), transparent);
}

.dashboard-bento-work {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(18rem, 5fr);
    grid-template-areas:
        "continue continue"
        "decks collection"
        "decks binders";
    gap: 1rem;
    align-items: start;
}

.dashboard-bento-card {
    display: grid;
    align-content: start;
    gap: 1rem;
    min-width: 0;
    padding: 1rem;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(8, 14, 40, 0.09);
}

.dashboard-continue-card {
    grid-area: continue;
    border-top: 3px solid var(--tracker-cyan);
}

.dashboard-decks-card {
    grid-area: decks;
    border-top: 3px solid var(--tracker-blue);
}

.dashboard-collection-card {
    grid-area: collection;
    border-color: rgba(24, 169, 130, 0.24);
    background:
        radial-gradient(circle at 100% 0%, rgba(75, 226, 181, 0.2), transparent 46%),
        linear-gradient(145deg, rgba(0, 212, 255, 0.08), rgba(75, 226, 181, 0.09)),
        #ffffff;
}

.dashboard-binders-card {
    grid-area: binders;
    border-color: rgba(106, 58, 255, 0.2);
    background:
        radial-gradient(circle at 100% 0%, rgba(106, 58, 255, 0.12), transparent 42%),
        #ffffff;
}

.dashboard-bento-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.dashboard-bento-card-header h3 {
    margin: 0;
    font-size: 1.05rem;
}

.dashboard-bento-card-header span,
.dashboard-bento-card-header div > span {
    color: var(--tracker-muted);
    font-size: 0.75rem;
}

.dashboard-bento-card-header > a,
.dashboard-bento-card-links a {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    margin: -0.25rem -0.35rem;
    padding: 0.25rem 0.35rem;
    border-radius: 6px;
    color: #1F60D8;
    font-size: 0.78rem;
    font-weight: 900;
}

.dashboard-bento-card-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.35rem 0.7rem;
}

.dashboard-deck-mosaic {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.dashboard-deck-card {
    --dashboard-ring-color: var(--tracker-blue);
    --dashboard-ring-track: rgba(45, 120, 255, 0.13);
    --dashboard-ring-center: #ffffff;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.8rem;
    align-items: center;
    min-height: 6.5rem;
    padding: 0.9rem;
    border: 1px solid rgba(45, 120, 255, 0.16);
    border-radius: 13px;
    background:
        radial-gradient(circle at 100% 0%, rgba(45, 120, 255, 0.12), transparent 52%),
        #ffffff;
    color: var(--tracker-ink);
    text-decoration: none;
    box-shadow: 0 7px 18px rgba(8, 14, 40, 0.07);
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.dashboard-deck-card:nth-child(4n + 2) {
    --dashboard-ring-color: #00A6CD;
    background: linear-gradient(145deg, rgba(0, 212, 255, 0.08), #ffffff 62%);
}

.dashboard-deck-card:nth-child(4n + 3) {
    --dashboard-ring-color: var(--tracker-purple);
    background: linear-gradient(145deg, rgba(106, 58, 255, 0.08), #ffffff 62%);
}

.dashboard-deck-card-featured {
    --dashboard-ring-color: var(--tracker-cyan);
    --dashboard-ring-track: rgba(255, 255, 255, 0.18);
    --dashboard-ring-center: #14245B;
    grid-column: 1 / -1;
    min-height: 9rem;
    padding: 1.2rem;
    border-color: rgba(0, 212, 255, 0.3);
    background:
        radial-gradient(circle at 82% 20%, rgba(0, 212, 255, 0.26), transparent 30%),
        linear-gradient(135deg, #0B1535, #183677 62%, #4328A3);
    color: #ffffff;
    box-shadow: 0 15px 34px rgba(8, 14, 40, 0.2);
}

.dashboard-deck-card-copy {
    display: grid;
    justify-items: start;
    gap: 0.35rem;
    min-width: 0;
}

.dashboard-deck-card-copy > small {
    color: #1F60D8;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.dashboard-deck-card-copy > strong {
    color: var(--tracker-ink);
    font-size: 0.95rem;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.dashboard-deck-card-featured .dashboard-deck-card-copy > small {
    color: var(--tracker-cyan);
}

.dashboard-deck-card-featured .dashboard-deck-card-copy > strong {
    color: #ffffff;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
}

.dashboard-deck-status {
    display: inline-flex;
    align-items: center;
    min-height: 1.55rem;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 900;
}

.dashboard-deck-status-missing {
    background: var(--tracker-warning);
    color: var(--tracker-navy);
}

.dashboard-deck-status-ready {
    background: var(--tracker-success);
    color: var(--tracker-navy);
}

.dashboard-deck-status-empty {
    border: 1px solid rgba(45, 120, 255, 0.24);
    background: rgba(45, 120, 255, 0.08);
    color: #1F60D8;
}

.dashboard-deck-card-featured .dashboard-deck-status-empty {
    border-color: rgba(255, 255, 255, 0.34);
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
}

.dashboard-progress-ring {
    position: relative;
    display: grid;
    place-items: center;
    width: 4rem;
    aspect-ratio: 1;
    flex: 0 0 auto;
    border-radius: 50%;
    background: conic-gradient(
        var(--dashboard-ring-color) var(--dashboard-progress, 0%),
        var(--dashboard-ring-track) 0
    );
}

.dashboard-progress-ring::before {
    position: absolute;
    inset: 0.42rem;
    border-radius: 50%;
    background: var(--dashboard-ring-center);
    content: "";
}

.dashboard-progress-ring strong {
    position: relative;
    z-index: 1;
    color: var(--tracker-ink);
    font-size: 0.78rem;
}

.dashboard-deck-card-featured .dashboard-progress-ring {
    width: 5.5rem;
}

.dashboard-deck-card-featured .dashboard-progress-ring strong {
    color: #ffffff;
    font-size: 1rem;
}

.dashboard-activity-timeline {
    display: grid;
}

.dashboard-activity-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.7rem;
    align-items: start;
    min-height: 3.5rem;
    padding: 0.55rem 0;
    color: var(--tracker-ink);
    text-decoration: none;
    transition: background-color 160ms ease, transform 160ms ease;
}

.dashboard-activity-dot {
    position: relative;
    width: 0.7rem;
    height: 0.7rem;
    margin-top: 0.3rem;
    border: 2px solid #ffffff;
    border-radius: 50%;
    background: var(--tracker-cyan);
    box-shadow: 0 0 0 2px rgba(0, 166, 205, 0.18);
}

.dashboard-activity-item:not(:last-child) .dashboard-activity-dot::after {
    position: absolute;
    top: 0.7rem;
    left: 50%;
    width: 2px;
    height: 3.25rem;
    background: linear-gradient(var(--tracker-cyan), rgba(45, 120, 255, 0.12));
    content: "";
    transform: translateX(-50%);
}

.dashboard-activity-copy {
    display: grid;
    gap: 0.12rem;
    min-width: 0;
}

.dashboard-activity-copy strong {
    color: var(--tracker-ink);
    font-size: 0.82rem;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.dashboard-activity-copy small {
    color: var(--tracker-muted);
    font-size: 0.7rem;
    overflow-wrap: anywhere;
}

.dashboard-activity-arrow {
    color: var(--tracker-blue);
    font-weight: 900;
}

.dashboard-collection-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.dashboard-collection-summary > span {
    min-width: 0;
    border: 1px solid rgba(24, 169, 130, 0.16);
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.74);
    color: var(--tracker-muted);
}

.dashboard-collection-summary > .dashboard-collection-primary {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.15rem 0.75rem;
    align-items: end;
    padding: 0.8rem 0.9rem;
}

.dashboard-collection-primary > small {
    align-self: end;
    color: #12715C;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.dashboard-collection-primary > strong {
    grid-column: 2;
    grid-row: 1 / span 2;
    color: var(--tracker-ink);
    font-size: 2.5rem;
    line-height: 1;
}

.dashboard-collection-primary > span {
    color: var(--tracker-muted);
    font-size: 0.72rem;
}

.dashboard-collection-summary > .dashboard-collection-secondary {
    display: grid;
    gap: 0.2rem;
    padding: 0.7rem 0.75rem;
}

.dashboard-collection-secondary small {
    color: var(--tracker-muted);
    font-size: 0.68rem;
    font-weight: 800;
}

.dashboard-collection-secondary strong {
    color: var(--tracker-ink);
    font-size: 1.35rem;
}

.dashboard-binder-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.6rem;
}

.dashboard-binder-card {
    position: relative;
    display: grid;
    align-content: start;
    gap: 0.55rem;
    min-width: 0;
    min-height: 7.25rem;
    padding: 0.55rem;
    border: 1px solid rgba(106, 58, 255, 0.16);
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.82);
    color: var(--tracker-ink);
    text-decoration: none;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.dashboard-binder-cover {
    position: relative;
    display: block;
    height: 3.5rem;
    overflow: hidden;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--tracker-blue), var(--tracker-purple));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

.dashboard-binder-card:nth-child(3n + 2) .dashboard-binder-cover {
    background: linear-gradient(135deg, #00A6CD, var(--tracker-blue));
}

.dashboard-binder-card:nth-child(3n + 3) .dashboard-binder-cover {
    background: linear-gradient(135deg, #18A982, var(--tracker-cyan));
}

.dashboard-binder-cover::before {
    position: absolute;
    inset: 0 auto 0 0.45rem;
    width: 0.28rem;
    background: rgba(255, 255, 255, 0.36);
    content: "";
}

.dashboard-binder-cover span {
    position: absolute;
    top: 0.65rem;
    right: 0.65rem;
    width: 1.3rem;
    height: 1.3rem;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.17);
}

.dashboard-binder-copy {
    display: grid;
    gap: 0.1rem;
    min-width: 0;
}

.dashboard-binder-copy strong {
    color: var(--tracker-ink);
    font-size: 0.75rem;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.dashboard-binder-copy small {
    color: var(--tracker-muted);
    font-size: 0.64rem;
    overflow-wrap: anywhere;
}

.dashboard-binder-arrow {
    position: absolute;
    right: 0.55rem;
    bottom: 0.4rem;
    color: var(--tracker-purple);
    font-size: 0.72rem;
    font-weight: 900;
}

.dashboard-visual-empty-state {
    display: grid;
    gap: 0.3rem;
    min-height: 6rem;
    padding: 1rem;
    border: 1px dashed rgba(45, 120, 255, 0.26);
    border-radius: 12px;
    background: rgba(45, 120, 255, 0.05);
    color: var(--tracker-muted);
    font-size: 0.82rem;
}

.dashboard-visual-empty-state strong {
    color: var(--tracker-ink);
}

.dashboard-visual-empty-state a {
    justify-self: start;
    margin-top: 0.25rem;
    color: #1F60D8;
    font-weight: 900;
    text-decoration: none;
}

.dashboard-command-card a:focus-visible,
.dashboard-action-card:focus-visible,
.dashboard-step-card:focus-visible,
.dashboard-deck-card:focus-visible,
.dashboard-activity-item:focus-visible,
.dashboard-binder-card:focus-visible,
.dashboard-bento-card-header a:focus-visible,
.dashboard-bento-card-links a:focus-visible,
.dashboard-visual-empty-state a:focus-visible {
    outline: 3px solid #ffffff;
    outline-offset: 3px;
    box-shadow: 0 0 0 6px #1F60D8;
}

@media (min-width: 1101px) {
    .dashboard-activity-timeline {
        grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
        gap: 0.65rem;
    }

    .dashboard-activity-item {
        min-height: 4.1rem;
        padding: 0.7rem;
        border-radius: 10px;
        background: var(--tracker-surface);
    }

    .dashboard-activity-item:not(:last-child) .dashboard-activity-dot::after {
        display: none;
    }
}

@media (hover: hover) {
    .dashboard-command-card:hover .dashboard-card-fan span:nth-child(1) {
        transform: translate(-70%, -50%) rotate(-20deg);
    }

    .dashboard-command-card:hover .dashboard-card-fan span:nth-child(3) {
        transform: translate(-30%, -49%) rotate(21deg);
    }

    .dashboard-action-card:hover {
        border-color: var(--dashboard-action-accent);
        background:
            radial-gradient(circle at 100% 0%, var(--dashboard-action-tint), transparent 55%),
            #ffffff;
        color: var(--tracker-ink);
        box-shadow: 0 16px 34px rgba(8, 14, 40, 0.14);
        transform: translateY(-3px);
    }

    .dashboard-deck-card:hover,
    .dashboard-binder-card:hover {
        border-color: var(--tracker-blue);
        color: var(--tracker-ink);
        box-shadow: 0 13px 28px rgba(8, 14, 40, 0.13);
        transform: translateY(-2px);
    }

    .dashboard-deck-card-featured:hover {
        color: #ffffff;
    }

    .dashboard-activity-item:hover {
        color: var(--tracker-ink);
        transform: translateX(0.2rem);
    }
}

@media (prefers-reduced-motion: reduce) {
    .tracker-sidebar,
    .sidebar-toggle,
    .tracker-sidebar .nav-link,
    .tracker-sidebar .nav-logout-button,
    .sidebar-nav-disclosure > summary,
    .nav-disclosure-chevron,
    .sidebar-scrim {
        transition: none;
    }

    .dashboard-card-fan span,
    .dashboard-action-card,
    .dashboard-deck-card,
    .dashboard-binder-card,
    .dashboard-activity-item {
        transition: none;
    }

    .dashboard-command-card:hover .dashboard-card-fan span:nth-child(1),
    .dashboard-command-card:hover .dashboard-card-fan span:nth-child(3),
    .dashboard-action-card:hover,
    .dashboard-deck-card:hover,
    .dashboard-binder-card:hover,
    .dashboard-activity-item:hover {
        transform: none;
    }
}

.set-browser-panel {
    padding-bottom: 1.25rem;
}

.set-browser-toolbar {
    margin-bottom: 1rem;
}

.set-browser-toolbar .form-control {
    max-width: 24rem;
}

.set-browser-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
    gap: 0.75rem;
    max-height: 22rem;
    overflow: auto;
    padding-right: 0.25rem;
}

.set-browser-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 4.75rem;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-ink);
    text-decoration: none;
}

.set-browser-item:hover,
.set-browser-item:focus {
    border-color: var(--tracker-blue);
    color: var(--tracker-ink);
    box-shadow: 0 8px 18px rgba(45, 120, 255, 0.14);
}

.set-browser-name {
    font-weight: 700;
    line-height: 1.25;
}

.set-browser-count {
    margin-top: 0.45rem;
    color: var(--tracker-muted);
    font-size: 0.85rem;
}

.set-browser-meta {
    display: grid;
    gap: 0.2rem;
    margin-top: 0.45rem;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    line-height: 1.35;
}

.set-browser-meta span {
    overflow-wrap: anywhere;
}

.dashboard-status-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
}

.deck-top-actions-menu {
    position: relative;
    z-index: 40;
    flex: 0 0 auto;
}

.deck-top-actions-menu-trigger {
    display: inline-flex;
    gap: 0.45rem;
    align-items: center;
    list-style: none;
    cursor: pointer;
}

.deck-top-actions-menu-trigger::-webkit-details-marker {
    display: none;
}

.deck-top-actions-menu-trigger::after {
    width: 0.42rem;
    height: 0.42rem;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    content: "";
    transform: translateY(-0.1rem) rotate(45deg);
    transition: transform 140ms ease;
}

.deck-top-actions-menu[open] .deck-top-actions-menu-trigger::after {
    transform: translateY(0.1rem) rotate(225deg);
}

.deck-top-actions-menu-panel {
    position: absolute;
    top: calc(100% + 0.4rem);
    right: 0;
    z-index: 50;
    display: grid;
    gap: 0.2rem;
    min-width: 13rem;
    padding: 0.4rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 18px 40px rgba(8, 14, 40, 0.2);
}

.deck-top-actions-menu-item {
    display: flex;
    align-items: center;
    min-height: 2.1rem;
    padding: 0.45rem 0.6rem;
    border-radius: 6px;
    color: var(--tracker-ink);
    font-size: 0.86rem;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
}

.deck-top-actions-menu-item:hover,
.deck-top-actions-menu-item:focus-visible {
    background: var(--tracker-surface);
    color: var(--tracker-blue);
}

.deck-top-actions-menu-item.is-active {
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
}

.deck-layout-panels {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: clamp(0.85rem, 1.4vw, 1.5rem);
    align-items: start;
    min-height: 8rem;
}

.deck-layout-panel {
    grid-column: 1 / -1;
    min-width: 0;
    overflow: hidden;
    transition: border-color 140ms ease, box-shadow 140ms ease, opacity 140ms ease, transform 140ms ease;
}

.deck-layout-panel[data-deck-panel-width="half"] {
    grid-column: span 6;
}

.deck-layout-panel[data-deck-panel-width="wide"] {
    grid-column: span 8;
}

.deck-layout-panel[data-deck-panel-width="full"] {
    grid-column: 1 / -1;
}

.deck-layout-panel.is-dragging {
    opacity: 0.58;
    transform: scale(0.99);
}

.deck-layout-panel.drag-target {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.18), 0 14px 34px var(--tracker-shadow);
}

.deck-panel-layout-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    min-width: 0;
    margin-bottom: 1rem;
}

.deck-panel-layout-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem;
    min-width: 0;
}

.deck-panel-drag-handle {
    position: absolute;
    top: 1.35rem;
    left: 1.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 10px;
    background: rgba(45, 120, 255, 0.1);
    color: transparent;
    cursor: grab;
}

.deck-panel-layout-controls .deck-panel-drag-handle {
    position: static;
    width: auto;
    min-height: 2.25rem;
    padding: 0.35rem 0.8rem;
    overflow: visible;
    color: var(--tracker-red-dark);
    font-size: 0.82rem;
    font-weight: 900;
}

.deck-panel-drag-handle::before {
    content: "";
    width: 1rem;
    height: 1rem;
    background-image:
            radial-gradient(circle, var(--tracker-red-dark) 2px, transparent 2px),
            radial-gradient(circle, var(--tracker-red-dark) 2px, transparent 2px);
    background-position: 0 0, 0.5rem 0;
    background-size: 0.5rem 0.5rem;
}

.deck-panel-layout-controls .deck-panel-drag-handle::before {
    content: none;
}

.deck-panel-drag-handle:hover,
.deck-panel-drag-handle:focus-visible {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.14);
}

.deck-panel-drag-handle:active {
    cursor: grabbing;
}

.deck-panel-width-options {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    min-width: 0;
}

.deck-panel-width-options button {
    min-height: 2.1rem;
    padding: 0.25rem 0.7rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-ink);
    font-size: 0.82rem;
    font-weight: 800;
}

.deck-panel-width-options button.is-active {
    border-color: var(--tracker-blue);
    background: var(--tracker-blue);
    color: #ffffff;
}

.deck-layout-panel .panel-header,
.deck-layout-panel .action-row {
    min-width: 0;
}

.deck-layout-panel .panel-header {
    flex-wrap: wrap;
}

.deck-layout-panel .panel-header > div:first-child,
.deck-layout-panel .table-responsive,
.deck-layout-panel .tracker-form,
.deck-layout-panel .deck-list-section,
.deck-layout-panel .deck-list-section-table {
    min-width: 0;
}

.deck-layout-panel .panel-header p,
.deck-layout-panel .helper-copy,
.deck-layout-panel .card-link {
    overflow-wrap: anywhere;
}

.deck-card-search-panel {
    border-color: rgba(45, 120, 255, 0.24);
    background:
            linear-gradient(135deg, rgba(45, 120, 255, 0.08), rgba(255, 255, 255, 0) 46%),
            rgba(255, 255, 255, 0.96);
}

.deck-workspace-panel {
    --deck-workspace-target-height: clamp(34rem, 72vh, 56rem);
    overflow: visible;
    padding: clamp(0.9rem, 1.2vw, 1.15rem);
    border-color: rgba(45, 120, 255, 0.24);
    background:
            linear-gradient(135deg, rgba(45, 120, 255, 0.08), rgba(255, 255, 255, 0) 46%),
            rgba(255, 255, 255, 0.96);
}

.deck-workspace-panel > .panel-header {
    align-items: center;
    gap: 0.65rem;
    margin-bottom: 0.65rem;
}

.deck-workspace-panel > .panel-header > div:first-child {
    flex: 1 1 18rem;
}

.deck-workspace-grid {
    --deck-workspace-left-share: 1fr;
    --deck-workspace-right-share: 1fr;
    position: relative;
    display: grid;
    grid-template-columns:
            minmax(0, var(--deck-workspace-left-share))
            minmax(0, var(--deck-workspace-right-share));
    gap: 0;
    align-items: stretch;
    min-height: var(--deck-workspace-target-height);
}

.deck-workspace-grid[data-workspace-split="left-three-quarter"] {
    --deck-workspace-left-share: 3fr;
    --deck-workspace-right-share: 1fr;
}

.deck-workspace-grid[data-workspace-split="right-three-quarter"] {
    --deck-workspace-left-share: 1fr;
    --deck-workspace-right-share: 3fr;
}

.deck-workspace-grid.has-floating-search-tile {
    grid-template-columns: 1fr;
}

.deck-workspace-grid.has-floating-search-tile .deck-workspace-pane-left {
    grid-column: 1 / -1;
}

.deck-workspace-grid.has-floating-search-tile .deck-workspace-pane-right {
    grid-column: 1;
}

.deck-workspace-pane {
    --deck-workspace-pane-padding: clamp(0.6rem, 0.85vw, 0.8rem);
    position: relative;
    display: grid;
    gap: 0.65rem;
    min-width: 0;
    min-height: 100%;
    align-content: start;
    padding: var(--deck-workspace-pane-padding);
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.82);
}

.deck-workspace-pane-left {
    grid-column: 1;
    grid-row: 1;
}

.deck-workspace-pane-right {
    grid-column: 2;
    grid-row: 1;
}

.deck-workspace-pane-right.is-floating-search-tile {
    position: absolute;
    z-index: 35;
    min-height: 0;
    align-self: start;
    max-width: 100%;
    max-height: 100%;
    overflow: auto;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 18px 46px rgba(8, 14, 40, 0.2);
}

.deck-workspace-grid.has-floating-search-tile.is-search-tile-front .deck-workspace-pane-right.is-floating-search-tile {
    z-index: 340;
}

.deck-workspace-grid.has-floating-search-tile.is-search-tile-behind .deck-workspace-pane-right.is-floating-search-tile {
    z-index: 40;
}

.deck-workspace-grid.has-floating-search-tile.is-search-tile-behind .deck-list-art-card {
    z-index: 120;
}

.deck-workspace-pane-right.is-moving-search-tile {
    box-shadow: 0 22px 54px rgba(8, 14, 40, 0.26);
}

.deck-workspace-size-controls {
    display: flex;
    flex: 0 1 auto;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    min-width: 0;
}

.deck-workspace-size-controls > span {
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 900;
    white-space: nowrap;
}

.deck-workspace-size-controls .segmented-control {
    flex-wrap: nowrap;
}

.deck-workspace-size-controls .segmented-control-option {
    min-height: 1.9rem;
    padding: 0.22rem 0.58rem;
}

.deck-workspace-pane-header {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.45rem;
    min-width: 0;
}

.deck-workspace-pane-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.65rem;
    min-width: 0;
}

.deck-workspace-pane-title-row > div {
    min-width: 0;
}

.deck-search-float-toggle {
    flex: 0 0 auto;
}

.deck-workspace-pane-right.is-floating-search-tile .deck-workspace-pane-title-row {
    cursor: grab;
    touch-action: none;
    user-select: none;
}

.deck-workspace-pane-right.is-moving-search-tile .deck-workspace-pane-title-row {
    cursor: grabbing;
}

.deck-search-tile-resize-handle {
    position: absolute;
    right: 0.38rem;
    bottom: 0.38rem;
    z-index: 3;
    display: none;
    width: 1rem;
    height: 1rem;
    padding: 0;
    border: 0;
    border-radius: 3px;
    background:
            linear-gradient(135deg, transparent 0 45%, rgba(45, 120, 255, 0.65) 46% 54%, transparent 55%),
            linear-gradient(135deg, transparent 0 65%, rgba(45, 120, 255, 0.45) 66% 74%, transparent 75%);
    cursor: nwse-resize;
    touch-action: none;
}

.deck-workspace-pane-right.is-floating-search-tile .deck-search-tile-resize-handle {
    display: block;
}

.deck-search-tile-resize-handle:focus-visible {
    outline: 2px solid var(--tracker-blue);
    outline-offset: 2px;
}

.deck-workspace-pane-header h2 {
    margin: 0;
    font-size: 1.02rem;
}

.deck-list-pane-header {
    gap: 0.55rem;
}

.deck-list-pane-header .deck-list-toolbar {
    justify-content: flex-start;
}

.deck-workspace-pane-left:not([data-active-deck-workspace-view="deck-list"]) [data-deck-list-toolbar] {
    display: none;
}

.deck-workspace-panel > .panel-header p,
.deck-workspace-pane-header p {
    display: none;
}

.deck-workspace-pane-header p,
.deck-workspace-view-heading p {
    margin: 0.25rem 0 0;
    color: var(--tracker-muted);
    font-size: 0.9rem;
    line-height: 1.4;
}

.deck-workspace-view[hidden] {
    display: none !important;
}

.deck-workspace-view,
.deck-workspace-drop-zone {
    min-width: 0;
}

.deck-workspace-view-heading {
    margin-bottom: 0.65rem;
}

.deck-workspace-view-heading h3 {
    margin: 0;
    font-size: 1rem;
}

.deck-workspace-panel .deck-search-art-gallery {
    grid-template-columns: repeat(var(--deck-search-visible-count, 4), minmax(0, 1fr));
    margin-top: 0;
}

.deck-collection-location-picker {
    display: grid;
    gap: 1rem;
}

.deck-missing-location-section {
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid var(--tracker-border);
}

.deck-collection-location-group[hidden] {
    display: none !important;
}

.deck-collection-location-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.deck-collection-location-heading h4 {
    margin: 0;
    font-size: 0.98rem;
}

.deck-collection-location-heading span:not(.status-pill) {
    display: block;
    color: var(--tracker-muted);
    font-size: 0.86rem;
    font-weight: 800;
}

.deck-collection-location-list {
    display: grid;
    gap: 0.55rem;
}

.deck-collection-location-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.7rem;
    padding: 0.7rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.deck-collection-location-row > div {
    display: grid;
    gap: 0.15rem;
    min-width: 0;
}

.deck-collection-location-row > div > span {
    color: var(--tracker-muted);
    font-size: 0.84rem;
    font-weight: 800;
}

.deck-collection-location-row > strong {
    color: var(--tracker-ink);
    font-size: 0.9rem;
    white-space: nowrap;
}

.deck-search-location-list {
    display: grid;
    gap: 0.45rem;
    margin-top: 0.55rem;
}

.deck-search-location-list .deck-collection-location-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.45rem;
    padding: 0.55rem;
}

.deck-search-location-list .deck-collection-location-row > strong {
    justify-self: start;
}

.deck-search-location-list .deck-collection-location-row .btn {
    width: 100%;
}

.deck-workspace-panel .deck-potential-grid {
    grid-template-columns: 1fr;
}

.deck-test-lab {
    display: grid;
    gap: 1rem;
    align-content: start;
}

.deck-test-lab .deck-workspace-drop-zone {
    height: auto;
    min-height: 9rem;
    overflow: visible;
}

.deck-test-lab-candidates,
.deck-test-lab-notes {
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.deck-test-lab-notes {
    border-left: 4px solid var(--tracker-cyan);
    background: #f8fbff;
}

.deck-test-lab-form {
    gap: 0.85rem;
}

.deck-test-lab-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.deck-test-lab-fields > label {
    display: grid;
    gap: 0.35rem;
    min-width: 0;
}

.deck-test-lab-fields .form-label {
    margin: 0;
}

.deck-test-lab-fields textarea {
    min-height: 7.5rem;
    resize: vertical;
}

.deck-workspace-pane.is-compact .deck-test-lab-fields {
    grid-template-columns: 1fr;
}

.deck-workspace-toggle {
    width: 100%;
    max-width: 100%;
    justify-content: flex-start;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
}

.deck-workspace-toggle .segmented-control-option {
    flex: 0 0 auto;
    min-height: 1.9rem;
    padding: 0.22rem 0.58rem;
    white-space: nowrap;
}

.deck-card-search-form {
    margin-bottom: 0.55rem;
}

.deck-card-search-scope {
    flex: 0 0 auto;
}

.deck-card-search-scope .segmented-control-option {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.deck-search-status {
    min-height: 1.35rem;
    margin-bottom: 0.45rem;
    color: var(--tracker-muted);
    font-size: 0.88rem;
    font-weight: 800;
}

.deck-workspace-panel .deck-search-status:empty {
    display: none;
}

.deck-search-status.is-success {
    color: #116b58;
}

.deck-search-status.is-error {
    color: #bd3044;
}

.deck-search-gallery-shell {
    display: grid;
    gap: 0.65rem;
    min-width: 0;
}

.deck-search-gallery-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.55rem;
    min-width: 0;
}

.deck-search-gallery-controls[hidden] {
    display: none !important;
}

.deck-search-gallery-controls span {
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 900;
    text-align: center;
}

.deck-workspace-pane.is-compact .deck-search-art-gallery {
    grid-template-columns: repeat(var(--deck-search-visible-count, 2), minmax(0, 1fr));
    gap: 0.65rem;
    margin-bottom: 0.25rem;
}

.deck-workspace-pane.is-compact .deck-search-art-card {
    gap: 0.4rem;
}

.deck-workspace-pane.is-compact .deck-search-art-actions .btn {
    flex-basis: 100%;
}

.deck-workspace-pane.is-compact .search-row {
    align-items: stretch;
}

.deck-workspace-pane.is-compact .search-row .form-control,
.deck-workspace-pane.is-compact .search-row .form-select,
.deck-workspace-pane.is-compact .search-row .btn {
    flex: 1 1 100%;
    max-width: none;
}

.deck-search-results {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
    gap: 0.9rem;
}

.deck-potential-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(13.5rem, 1fr));
    gap: 0.85rem;
}

.deck-search-card {
    display: grid;
    grid-template-columns: 4.2rem minmax(0, 1fr);
    gap: 0.8rem;
    min-width: 0;
    padding: 0.8rem;
    border: 1px solid rgba(45, 120, 255, 0.2);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 10px 24px rgba(8, 14, 40, 0.08);
    transition: border-color 140ms ease, box-shadow 140ms ease, opacity 140ms ease, transform 140ms ease;
}

.deck-search-card:hover,
.deck-search-card:focus-within {
    border-color: rgba(45, 120, 255, 0.45);
    box-shadow: 0 14px 30px rgba(8, 14, 40, 0.12);
}

.deck-search-card.is-dragging {
    opacity: 0.55;
    transform: scale(0.98);
}

.deck-search-card-image {
    display: grid;
    place-items: center;
    width: 4.2rem;
    min-height: 5.85rem;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 10px;
    background: var(--tracker-surface);
    color: var(--tracker-muted);
    font-size: 0.72rem;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
}

.deck-search-card-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.deck-search-card-body {
    display: grid;
    align-content: start;
    gap: 0.45rem;
    min-width: 0;
}

.deck-search-card-body .ownership-badges {
    gap: 0.3rem;
}

.deck-card-drop-hint {
    margin-bottom: 1rem;
    padding: 0.75rem 0.9rem;
    border: 1px dashed rgba(45, 120, 255, 0.38);
    border-radius: 10px;
    background: rgba(45, 120, 255, 0.07);
    color: var(--tracker-muted);
    font-size: 0.88rem;
    font-weight: 800;
}

.deck-card-drop-zone-panel.is-card-drop-active {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 4px rgba(45, 120, 255, 0.14), 0 14px 34px var(--tracker-shadow);
}

.deck-card-drop-zone-panel.is-card-drop-active .deck-card-drop-hint {
    border-color: var(--tracker-blue);
    background: rgba(45, 120, 255, 0.14);
    color: var(--tracker-blue);
}

.empty-state {
    display: grid;
    gap: 0.25rem;
    padding: 1rem;
    border: 1px dashed var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-muted);
}

.empty-state strong {
    color: var(--tracker-ink);
}

.empty-state.compact {
    padding: 0.75rem;
}

.tournament-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
    margin-bottom: 1.25rem;
}

.metric-card,
.comparison-table-stack {
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.metric-card {
    display: grid;
    gap: 0.25rem;
    padding: 1rem;
    border-top: 3px solid var(--tracker-blue);
}

.metric-card strong {
    font-size: 1.25rem;
}

.deck-progress-panel .deck-summary-grid {
    margin-bottom: 1rem;
}

.deck-progress-table-wrap {
    max-height: 34rem;
    overflow: auto;
}

.deck-progress-table {
    margin-bottom: 0;
}

.deck-progress-table th {
    white-space: nowrap;
}

.deck-progress-table td {
    vertical-align: middle;
}

.missing-count-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.4rem;
    min-height: 2rem;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    background: rgba(196, 38, 46, 0.1);
    color: var(--tracker-red-dark);
    font-weight: 800;
}

.deck-progress-completion {
    display: grid;
    grid-template-columns: minmax(7rem, 1fr) 3rem;
    gap: 0.65rem;
    align-items: center;
    min-width: 12rem;
}

.deck-progress-track {
    display: block;
    height: 0.55rem;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(16, 24, 40, 0.1);
}

.deck-progress-fill {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--tracker-blue);
}

.stat-detail {
    display: block;
    color: var(--tracker-muted);
    font-size: 0.85rem;
    font-weight: 600;
}

.version-pill {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    min-height: 1.75rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 800;
    line-height: 1.1;
    text-decoration: none;
    white-space: normal;
}

.version-pill.base {
    border-color: rgba(45, 120, 255, 0.32);
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
}

.version-pill.snapshot {
    border-color: rgba(255, 209, 102, 0.52);
    background: rgba(255, 209, 102, 0.2);
    color: #6c4a00;
}

a.version-pill:hover,
a.version-pill:focus {
    border-color: var(--tracker-purple);
    color: var(--tracker-purple);
}

.tournament-version-line {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    align-items: center;
}

.snapshot-comparison-grid {
    grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.comparison-table-stack {
    min-width: 0;
    padding: 1rem;
}

.comparison-table-stack h3 {
    margin: 0 0 0.75rem;
    font-size: 1rem;
}

.format-rules-grid {
    display: grid;
    grid-template-columns: minmax(14rem, 0.8fr) minmax(0, 1.6fr);
    gap: 1rem;
    align-items: start;
}

.format-page-shell,
.format-admin-shell {
    max-width: 1120px;
}

.format-guide-grid {
    display: grid;
    grid-template-columns: minmax(14rem, 0.65fr) minmax(0, 1.85fr);
    gap: 1.25rem;
    align-items: start;
}

.format-list-panel,
.format-editor-panel,
.format-explanation-panel {
    min-width: 0;
}

.format-list-panel h2 {
    margin: 0 0 0.75rem;
    font-size: 1rem;
}

.format-list {
    display: grid;
    gap: 0.5rem;
}

.format-list-item {
    display: grid;
    gap: 0.25rem;
    padding: 0.7rem 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    color: var(--tracker-ink);
    text-decoration: none;
}

.format-list-item > span {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.format-list-item small {
    color: var(--tracker-muted);
}

.format-list-item.active,
.format-list-item:hover,
.format-list-item:focus {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.12);
}

.format-toggle-grid {
    display: grid;
    gap: 0.6rem;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.format-toggle-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.format-picker-panel {
    display: grid;
    gap: 1rem;
}

.format-picker-form {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    gap: 0.65rem;
    align-items: center;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.format-picker-form label {
    margin: 0;
    color: var(--tracker-muted);
    font-weight: 800;
}

.format-focus-panel {
    display: grid;
    gap: 1rem;
}

.format-focus-header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.format-focus-header h2 {
    margin: 0 0 0.45rem;
}

.format-explanation-panel {
    display: grid;
    gap: 0.9rem;
}

.format-title-line {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
    justify-content: space-between;
}

.format-title-line h2 {
    margin: 0;
}

.format-title-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-start;
}

.status-pill.neutral {
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
}

.format-summary-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.format-summary-item {
    display: grid;
    gap: 0.2rem;
    min-width: 0;
}

.format-summary-item span,
.format-rule-row span,
.format-side-section h3 {
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
}

.format-summary-item strong {
    overflow-wrap: anywhere;
    font-size: 1rem;
}

.format-short-explanation {
    margin: 0;
    padding: 0.85rem 1rem;
    border-left: 4px solid var(--tracker-blue);
    background: var(--tracker-surface);
    font-size: 1rem;
}

.format-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(16rem, 0.75fr);
    gap: 1.25rem;
    align-items: start;
}

.format-rules-list,
.format-side-panel {
    min-width: 0;
}

.format-rules-list h3,
.format-side-section h3 {
    margin: 0;
    font-size: 1rem;
}

.format-rule-row {
    display: grid;
    grid-template-columns: minmax(9rem, 0.45fr) minmax(0, 1fr);
    gap: 0.75rem;
    align-items: start;
    padding: 0.85rem 0;
    border-top: 1px solid var(--tracker-border);
}

.format-rule-row strong {
    overflow-wrap: anywhere;
}

.format-rule-row p,
.format-side-section p {
    margin: 0;
    color: var(--tracker-muted);
}

.format-side-panel {
    display: grid;
    gap: 0.9rem;
    padding-left: 1.25rem;
    border-left: 1px solid var(--tracker-border);
}

.format-side-section {
    display: grid;
    gap: 0.45rem;
}

.format-banned-card-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.format-banned-details {
    display: grid;
    gap: 0.65rem;
}

.format-banned-details summary {
    cursor: pointer;
    color: var(--tracker-red-dark);
    font-weight: 800;
}

.format-banned-details[open] summary {
    margin-bottom: 0.55rem;
}

.format-admin-editor {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--tracker-border);
}

.format-admin-field-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(12rem, 0.45fr);
    gap: 0.9rem;
}

.format-admin-notes-field {
    grid-column: 1 / -1;
}

.format-ban-add-form {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.65rem;
    align-items: center;
    margin-bottom: 1rem;
}

.format-ban-add-form .form-label {
    margin: 0;
    color: var(--tracker-muted);
    font-weight: 800;
}

.format-admin-ban-list {
    display: grid;
    gap: 0.65rem;
}

.format-ban-chip {
    display: grid;
    grid-template-columns: minmax(10rem, 1fr) minmax(12rem, 0.8fr) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.7rem 0.8rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.format-ban-chip span {
    color: var(--tracker-muted);
    font-size: 0.88rem;
}

.panel-header p,
.deck-summary p {
    margin-bottom: 0;
    color: var(--tracker-muted);
}

.tracker-search {
    margin-bottom: 1rem;
}

.search-row,
.form-actions,
.action-row:not(td) {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    align-items: center;
}

.search-row .form-control {
    flex: 1 1 14rem;
    min-width: 0;
}

.card-search-suggest-combobox {
    position: relative;
    flex: 1 1 14rem;
    min-width: 0;
}

.card-search-suggest-combobox > .form-control {
    width: 100%;
}

.card-search-suggest-menu {
    position: absolute;
    top: calc(100% + 0.25rem);
    left: 0;
    right: 0;
    z-index: 1400;
    display: grid;
    gap: 0.15rem;
    max-height: min(21rem, 55vh);
    overflow-y: auto;
    padding: 0.35rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(8, 14, 40, 0.18);
}

.card-search-suggest-menu[hidden] {
    display: none;
}

.card-search-suggest-option {
    display: grid;
    width: 100%;
    min-height: 2.65rem;
    gap: 0.1rem;
    padding: 0.45rem 0.6rem;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--tracker-ink);
    text-align: left;
}

.card-search-suggest-option:hover,
.card-search-suggest-option:focus,
.card-search-suggest-option.is-active {
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
    outline: none;
}

.card-search-suggest-title {
    font-size: 0.94rem;
    font-weight: 800;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.card-search-suggest-meta {
    color: var(--tracker-muted);
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.search-helper {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    align-items: center;
    margin-top: 0.55rem;
    color: var(--tracker-muted);
    font-size: 0.88rem;
}

.search-helper a {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    padding: 0.18rem 0.55rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: var(--tracker-surface);
    color: var(--tracker-ink);
    text-decoration: none;
    font-weight: 700;
}

.search-helper a:hover {
    border-color: var(--tracker-blue);
    color: var(--tracker-blue);
}

.advanced-filter-panel {
    margin-top: 0.65rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-soft);
}

.advanced-filter-panel summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: 2.65rem;
    padding: 0.55rem 0.75rem;
    color: var(--tracker-ink);
    cursor: pointer;
    font-weight: 800;
}

.advanced-filter-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
    gap: 0.75rem;
    padding: 0 0.75rem 0.75rem;
}

.advanced-filter-grid label {
    display: grid;
    gap: 0.28rem;
    min-width: 0;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 800;
}

.advanced-filter-grid .form-control,
.advanced-filter-grid .form-select {
    min-width: 0;
}

.card-view-toggle {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
    margin: -0.25rem 0 1rem;
    color: var(--tracker-muted);
    font-size: 0.9rem;
}

.card-view-toggle a {
    display: inline-flex;
    align-items: center;
    min-height: 1.9rem;
    padding: 0.2rem 0.65rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: var(--tracker-surface);
    color: var(--tracker-ink);
    text-decoration: none;
    font-weight: 800;
}

.card-view-toggle a.active {
    border-color: var(--tracker-blue);
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
}

.card-column-picker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem;
    margin: -0.25rem 0 1rem;
    padding: 0.65rem 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-soft);
}

.card-column-picker-title {
    font-weight: 800;
    color: var(--tracker-ink);
    margin-right: 0.25rem;
}

.card-column-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    min-height: 1.75rem;
    padding: 0.16rem 0.52rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: var(--tracker-surface);
    color: var(--tracker-ink);
    font-size: 0.88rem;
    font-weight: 700;
}

.card-column-toggle input {
    margin: 0;
}

.card-art-gallery {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1rem;
    margin: 0.5rem 0 1rem;
}

.card-art-tile {
    display: grid;
    gap: 0.45rem;
    min-width: 0;
    color: var(--tracker-ink);
    text-decoration: none;
}

.card-art-frame {
    position: relative;
    display: grid;
    place-items: center;
    aspect-ratio: 63 / 88;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.card-detail-image-frame,
.card-thumb-frame,
.deck-card-thumb-frame,
.deck-printing-option-image,
.deck-search-card-image,
.binder-slot-image-frame,
.equivalent-printing-image-frame,
.set-card-image-frame,
.printable-checklist-thumb-frame,
.scanner-candidate-art,
.sale-listing-thumb-frame {
    position: relative;
}

.card-foil-marker {
    position: absolute;
    right: 0.35rem;
    bottom: 0.35rem;
    z-index: 2;
    display: -webkit-box;
    max-width: calc(100% - 0.7rem);
    padding: 0.22rem 0.45rem;
    overflow: hidden;
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.48);
    border-radius: 999px;
    background: rgba(8, 14, 40, 0.72);
    box-shadow: 0 2px 8px rgba(8, 14, 40, 0.28);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: clamp(0.58rem, 0.8vw, 0.72rem);
    font-weight: 850;
    line-height: 1.08;
    overflow-wrap: anywhere;
    text-align: right;
    user-select: none;
    pointer-events: none;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
}

.card-thumb-frame .card-foil-marker,
.deck-card-thumb-frame .card-foil-marker {
    right: 0.1rem;
    bottom: 0.1rem;
    max-width: calc(100% - 0.2rem);
    padding: 0.1rem 0.18rem;
    border-radius: 4px;
    font-size: 0.4rem;
    line-height: 1;
}

.scanner-candidate-art .card-foil-marker,
.sale-listing-thumb-frame .card-foil-marker,
.printable-checklist-thumb-frame .card-foil-marker,
.deck-search-card-image .card-foil-marker,
.deck-printing-option-image .card-foil-marker {
    right: 0.18rem;
    bottom: 0.18rem;
    max-width: calc(100% - 0.36rem);
    padding: 0.14rem 0.25rem;
    color: #ffffff;
    border-radius: 5px;
    font-size: 0.5rem;
}

.card-art-frame img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.card-art-placeholder {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    padding: 0.75rem;
    color: var(--tracker-muted);
    text-align: center;
    font-size: 0.9rem;
    font-weight: 800;
}

.card-art-set {
    min-height: 2.4rem;
    color: var(--tracker-muted);
    font-size: 0.85rem;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    overflow-wrap: anywhere;
}

.card-art-tile:not(.deck-list-art-card):hover .card-art-frame {
    border-color: var(--tracker-blue);
}

.card-hover-preview {
    position: fixed;
    z-index: 2200;
    display: grid;
    width: min(19.84rem, calc(100vw - 1.5rem));
    gap: 0.45rem;
    padding: 0.5rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 18px 46px rgba(8, 14, 40, 0.24);
    color: var(--tracker-ink);
    opacity: 0;
    pointer-events: none;
    transform: translateY(4px);
    transition: opacity 0.12s ease, transform 0.12s ease;
}

.card-hover-preview[hidden] {
    display: none;
}

.card-hover-preview.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.card-hover-preview img {
    display: block;
    width: 100%;
    aspect-ratio: 63 / 88;
    object-fit: contain;
    border: 1px solid var(--tracker-border);
    border-radius: 6px;
    background: var(--tracker-surface);
}

.card-hover-preview-art {
    position: relative;
}

.card-hover-preview-status {
    display: block;
    text-align: center;
    overflow-wrap: anywhere;
    color: var(--tracker-muted);
    font-size: 0.8rem;
    font-weight: 800;
}

.card-hover-preview .card-foil-marker {
    display: -webkit-box;
    color: #ffffff;
    font-size: 0.72rem;
    text-align: right;
}

.card-hover-preview .card-foil-marker[hidden] {
    display: none;
}

.card-hover-preview.is-empty {
    min-height: 8rem;
    place-content: center;
}

.touch-card-drag-preview {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2600;
    width: min(9.5rem, 38vw);
    max-height: 42vh;
    pointer-events: none;
    transform: translate3d(0, 0, 0) translate(-50%, -50%) scale(0.92);
    opacity: 0.9;
    filter: drop-shadow(0 18px 34px rgba(8, 14, 40, 0.3));
    backface-visibility: hidden;
    contain: layout paint style;
    will-change: transform;
}

.touch-card-drag-preview img {
    max-width: 100%;
    height: auto;
}

.touch-card-drag-preview.is-deck-workspace-preview {
    max-height: none;
    opacity: 0.94;
    transform-origin: center center;
    transition: width 120ms ease, height 120ms ease;
}

.touch-card-drag-preview.is-deck-workspace-preview .deck-search-art-card {
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    gap: 0;
    transition: none;
}

.touch-card-drag-preview.is-deck-workspace-preview .card-art-tile {
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    gap: 0;
}

.touch-card-drag-preview.is-deck-workspace-preview .card-art-frame {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
}

.touch-card-drag-preview.is-deck-workspace-preview .card-art-frame {
    border-width: 3px;
    border-color: var(--tracker-border);
}

.touch-card-drag-preview.is-deck-workspace-preview .card-art-frame img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.touch-card-drag-preview.is-deck-workspace-preview .deck-search-art-actions,
.touch-card-drag-preview.is-deck-workspace-preview .card-art-set {
    display: none;
}

.touch-card-drag-preview table {
    width: 100%;
    margin: 0;
    background: var(--tracker-surface);
}

.is-touch-dragging-card {
    user-select: none;
}

.deck-search-art-gallery {
    align-items: start;
}

.deck-search-art-card {
    display: grid;
    gap: 0.5rem;
    min-width: 0;
    cursor: grab;
    transition: opacity 140ms ease, transform 140ms ease;
}

.deck-search-art-card .card-art-tile,
.deck-search-art-card .card-art-frame,
.deck-search-art-card img {
    -webkit-user-drag: none;
}

.deck-search-art-card:active {
    cursor: grabbing;
}

.deck-search-art-card.is-dragging {
    opacity: 0.55;
    transform: scale(0.98);
}

.deck-search-art-card.is-touch-dragging {
    opacity: 0.45;
}

.deck-search-art-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: center;
}

.deck-search-art-actions .btn {
    flex: 1 1 5rem;
    min-width: 0;
}

.compact-empty {
    margin: 0.5rem 0 1rem;
}

td.action-row {
    white-space: nowrap;
}

td.action-row > * {
    display: inline-block;
    margin: 0.125rem 0.35rem 0.125rem 0;
    vertical-align: middle;
}

td.action-row > *:last-child {
    margin-right: 0;
}

td.action-row form {
    margin-bottom: 0;
}

.icon-btn {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-weight: 800;
}

td.action-row .icon-btn {
    display: inline-flex;
}

.available-copy-control {
    display: grid;
    grid-template-columns: 2rem minmax(3.5rem, 1fr) 2rem;
    gap: 0.35rem;
    align-items: center;
}

.is-pending {
    opacity: 0.65;
    cursor: progress;
}

.copy-status {
    color: var(--tracker-muted);
    font-size: 0.9rem;
    font-weight: 600;
}

.clipboard-source {
    position: fixed;
    top: 0;
    left: -9999px;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.compact-select {
    flex: 0 1 13rem;
    min-width: 10rem;
}

.set-filter-combobox {
    position: relative;
    flex: 1 1 18rem;
    min-width: 14rem;
}

.set-filter-combobox .set-search-input {
    width: 100%;
}

.set-filter-summary {
    margin-top: 0.25rem;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.25;
    min-height: 1.05rem;
    overflow-wrap: anywhere;
}

.set-filter-options {
    position: absolute;
    top: calc(100% + 0.25rem);
    left: 0;
    right: 0;
    z-index: 1300;
    display: grid;
    gap: 0.15rem;
    max-height: min(22rem, 55vh);
    overflow-y: auto;
    padding: 0.35rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(8, 14, 40, 0.18);
}

.set-filter-options[hidden] {
    display: none;
}

.set-filter-option {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    min-height: 2.2rem;
    padding: 0.42rem 0.58rem;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--tracker-ink);
    cursor: pointer;
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.25;
    text-align: left;
    overflow-wrap: anywhere;
}

.set-filter-option input[type="checkbox"] {
    flex: 0 0 auto;
    width: 1rem;
    height: 1rem;
    margin: 0;
    accent-color: var(--tracker-blue);
}

.set-filter-option-label {
    min-width: 0;
}

.set-filter-option:hover,
.set-filter-option:focus,
.set-filter-option.is-active {
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
    outline: none;
}

.set-filter-option.is-selected {
    background: rgba(45, 120, 255, 0.16);
    box-shadow: inset 3px 0 0 var(--tracker-blue);
    color: var(--tracker-blue);
    font-weight: 800;
}

.set-filter-empty {
    display: block;
    padding: 0.55rem 0.65rem;
    color: var(--tracker-muted);
    font-size: 0.9rem;
    font-weight: 700;
}

.pagination-bar {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    margin: 1rem 0;
    padding: 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.pagination-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 1rem;
    color: var(--tracker-muted);
    font-size: 0.9rem;
    font-weight: 700;
}

.card-link {
    color: var(--tracker-red-dark);
    font-weight: 700;
    text-decoration: none;
}

.card-link:hover,
.card-link:focus {
    color: var(--tracker-blue);
    text-decoration: underline;
}

.card-thumb-link,
.set-card-image-link {
    display: inline-flex;
    max-width: 100%;
    color: inherit;
    text-decoration: none;
}

.set-card-image-link {
    display: block;
}

.card-thumb-link:hover .card-thumb-frame,
.card-thumb-link:focus .card-thumb-frame,
.set-card-image-link:hover .set-card-image-frame,
.set-card-image-link:focus .set-card-image-frame {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.16);
}

.card-thumb-frame {
    width: 3rem;
    aspect-ratio: 5 / 7;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 6px;
    background: var(--tracker-surface);
}

.card-thumb {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.card-thumb-placeholder {
    padding: 0.25rem;
    color: var(--tracker-muted);
    font-size: 0.62rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
}

.binder-section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: var(--tracker-cyan);
    font-size: 0.76rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.binder-index-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(1.25rem, 3vw, 3rem);
    align-items: end;
    margin-bottom: 1.25rem;
    padding: clamp(1.5rem, 3vw, 2.5rem);
    overflow: hidden;
    border: 1px solid rgba(0, 212, 255, 0.24);
    border-radius: 20px;
    background:
            radial-gradient(circle at 86% 18%, rgba(0, 212, 255, 0.22), transparent 28%),
            linear-gradient(135deg, #080e28 0%, #172554 58%, #342277 100%);
    box-shadow: 0 22px 52px rgba(8, 14, 40, 0.2);
    color: #ffffff;
}

.binder-index-hero::after {
    content: "";
    position: absolute;
    right: -4rem;
    bottom: -7rem;
    width: 20rem;
    aspect-ratio: 1;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 50%;
    box-shadow: 0 0 0 2.5rem rgba(255, 255, 255, 0.035), 0 0 0 5rem rgba(255, 255, 255, 0.025);
    pointer-events: none;
}

.binder-index-hero-copy,
.binder-index-hero-actions {
    position: relative;
    z-index: 1;
}

.binder-index-hero-copy {
    display: grid;
    gap: 0.55rem;
    max-width: 50rem;
}

.binder-index-hero h1,
.binder-index-hero p {
    margin: 0;
    color: #ffffff;
}

.binder-index-hero h1 {
    font-size: clamp(2rem, 4vw, 3.25rem);
    line-height: 1;
}

.binder-index-hero p {
    max-width: 42rem;
    color: #dce7ff;
    font-size: 1rem;
    line-height: 1.55;
}

.binder-index-hero-actions {
    justify-content: flex-end;
}

.binder-index-hero .btn-outline-light {
    border-color: rgba(255, 255, 255, 0.4);
    color: #ffffff;
    font-weight: 800;
}

.binder-index-hero .btn-outline-light:hover,
.binder-index-hero .btn-outline-light:focus-visible {
    border-color: #ffffff;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
}

.binder-index-panel {
    padding: clamp(1rem, 2.2vw, 1.6rem);
    border-radius: 18px;
}

.binder-index-summary {
    display: grid;
    grid-template-columns: minmax(8rem, 0.35fr) minmax(8rem, 0.35fr) minmax(16rem, 1fr);
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.binder-index-stat {
    display: grid;
    align-content: center;
    gap: 0.2rem;
    min-height: 5rem;
    padding: 0.85rem 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 12px;
    background: var(--tracker-surface);
}

.binder-index-stat span {
    color: var(--tracker-muted);
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.binder-index-stat strong {
    color: var(--tracker-ink);
    font-size: 1.55rem;
    font-weight: 900;
    line-height: 1.15;
}

.binder-index-stat-copy strong {
    font-size: 0.92rem;
    line-height: 1.35;
}

.binder-index-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: end;
    margin-bottom: 1.1rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 12px;
    background: #ffffff;
}

.binder-index-search,
.binder-index-view-toggle {
    margin: 0;
}

.binder-index-view-toggle {
    justify-content: flex-end;
    padding-bottom: 0.3rem;
}

.binder-index-table {
    border: 1px solid var(--tracker-border);
    border-radius: 12px;
}

.binder-index-table .table thead th {
    padding-top: 0.85rem;
    padding-bottom: 0.85rem;
}

.binder-index-shell .binder-tile-grid {
    grid-template-columns: repeat(auto-fill, minmax(min(16rem, 100%), 1fr));
    gap: 1.1rem;
}

.binder-index-shell .binder-tile-card {
    padding: 0.65rem;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(8, 14, 40, 0.09);
}

.binder-index-shell .binder-tile-link {
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    height: 100%;
    gap: 0.7rem;
}

.binder-index-shell .binder-tile-art {
    aspect-ratio: 16 / 10;
    border-radius: 12px;
}

.binder-tile-details {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.45rem 0.75rem;
}

.binder-index-shell .binder-tile-meta {
    display: inline-flex;
    align-items: center;
    min-height: 1.8rem;
    padding: 0.22rem 0.6rem;
    border-radius: 999px;
    background: rgba(45, 120, 255, 0.1);
    color: var(--tracker-blue);
    font-size: 0.74rem;
    font-weight: 900;
}

.binder-tile-layout {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.3rem;
    color: var(--tracker-muted);
    font-size: 0.78rem;
    font-weight: 800;
}

.binder-index-shell .binder-tile-notes {
    min-height: 2.15rem;
    padding: 0 0.2rem;
}

.binder-tile-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.7rem 0.2rem 0.15rem;
    border-top: 1px solid var(--tracker-border);
    font-size: 0.76rem;
    font-weight: 900;
}

.binder-tile-drag-cue {
    color: var(--tracker-muted);
}

.binder-tile-open {
    color: var(--tracker-blue);
}

.binder-tile-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(11.5rem, 1fr));
    gap: 1rem;
}

.binder-tile-card {
    display: grid;
    gap: 0.65rem;
    padding: 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 0.5rem 1.5rem rgba(15, 23, 42, 0.06);
    cursor: grab;
    transition: border-color 140ms ease, box-shadow 140ms ease, opacity 140ms ease, transform 140ms ease;
}

.binder-tile-card:active {
    cursor: grabbing;
}

.binder-tile-card.is-dragging {
    opacity: 0.5;
    transform: scale(0.98);
}

.binder-tile-card.drag-target {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.16), 0 0.75rem 1.75rem rgba(15, 23, 42, 0.08);
}

.binder-tile-link {
    display: grid;
    gap: 0.55rem;
    color: inherit;
    text-decoration: none;
}

.binder-tile-link:hover .binder-tile-art,
.binder-tile-link:focus-visible .binder-tile-art {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.16);
}

.binder-tile-art {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--binder-tile-color, var(--tracker-blue));
    transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.binder-tile-link:hover .binder-tile-art {
    transform: translateY(-1px);
}

.binder-tile-art img,
.binder-tile-color {
    display: block;
    width: 100%;
    height: 100%;
}

.binder-tile-art img {
    object-fit: cover;
}

.binder-tile-color {
    background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0) 48%),
            var(--binder-tile-color, var(--tracker-blue));
}

.binder-tile-name-overlay {
    position: absolute;
    right: 0.65rem;
    bottom: 0.65rem;
    left: 0.65rem;
    display: block;
    padding: 0.45rem 0.55rem;
    border-radius: 6px;
    background: rgba(15, 23, 42, 0.72);
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
    overflow-wrap: anywhere;
}

.binder-tile-title {
    display: block;
    color: var(--tracker-ink);
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.binder-tile-meta,
.binder-tile-notes {
    display: block;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.3;
}

.binder-tile-notes {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.deck-tile-art {
    display: grid;
    place-items: center;
    background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0) 48%),
            linear-gradient(135deg, #2d78ff, #243b73);
    color: #ffffff;
}

.deck-tile-art.is-complete {
    background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0) 48%),
            linear-gradient(135deg, #198754, #1f5f46);
}

.deck-tile-art-content {
    display: grid;
    align-content: center;
    width: 100%;
    height: 100%;
    gap: 0.45rem;
    padding: 1rem;
}

.deck-tile-percent {
    display: block;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1;
}

.deck-tile-art-label {
    display: block;
    font-size: 0.86rem;
    font-weight: 900;
    line-height: 1.2;
}

.deck-tile-progress-track {
    display: block;
    width: 100%;
    height: 0.45rem;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.34);
}

.deck-tile-progress-fill {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #ffffff;
}

.deck-tile-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 0.65rem;
}

.binder-workspace-hero {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: clamp(1rem, 2.5vw, 2rem);
    align-items: center;
    margin-bottom: clamp(1rem, 1.5vw, 1.5rem);
    padding: clamp(1.15rem, 2.5vw, 2rem);
    overflow: hidden;
    border: 1px solid rgba(0, 212, 255, 0.22);
    border-radius: 20px;
    background:
            radial-gradient(circle at 92% 8%, color-mix(in srgb, var(--binder-accent, var(--tracker-blue)) 38%, transparent), transparent 32%),
            linear-gradient(135deg, #080e28 0%, #14214a 62%, #261f57 100%);
    box-shadow: 0 22px 52px rgba(8, 14, 40, 0.2);
    color: #ffffff;
}

.binder-workspace-hero::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 0.35rem;
    background: var(--binder-accent, var(--tracker-cyan));
}

.binder-workspace-hero-new {
    grid-template-columns: minmax(0, 1fr);
    --binder-accent: var(--tracker-cyan);
}

.binder-workspace-cover {
    position: relative;
    z-index: 1;
    display: block;
    width: clamp(5.5rem, 9vw, 8rem);
    aspect-ratio: 4 / 5;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 10px 16px 16px 10px;
    background: var(--binder-accent, var(--tracker-blue));
    box-shadow: inset 0.5rem 0 0 rgba(8, 14, 40, 0.2), 0 18px 34px rgba(0, 0, 0, 0.24);
}

.binder-workspace-cover::before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 0.8rem;
    width: 1px;
    background: rgba(255, 255, 255, 0.28);
}

.binder-workspace-cover img,
.binder-workspace-cover-color {
    display: block;
    width: 100%;
    height: 100%;
}

.binder-workspace-cover img {
    object-fit: cover;
}

.binder-workspace-cover-color {
    background:
            linear-gradient(145deg, rgba(255, 255, 255, 0.24), transparent 45%),
            var(--binder-accent, var(--tracker-blue));
}

.binder-workspace-identity {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.42rem;
    min-width: 0;
}

.binder-workspace-back {
    justify-self: start;
    margin-bottom: 0.15rem;
    color: #dce7ff;
    font-size: 0.82rem;
    font-weight: 800;
    text-decoration: none;
}

.binder-workspace-back:hover,
.binder-workspace-back:focus-visible {
    color: #ffffff;
}

.binder-workspace-hero h1,
.binder-workspace-hero p {
    margin: 0;
    color: #ffffff;
}

.binder-workspace-hero h1 {
    font-size: clamp(1.75rem, 3.2vw, 2.75rem);
    line-height: 1.05;
    overflow-wrap: anywhere;
}

.binder-workspace-hero p {
    max-width: 52rem;
    color: #dce7ff;
    line-height: 1.5;
}

.binder-workspace-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.35rem;
}

.binder-workspace-stats > span {
    display: inline-flex;
    align-items: baseline;
    gap: 0.25rem;
    min-height: 1.85rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #dce7ff;
    font-size: 0.78rem;
    font-weight: 800;
}

.binder-workspace-stats strong {
    color: #ffffff;
    font-size: 0.9rem;
}

.binder-workspace-nav {
    position: relative;
    z-index: 1;
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    padding-top: 0.9rem;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.binder-workspace-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.3rem 0.7rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
    font-size: 0.78rem;
    font-weight: 900;
    text-decoration: none;
}

.binder-workspace-nav a:hover,
.binder-workspace-nav a:focus-visible {
    border-color: var(--tracker-cyan);
    background: rgba(0, 212, 255, 0.12);
    color: #ffffff;
}

.binder-form-panel {
    overflow: hidden;
}

.binder-form-accordion {
    border: 1px solid var(--tracker-border);
    border-radius: 14px;
    background: var(--tracker-surface);
}

.binder-form-accordion summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.15rem;
    cursor: pointer;
    list-style: none;
}

.binder-form-accordion summary::-webkit-details-marker {
    display: none;
}

.binder-form-summary-heading {
    display: grid;
    gap: 0.25rem;
    min-width: 0;
}

.binder-form-summary-title-row {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.45rem 0.75rem;
    min-width: 0;
}

.binder-form-summary-title {
    color: var(--tracker-red-dark);
    font-size: 1.55rem;
    font-weight: 900;
    line-height: 1.1;
}

.binder-form-summary-name {
    color: var(--tracker-ink);
    font-size: 1.05rem;
    font-weight: 900;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.binder-form-summary-copy {
    color: var(--tracker-muted);
    font-size: 0.92rem;
}

.binder-form-summary-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.45rem;
    margin-right: 1.25rem;
}

.binder-form-summary-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 1.9rem;
    padding: 0.25rem 0.7rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    color: var(--tracker-red-dark);
    font-size: 0.82rem;
    font-weight: 800;
}

.binder-form-accordion summary::after {
    content: "";
    flex: 0 0 auto;
    width: 0.8rem;
    height: 0.8rem;
    border-right: 2px solid var(--tracker-red-dark);
    border-bottom: 2px solid var(--tracker-red-dark);
    transform: rotate(45deg);
    transition: transform 0.18s ease;
}

.binder-form-accordion[open] summary {
    border-bottom: 1px solid var(--tracker-border);
}

.binder-form-accordion[open] summary::after {
    transform: rotate(225deg);
}

.binder-form-accordion-body {
    padding: 1rem 1.15rem 1.15rem;
}

.binder-delete-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1.15rem;
    padding: 1rem;
    border: 1px solid rgba(189, 48, 68, 0.24);
    border-radius: 12px;
    background: #fff7f7;
}

.binder-delete-section p {
    margin: 0.25rem 0 0;
    color: var(--tracker-muted);
    font-size: 0.9rem;
}

.binder-delete-title {
    color: var(--tracker-red-dark);
    font-size: 0.96rem;
    font-weight: 900;
}

.binder-delete-form {
    flex: 0 0 auto;
    margin: 0;
}

.binder-tile-settings-shell {
    display: grid;
    gap: 0.8rem;
}

.binder-tile-settings-heading p {
    margin: 0;
    color: var(--tracker-muted);
    font-size: 0.9rem;
}

.binder-tile-settings {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: stretch;
}

.binder-tile-setting-card {
    display: grid;
    gap: 0.65rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.85);
}

.binder-tile-setting-card .form-label {
    margin-bottom: 0;
}

.binder-tile-setting-card-photo .helper-copy {
    margin-top: 0;
    margin-bottom: 0;
}

.binder-tile-setting-choice {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.7rem;
    align-items: start;
    padding: 0.2rem 0;
    cursor: pointer;
}

.binder-tile-setting-choice-copy {
    display: grid;
    gap: 0.2rem;
}

.binder-tile-setting-title {
    color: var(--tracker-red-dark);
    font-size: 0.96rem;
    font-weight: 900;
}

.binder-tile-setting-note {
    color: var(--tracker-muted);
    font-size: 0.86rem;
}

.binder-tile-setting-choice input {
    margin: 0.15rem 0 0;
}

.binder-tile-setting-card:has(.binder-tile-setting-choice input:checked) {
    border-color: rgba(45, 120, 255, 0.35);
    box-shadow: 0 12px 24px rgba(12, 26, 75, 0.08);
}

.binder-tile-setting-card .form-control,
.binder-tile-setting-card .form-select,
.binder-tile-setting-card .form-control-color {
    margin-bottom: 0;
}

.binder-tile-setting-card .form-control[type="file"] {
    padding: 0.65rem 0.8rem;
    border: 1px solid var(--tracker-border);
    border-radius: 10px;
    background: #ffffff;
}

.form-control-color {
    width: 100%;
    min-height: 2.4rem;
}

.binder-layout-fields {
    display: grid;
    grid-template-columns: minmax(7rem, 0.8fr) repeat(2, minmax(8rem, 1fr));
    gap: 1rem;
}

.binder-layout-panels {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: clamp(0.85rem, 1.4vw, 1.5rem);
    align-items: start;
}

.binder-page-toolbar {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-width: 0;
    padding: 0.85rem 1rem;
    border: 1px solid rgba(45, 120, 255, 0.2);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 8px 24px rgba(8, 14, 40, 0.07);
}

.binder-page-toolbar > div {
    display: grid;
    gap: 0.18rem;
    min-width: 0;
}

.binder-page-toolbar-title {
    color: var(--tracker-ink);
    font-size: 0.95rem;
    font-weight: 900;
}

.binder-page-toolbar .helper-copy {
    margin: 0;
}

.binder-page-toolbar [data-binder-tiles-hidden-toggle][aria-pressed="true"] {
    border-color: var(--tracker-blue);
    background: var(--tracker-blue);
    color: #ffffff;
}

.binder-page-panel {
    grid-column: 1 / -1;
    min-width: 0;
    margin-bottom: 0;
    border-radius: 16px;
    scroll-margin-top: 1rem;
    transition: border-color 140ms ease, box-shadow 140ms ease, opacity 140ms ease, transform 140ms ease;
}

.binder-page-panel[data-binder-page-panel="layout"] {
    border-top: 3px solid var(--tracker-purple);
}

.binder-page-panel[data-binder-page-panel="card-search"] {
    border-top: 3px solid var(--tracker-blue);
}

.binder-page-panel[data-binder-page-panel="clipboard"] {
    border-top: 3px solid var(--tracker-cyan);
}

.binder-page-panel[data-binder-page-panel="cards"] {
    border-top: 3px solid var(--tracker-success);
}

.binder-page-panel[data-binder-page-panel="settings"] {
    border-top: 3px solid var(--tracker-warning);
}

.binder-page-panel .panel-header h2 {
    font-size: clamp(1.2rem, 1.8vw, 1.45rem);
}

.binder-page-panel[data-binder-panel-width="half"] {
    grid-column: span 6;
}

.binder-page-panel[data-binder-panel-width="wide"] {
    grid-column: span 8;
}

.binder-page-panel[data-binder-panel-width="full"] {
    grid-column: 1 / -1;
}

.binder-page-panel.is-dragging {
    opacity: 0.58;
    transform: scale(0.99);
}

.binder-page-panel.drag-target {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.18), 0 14px 34px var(--tracker-shadow);
}

.binder-layout-panels.is-hiding-tile-content {
    align-items: stretch;
}

.binder-layout-panels.is-hiding-tile-content .binder-page-panel {
    display: grid;
    gap: 0.6rem;
    padding: 0.8rem;
}

.binder-layout-panels.is-hiding-tile-content .binder-page-panel::before {
    content: attr(data-binder-panel-title);
    display: block;
    min-width: 0;
    color: var(--tracker-ink);
    font-size: 1rem;
    font-weight: 900;
    overflow-wrap: anywhere;
}

.binder-layout-panels.is-hiding-tile-content .binder-page-panel > :not(.binder-panel-customize):not(.binder-panel-layout-controls) {
    display: none !important;
}

.binder-layout-panels.is-hiding-tile-content .binder-panel-customize {
    display: grid;
    justify-items: stretch;
    margin: 0;
}

.binder-layout-panels.is-hiding-tile-content .binder-panel-customize > summary {
    display: none;
}

.binder-layout-panels.is-hiding-tile-content .binder-panel-layout-controls,
.binder-layout-panels.is-hiding-tile-content .binder-panel-customize .binder-panel-layout-controls {
    order: 2;
    margin-bottom: 0;
}

.binder-panel-customize {
    position: relative;
    z-index: 10;
    display: grid;
    justify-items: end;
    margin: -0.25rem 0 0.75rem;
}

.binder-panel-customize > summary {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: var(--tracker-surface);
    color: var(--tracker-muted);
    font-size: 0.76rem;
    font-weight: 900;
    cursor: pointer;
    list-style: none;
}

.binder-panel-customize > summary::-webkit-details-marker {
    display: none;
}

.binder-panel-customize > summary::before {
    content: "•••";
    margin-right: 0.4rem;
    color: var(--tracker-blue);
    letter-spacing: 0.08em;
}

.binder-panel-customize > summary:hover,
.binder-panel-customize > summary:focus-visible,
.binder-panel-customize[open] > summary {
    border-color: var(--tracker-blue);
    color: var(--tracker-blue);
}

.binder-panel-customize .binder-panel-layout-controls {
    width: min(100%, 30rem);
    margin: 0.5rem 0 0;
    padding: 0.65rem;
    border: 1px solid var(--tracker-border);
    border-radius: 10px;
    background: var(--tracker-surface);
}

.binder-panel-layout-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    min-width: 0;
    margin-bottom: 1rem;
}

.binder-panel-drag-handle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.25rem;
    padding: 0.35rem 0.8rem;
    border: 1px solid var(--tracker-border);
    border-radius: 10px;
    background: rgba(45, 120, 255, 0.1);
    color: var(--tracker-red-dark);
    font-size: 0.82rem;
    font-weight: 900;
    cursor: grab;
}

.binder-panel-drag-handle:hover,
.binder-panel-drag-handle:focus-visible {
    border-color: var(--tracker-blue);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.14);
}

.binder-panel-drag-handle:active {
    cursor: grabbing;
}

.binder-panel-width-options {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    min-width: 0;
}

.binder-panel-width-options button {
    min-height: 2.1rem;
    padding: 0.25rem 0.7rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-ink);
    font-size: 0.82rem;
    font-weight: 800;
}

.binder-panel-width-options button.is-active {
    border-color: var(--tracker-blue);
    background: var(--tracker-blue);
    color: #ffffff;
}

.binder-page-panel .panel-header,
.binder-page-panel .binder-page-header {
    flex-wrap: wrap;
}

.binder-page-panel .panel-header > div:first-child,
.binder-page-panel .action-row,
.binder-page-panel .binder-page-header > * {
    min-width: 0;
}

.binder-page-panel .panel-header p,
.binder-page-panel .helper-copy,
.binder-page-panel .card-link {
    overflow-wrap: anywhere;
}

.binder-layout-panel {
    overflow: hidden;
}

.binder-custom-image-tool {
    margin: 0 0 1rem;
    padding: 0.75rem;
    border: 1px solid rgba(32, 44, 68, 0.14);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.82);
}

.binder-custom-image-tool summary {
    cursor: pointer;
    color: var(--tracker-ink);
    font-weight: 900;
}

.binder-custom-image-form {
    margin-top: 0.75rem;
}

.binder-custom-image-grid {
    display: grid;
    grid-template-columns: minmax(13rem, 0.85fr) minmax(13rem, 1fr);
    gap: clamp(0.75rem, 1.4vw, 1.25rem);
    align-items: start;
}

.binder-custom-image-source,
.binder-custom-image-controls,
.binder-custom-image-sliders {
    display: grid;
    gap: 0.55rem;
    min-width: 0;
}

.binder-custom-image-preview {
    display: block;
    width: 100%;
    max-width: 20rem;
    aspect-ratio: 5 / 7;
    border: 1px solid var(--tracker-border);
    border-radius: 6px;
    background: var(--tracker-surface);
}

.binder-custom-image-placement {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.5rem;
}

.binder-custom-image-controls .form-label {
    margin-bottom: 0.18rem;
    font-size: 0.76rem;
    font-weight: 900;
    text-transform: uppercase;
}

.binder-custom-image-controls .btn {
    justify-self: start;
}

.binder-card-search-panel {
    border-color: rgba(45, 120, 255, 0.24);
    background:
            linear-gradient(135deg, rgba(45, 120, 255, 0.08), rgba(255, 255, 255, 0) 46%),
            rgba(255, 255, 255, 0.96);
}

.binder-card-search-form {
    margin-bottom: 0.55rem;
}

.binder-search-status:empty {
    display: none;
}

.binder-search-art-gallery {
    grid-template-columns: repeat(var(--binder-search-visible-count, 4), minmax(0, 1fr));
    margin-top: 0;
}

.binder-search-art-gallery [hidden] {
    display: none !important;
}

.binder-search-art-card {
    cursor: grab;
}

.binder-search-art-card:active {
    cursor: grabbing;
}

.binder-search-art-card.is-dragging {
    opacity: 0.55;
}

.binder-search-art-actions {
    display: flex;
    justify-content: stretch;
    margin: 0;
}

.binder-search-art-actions .btn {
    width: 100%;
}

.binder-clipboard-workspace {
    display: grid;
    grid-template-columns: minmax(18rem, 1fr) minmax(14rem, 0.38fr);
    gap: 1rem;
    align-items: start;
}

.binder-clipboard-board {
    position: relative;
    min-height: clamp(28rem, 58vh, 46rem);
    overflow: auto;
    border: 1px solid rgba(32, 44, 68, 0.14);
    border-radius: 8px;
    background:
            linear-gradient(rgba(32, 44, 68, 0.055) 1px, transparent 1px),
            linear-gradient(90deg, rgba(32, 44, 68, 0.055) 1px, transparent 1px),
            #f9fbff;
    background-size: 2.5rem 2.5rem;
}

.binder-clipboard-board.is-active {
    border-color: var(--tracker-blue);
    box-shadow: inset 0 0 0 2px rgba(45, 120, 255, 0.18);
}

.binder-clipboard-empty {
    position: absolute;
    inset: 1rem;
    display: grid;
    place-content: center;
    gap: 0.25rem;
    color: var(--tracker-muted);
    text-align: center;
}

.binder-clipboard-empty strong,
.binder-clipboard-empty span {
    display: block;
}

.binder-clipboard-card {
    position: absolute;
    width: clamp(6.8rem, 15vw, 9.5rem);
    min-width: 0;
    user-select: none;
    touch-action: none;
}

.binder-clipboard-card.is-dragging {
    opacity: 0.74;
}

.binder-clipboard-card.is-saving,
.binder-clipboard-list-row.is-saving,
.binder-slot-card.is-saving,
.binder-slot-cell.is-saving,
[data-binder-search-card].is-saving {
    opacity: 0.62;
    pointer-events: none;
}

.binder-clipboard-card .binder-slot-image-link {
    display: block;
}

.binder-clipboard-drag-handle {
    position: absolute;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2rem;
    min-height: 1.65rem;
    padding: 0.15rem 0.4rem;
    border: 1px solid rgba(32, 44, 68, 0.22);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 0.25rem 0.75rem rgba(15, 23, 42, 0.14);
    font-size: 0.7rem;
    font-weight: 900;
    line-height: 1;
}

.binder-clipboard-drag-handle {
    top: 0.35rem;
    left: 0.35rem;
    color: var(--tracker-blue);
    cursor: grab;
}

.binder-clipboard-drag-handle:active {
    cursor: grabbing;
}

.binder-clipboard-action-menu {
    z-index: 5;
}

.binder-clipboard-action-menu-panel {
    min-width: 11rem;
}

.binder-clipboard-list {
    display: grid;
    gap: 0.65rem;
    min-width: 0;
}

.binder-clipboard-list-rows {
    display: grid;
    gap: 0.5rem;
    max-height: clamp(24rem, 52vh, 42rem);
    overflow: auto;
    padding-right: 0.25rem;
}

.binder-clipboard-list-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.65rem;
    align-items: center;
    min-width: 0;
    padding: 0.55rem;
    border: 1px solid rgba(32, 44, 68, 0.12);
    border-radius: 8px;
    background: #ffffff;
}

.binder-clipboard-list-card {
    display: grid;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}

.binder-clipboard-list-card span,
.binder-clipboard-list-card small {
    min-width: 0;
    overflow-wrap: anywhere;
}

.binder-clipboard-list-card span {
    font-weight: 900;
}

.binder-clipboard-list-card small {
    color: var(--tracker-muted);
    font-weight: 800;
}

.segmented-control {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    padding: 0.2rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.78);
}

.segmented-control-option {
    min-height: 2.1rem;
    padding: 0.25rem 0.75rem;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 800;
    cursor: pointer;
}

.segmented-control-option.is-active {
    background: var(--tracker-blue);
    color: #ffffff;
}

.binder-layout-status {
    min-height: 1.4rem;
    margin: 0 0 1rem;
    color: var(--tracker-muted);
    font-size: 0.9rem;
    font-weight: 700;
}

.binder-layout-status.is-success {
    color: var(--tracker-green);
}

.binder-layout-status.is-error {
    color: var(--tracker-red-dark);
}

.binder-page-list {
    display: grid;
    gap: clamp(0.75rem, 1vw, 1.25rem);
}

.binder-staging-section {
    display: grid;
    gap: 0.75rem;
    min-width: min(100%, 31rem);
    max-width: 100%;
    margin-top: 1.25rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.76);
    overflow: auto;
    resize: horizontal;
}

.binder-cards-panel {
    overflow: visible;
}

.binder-card-drop-zone {
    display: grid;
    gap: 0.75rem;
    margin-bottom: 1rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.76);
    transition: border-color 140ms ease, box-shadow 140ms ease, background-color 140ms ease;
}

.binder-card-drop-zone.is-active {
    border-color: var(--tracker-blue);
    background: rgba(45, 120, 255, 0.08);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.14);
}

.binder-card-copy-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(5rem, 100%), 1fr));
    gap: clamp(0.35rem, 0.7vw, 0.65rem);
    align-items: start;
}

.binder-card-collection-cell,
.binder-card-drop-placeholder {
    min-height: 0;
}

.binder-card-drop-placeholder {
    overflow: hidden;
}

.binder-card-drop-placeholder .binder-slot-empty {
    opacity: 0.72;
}

.binder-card-drop-copy {
    position: absolute;
    inset: auto 0.5rem 0.6rem;
    color: var(--tracker-muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-align: center;
    text-transform: uppercase;
}

.binder-card-copy {
    cursor: grab;
}

.binder-card-copy:active {
    cursor: grabbing;
}

.binder-page-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.85rem;
    margin-bottom: 1rem;
}

.binder-page-controls .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    min-width: 2.4rem;
    aspect-ratio: 1;
    padding: 0;
    font-size: 1.25rem;
    font-weight: 900;
    line-height: 1;
}

.binder-page-controls span {
    color: var(--tracker-muted);
    font-size: 0.9rem;
    font-weight: 800;
}

.binder-page-card {
    display: grid;
    gap: clamp(0.45rem, 0.8vw, 0.75rem);
    padding: clamp(0.55rem, 1vw, 1rem);
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: rgba(246, 248, 252, 0.7);
}

.binder-page-card[hidden] {
    display: none;
}

.binder-page-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.binder-page-header h3 {
    margin: 0;
    color: var(--tracker-ink);
    font-size: 1rem;
}

.binder-page-header h3 .binder-page-binder-name,
.binder-page-header h3 .binder-page-number {
    display: block;
}

.binder-page-header h3 .binder-page-binder-name {
    color: var(--tracker-red-dark);
    font-size: 1.08rem;
    overflow-wrap: anywhere;
}

.binder-page-header h3 .binder-page-number {
    margin-top: 0.15rem;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 800;
    text-transform: uppercase;
}

.binder-page-header span {
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 800;
    text-transform: uppercase;
}

.binder-grid {
    display: grid;
    grid-template-columns: repeat(var(--binder-grid-columns, 3), minmax(0, 1fr));
    gap: clamp(0.28rem, 0.65vw, 0.65rem);
}

.binder-staging-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(5.25rem, 100%), 1fr));
    gap: clamp(0.28rem, 0.65vw, 0.65rem);
}

.binder-slot-cell {
    position: relative;
    display: grid;
    align-content: center;
    min-width: 0;
    min-height: 0;
    padding: clamp(0.22rem, 0.55vw, 0.55rem);
    border: 1px dashed rgba(45, 120, 255, 0.32);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.86);
    transition: border-color 140ms ease, box-shadow 140ms ease, background-color 140ms ease;
}

.binder-staging-cell {
    min-height: 0;
}

.binder-slot-cell.is-active {
    border-color: var(--tracker-blue);
    background: rgba(45, 120, 255, 0.08);
    box-shadow: 0 0 0 3px rgba(45, 120, 255, 0.14);
}

.binder-slot-empty {
    display: block;
    width: 100%;
    aspect-ratio: 5 / 7;
    align-self: center;
    justify-self: center;
    border: 1px dashed rgba(32, 44, 68, 0.14);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.52);
}

.binder-slot-card {
    position: relative;
    display: block;
    min-width: 0;
    cursor: grab;
    user-select: none;
}

.binder-slot-card:active {
    cursor: grabbing;
}

.binder-slot-card.is-dragging {
    opacity: 0.45;
}

.binder-custom-slot-image {
    cursor: default;
}

.binder-custom-slot-image:active {
    cursor: default;
}

.binder-slot-page-actions {
    position: absolute;
    z-index: 2;
    top: 0.35rem;
    left: 0.35rem;
    display: flex;
    gap: 0.25rem;
}

.binder-slot-page-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: clamp(1.25rem, 18%, 1.65rem);
    height: clamp(1.25rem, 18%, 1.65rem);
    padding: 0;
    border: 1px solid rgba(32, 44, 68, 0.22);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: var(--tracker-ink);
    font-size: 0.92rem;
    font-weight: 900;
    line-height: 1;
    box-shadow: 0 0.25rem 0.75rem rgba(15, 23, 42, 0.14);
    cursor: pointer;
}

.binder-slot-page-action:hover:not(:disabled),
.binder-slot-page-action:focus-visible:not(:disabled) {
    border-color: var(--tracker-blue);
    color: var(--tracker-blue);
}

.binder-slot-page-action:disabled {
    opacity: 0.38;
    cursor: not-allowed;
}

.binder-slot-remove-form {
    position: absolute;
    z-index: 3;
    top: 0.35rem;
    right: 0.35rem;
    margin: 0;
    opacity: 0;
    transition: opacity 120ms ease;
}

.binder-slot-card:hover .binder-slot-remove-form,
.binder-slot-card:focus-within .binder-slot-remove-form {
    opacity: 1;
}

.binder-slot-remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: clamp(1.25rem, 18%, 1.65rem);
    height: clamp(1.25rem, 18%, 1.65rem);
    padding: 0;
    border: 1px solid rgba(189, 48, 68, 0.35);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.95);
    color: var(--tracker-red-dark);
    font-size: 0.75rem;
    font-weight: 900;
    line-height: 1;
    box-shadow: 0 0.25rem 0.75rem rgba(15, 23, 42, 0.14);
    cursor: pointer;
}

.binder-slot-remove:hover,
.binder-slot-remove:focus-visible {
    border-color: var(--tracker-red-dark);
    background: #fff4f5;
}

.binder-slot-image-link {
    display: block;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}

.binder-slot-image-frame {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    aspect-ratio: 5 / 7;
    margin: 0 auto;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 6px;
    background: var(--tracker-surface);
}

.binder-slot-image-frame img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.binder-custom-slot-image .binder-slot-image-frame img {
    object-fit: cover;
}

.binder-slot-unowned-label {
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: rgba(15, 23, 42, 0.38);
    color: #ffffff;
    font-size: clamp(0.72rem, 1.2vw, 1rem);
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
    pointer-events: none;
}

.binder-layout-panel[data-binder-layout-view="actual"] .binder-slot-card.is-unowned .binder-slot-image-link {
    opacity: 0.38;
    filter: grayscale(0.35);
}

.binder-layout-panel[data-binder-layout-view="actual"] .binder-slot-card.is-unowned .binder-slot-unowned-label {
    display: flex;
}

[data-binder-card-row][draggable="true"],
[data-binder-card-copy][draggable="true"] {
    cursor: grab;
}

[data-binder-search-card],
[data-binder-slot-card][draggable="true"],
[data-binder-card-row][draggable="true"],
[data-binder-card-copy][draggable="true"],
[data-deck-search-card],
[data-deck-drop-card="true"] {
    touch-action: none;
}

[data-binder-card-row].is-dragging,
[data-binder-card-row].is-touch-dragging,
[data-binder-card-copy].is-dragging,
[data-binder-card-copy].is-touch-dragging,
[data-binder-slot-card].is-touch-dragging,
[data-binder-search-card].is-touch-dragging {
    opacity: 0.55;
}

.binder-card-collection-cell .binder-slot-card.is-unowned .binder-slot-image-link {
    opacity: 0.38;
    filter: grayscale(0.35);
}

.binder-card-collection-cell .binder-slot-card.is-unowned .binder-slot-unowned-label {
    display: flex;
}

.binder-card-summary-details {
    margin-top: 1rem;
}

.binder-card-summary-details summary {
    cursor: pointer;
    color: var(--tracker-blue);
    font-weight: 900;
}

.binder-card-summary-details .table-responsive {
    margin-top: 0.85rem;
}

.binder-card-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 1rem;
}

.binder-card-pagination span {
    color: var(--tracker-muted);
    font-size: 0.9rem;
    font-weight: 800;
}

.compact-storage-form {
    margin-bottom: 1rem;
}

.storage-box-create-grid {
    display: grid;
    grid-template-columns: minmax(12rem, 0.9fr) minmax(14rem, 1fr) minmax(5rem, 0.35fr) minmax(14rem, 1fr) auto;
    gap: 0.85rem;
    align-items: end;
}

.storage-box-create-grid textarea {
    min-height: 2.45rem;
}

.storage-box-create-action {
    display: flex;
    align-items: end;
}

.storage-box-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.8fr);
    gap: 1rem;
    margin-top: 1.25rem;
}

.storage-box-detail-panel {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
}

.storage-box-settings-panel {
    grid-column: 1 / -1;
}

.storage-box-detail-panel h3 {
    margin: 0;
    color: var(--tracker-ink);
    font-size: 1.05rem;
}

.storage-box-settings-grid {
    display: grid;
    grid-template-columns: minmax(12rem, 0.9fr) minmax(14rem, 1fr) minmax(5rem, 0.35fr) minmax(14rem, 1fr);
    gap: 0.85rem;
}

.bulk-box-row-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.85rem;
}

.bulk-box-row-list span {
    padding: 0.35rem 0.55rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 800;
}

.bulk-box-label-page {
    max-width: 960px;
}

.bulk-box-print-sheet {
    display: flex;
    justify-content: center;
    padding: 1.5rem 0;
}

.bulk-box-print-label {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 12rem;
    gap: 1.25rem;
    width: min(100%, 42rem);
    min-height: 13.5rem;
    padding: 1.25rem;
    border: 2px solid var(--tracker-ink);
    border-radius: 8px;
    background: #ffffff;
    color: var(--tracker-ink);
}

.bulk-box-print-label-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.bulk-box-print-label h2 {
    margin: 0;
    font-size: clamp(1.8rem, 5vw, 3rem);
    line-height: 1;
    word-break: break-word;
}

.bulk-box-print-label p {
    margin: 0.65rem 0 0;
    color: var(--tracker-muted);
    font-weight: 800;
}

.bulk-box-print-rows {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.85rem;
}

.bulk-box-print-rows span {
    padding: 0.3rem 0.5rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 900;
}

.deck-print-label-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.85rem;
}

.deck-print-label-meta span {
    padding: 0.3rem 0.5rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 900;
}

.bulk-box-print-qr {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 0.55rem;
}

.bulk-box-print-qr img {
    width: 10.5rem;
    height: 10.5rem;
    object-fit: contain;
}

.bulk-box-print-qr span {
    max-width: 11rem;
    color: var(--tracker-muted);
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1.2;
    overflow-wrap: anywhere;
    text-align: center;
}

.public-decklist-page {
    max-width: 960px;
}

.public-decklist-format {
    margin: 0.35rem 0 0;
    color: var(--tracker-blue);
    font-weight: 900;
}

.public-decklist-metrics {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    align-self: center;
}

.public-decklist-metrics span {
    display: grid;
    min-width: 6rem;
    padding: 0.65rem 0.8rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-muted);
    font-size: 0.78rem;
    font-weight: 800;
    text-align: center;
}

.public-decklist-metrics strong {
    color: var(--tracker-ink);
    font-size: 1.3rem;
    line-height: 1;
}

.public-decklist-section + .public-decklist-section {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 2px solid var(--tracker-border);
}

.public-decklist-section .table {
    margin-bottom: 0;
}

.storage-box-add-card-form {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.storage-box-add-card-form .form-control {
    width: 4.75rem;
    min-width: 4.75rem;
}

.storage-box-add-card-form .form-select {
    width: 10rem;
    min-width: 10rem;
}

@media (max-width: 1100px) {
    .dashboard-bento-lead {
        grid-template-columns: 1fr;
    }

    .dashboard-command-card {
        min-height: 19rem;
    }

    .dashboard-launchpad {
        grid-template-rows: repeat(2, minmax(8rem, 1fr));
    }

    .dashboard-bento-work {
        grid-template-columns: 1fr;
        grid-template-areas: none;
    }

    .dashboard-bento-work > .dashboard-bento-card {
        grid-area: auto;
    }
}

@media (max-width: 900px) {

    .deck-workspace-grid,
    .deck-workspace-grid[data-workspace-split="left-three-quarter"],
    .deck-workspace-grid[data-workspace-split="right-three-quarter"] {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .deck-workspace-pane-left,
    .deck-workspace-pane-right {
        grid-column: 1 / -1;
        min-height: auto;
    }

    .deck-layout-panel,
    .deck-layout-panel[data-deck-panel-width="half"],
    .deck-layout-panel[data-deck-panel-width="wide"],
    .deck-layout-panel[data-deck-panel-width="full"],
    .binder-page-panel,
    .binder-page-panel[data-binder-panel-width="half"],
    .binder-page-panel[data-binder-panel-width="wide"],
    .binder-page-panel[data-binder-panel-width="full"] {
        grid-column: 1 / -1;
    }

    .binder-clipboard-workspace,
    .binder-clipboard-list-row {
        grid-template-columns: 1fr;
    }

    .binder-delete-section {
        align-items: stretch;
        flex-direction: column;
    }

    .binder-delete-form .btn {
        width: 100%;
    }

    .storage-box-create-grid,
    .storage-box-settings-grid,
    .storage-box-detail-grid {
        grid-template-columns: 1fr;
    }

    .storage-box-create-action {
        align-items: stretch;
    }

    .storage-box-create-action .btn {
        width: 100%;
    }

    .bulk-box-print-label {
        grid-template-columns: 1fr;
    }

    .public-decklist-metrics {
        width: 100%;
    }

    .public-decklist-metrics span {
        flex: 1 1 7rem;
    }
}

@media print {
    body {
        background: #ffffff !important;
    }

    nav,
    .print-controls,
    .navbar,
    .sidebar,
    .tracker-sidebar,
    .sidebar-toggle,
    .sidebar-scrim {
        display: none !important;
    }

    .bulk-box-label-page,
    .tracker-shell {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .bulk-box-print-sheet {
        display: block;
        padding: 0;
    }

    .bulk-box-print-label {
        grid-template-columns: minmax(0, 1fr) 2in !important;
        align-items: center;
        gap: 0.2in;
        width: 100%;
        max-width: 6.5in;
        min-height: 2.5in;
        margin: 0;
        break-inside: avoid;
        box-shadow: none;
    }
}

.binder-slot-image-placeholder {
    padding: 0.35rem;
    color: var(--tracker-muted);
    font-size: 0.66rem;
    font-weight: 800;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
}

.ownership-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    min-width: 10rem;
}

.ownership-badge {
    display: inline-flex;
    align-items: center;
    min-height: 1.55rem;
    padding: 0.18rem 0.5rem;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 0.76rem;
    font-weight: 800;
    line-height: 1.15;
    white-space: normal;
}

.ownership-key {
    display: grid;
    grid-template-columns: auto minmax(10rem, 1fr);
    gap: 0.45rem 0.75rem;
    align-items: center;
    margin-bottom: 1rem;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-muted);
    font-size: 0.9rem;
}

.ownership-key .ownership-badge {
    justify-self: start;
}

.ownership-badge.available {
    border-color: rgba(75, 226, 181, 0.7);
    background: rgba(75, 226, 181, 0.2);
    color: #116b58;
}

.ownership-badge.in-decks {
    border-color: rgba(45, 120, 255, 0.42);
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
}

.ownership-badge.total {
    border-color: rgba(106, 58, 255, 0.42);
    background: rgba(106, 58, 255, 0.12);
    color: var(--tracker-purple);
}

.ownership-badge.needed {
    border-color: rgba(106, 58, 255, 0.42);
    background: rgba(106, 58, 255, 0.12);
    color: var(--tracker-purple);
}

.ownership-badge.missing {
    border-color: rgba(255, 209, 102, 0.7);
    background: rgba(255, 209, 102, 0.22);
    color: #6c4a00;
}

.card-database-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(15rem, 18rem);
    gap: 1.5rem;
    align-items: start;
}

.card-database-results {
    min-width: 0;
}

.card-database-results.is-loading {
    opacity: 0.72;
    pointer-events: none;
}

.evodecks-ad-slot {
    display: block;
    width: 100%;
    min-height: 90px;
    margin: 1rem 0;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #f7f9fc;
}

.evodecks-ad-label {
    display: block;
    padding: 0.45rem 0.75rem 0;
    color: var(--tracker-muted);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.2;
    text-transform: uppercase;
}

.evodecks-ad-slot .adsbygoogle {
    min-height: 90px;
}

.deck-header-ad {
    margin-top: -0.25rem;
    margin-bottom: 1rem;
}

.card-search-bottom-ad {
    min-height: 120px;
    margin-top: 1rem;
    margin-bottom: 0;
}

.card-search-bottom-ad .adsbygoogle {
    min-height: 120px;
}

.public-footer-ad {
    max-width: min(72rem, calc(100% - 2rem));
    min-height: 90px;
    margin: 1rem auto 0;
    border-color: rgba(0, 212, 255, 0.24);
    background: rgba(255, 255, 255, 0.96);
}

.deck-drop-sidebar {
    position: sticky;
    top: 1rem;
    z-index: 15;
    min-width: 0;
}

.deck-drop-sidebar-inner {
    display: grid;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid rgba(0, 212, 255, 0.28);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 12px 30px var(--tracker-shadow);
}

.deck-drop-sidebar h2 {
    margin: 0 0 0.35rem;
    font-size: 1.1rem;
}

.deck-drop-sidebar p {
    margin: 0;
    color: var(--tracker-muted);
    font-size: 0.9rem;
    line-height: 1.4;
}

.deck-drop-sidebar [data-drop-target-panel] {
    display: grid;
    gap: 0.35rem;
}

.deck-drop-sidebar [data-drop-target-panel][hidden] {
    display: none;
}

.deck-drop-zone {
    display: grid;
    place-items: center;
    gap: 0.4rem;
    min-height: 12rem;
    padding: 1rem;
    border: 2px dashed rgba(45, 120, 255, 0.38);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(246, 248, 252, 0.88) 0%, #ffffff 100%);
    color: var(--tracker-muted);
    text-align: center;
    transition: border-color 140ms ease, background-color 140ms ease, box-shadow 140ms ease;
}

.deck-drop-zone strong {
    color: var(--tracker-ink);
    font-size: 1rem;
}

.deck-drop-zone span {
    font-size: 0.9rem;
    line-height: 1.35;
}

.deck-drop-zone.is-active {
    border-color: var(--tracker-blue);
    background: rgba(45, 120, 255, 0.1);
    box-shadow: 0 0 0 4px rgba(45, 120, 255, 0.12);
}

.deck-drop-card-preview {
    display: grid;
    gap: 0.25rem;
    padding: 0.8rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.deck-drop-card-preview span,
.deck-drop-card-preview small {
    color: var(--tracker-muted);
    font-size: 0.78rem;
    font-weight: 700;
}

.deck-drop-card-preview strong {
    color: var(--tracker-ink);
    line-height: 1.2;
}

.deck-drop-status {
    min-height: 1.25rem;
    color: var(--tracker-muted);
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.35;
}

.deck-drop-status.is-success {
    color: #116b58;
}

.deck-drop-status.is-error {
    color: #bd3044;
}

.deck-drop-card-row[data-deck-drop-card="true"] {
    cursor: grab;
}

.deck-drop-card-row[data-deck-drop-card="true"]:active {
    cursor: grabbing;
}

.deck-drop-card-row.is-dragging,
.deck-drop-card-row.is-touch-dragging {
    opacity: 0.55;
}

.deck-drag-handle {
    display: inline-flex;
    align-items: center;
    min-height: 1.85rem;
    padding: 0.25rem 0.55rem;
    border: 1px solid rgba(45, 120, 255, 0.35);
    border-radius: 999px;
    background: rgba(45, 120, 255, 0.1);
    color: var(--tracker-blue);
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1;
    user-select: none;
}

.duplicate-groups {
    display: grid;
    gap: 1rem;
}

.duplicate-group {
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.duplicate-group-header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    margin-bottom: 0.75rem;
}

.duplicate-group-header h3 {
    margin: 0;
    font-size: 1rem;
}

.tracker-form {
    display: grid;
    gap: 0.9rem;
}

.form-error {
    color: #bd3044;
    font-size: 0.9rem;
}

.helper-copy {
    margin: -0.35rem 0 0.25rem;
    color: var(--tracker-muted);
    font-size: 0.9rem;
}

.status-pill {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.7rem;
    border-radius: 999px;
    font-size: 0.85rem;
    font-weight: 700;
}

.status-pill.complete {
    background: var(--tracker-success);
    color: var(--tracker-navy);
}

.status-pill.incomplete {
    background: var(--tracker-warning);
    color: var(--tracker-navy);
}

.status-pill.pending {
    background: #ffffff;
    color: var(--tracker-blue);
    border: 1px solid rgba(45, 120, 255, 0.28);
}

.event-list {
    display: grid;
    gap: 1rem;
}

.event-card {
    display: grid;
    grid-template-columns: minmax(8rem, 0.28fr) minmax(0, 1fr);
    gap: 1rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.event-date-block {
    display: grid;
    align-content: start;
    gap: 0.25rem;
    padding: 0.85rem;
    border-radius: 8px;
    background: #ffffff;
    color: var(--tracker-ink);
}

.event-date-block strong {
    font-size: 1rem;
    line-height: 1.15;
}

.event-date-block span {
    color: var(--tracker-muted);
    font-weight: 700;
}

.event-card-body {
    display: grid;
    gap: 0.75rem;
    min-width: 0;
}

.event-title-line {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.event-title-line h2 {
    margin: 0 0 0.2rem;
    font-size: 1.15rem;
}

.event-title-line p,
.event-location,
.event-description {
    margin: 0;
    color: var(--tracker-muted);
}

.event-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.event-meta-row span {
    display: inline-flex;
    align-items: center;
    min-height: 1.55rem;
    padding: 0.18rem 0.55rem;
    border: 1px solid rgba(45, 120, 255, 0.28);
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-blue);
    font-size: 0.8rem;
    font-weight: 800;
}

.community-card-grid,
.sale-listing-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 1rem;
}

.community-card,
.sale-listing-card {
    display: grid;
    gap: 0.9rem;
    align-content: space-between;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.community-card h2,
.sale-listing-card h3 {
    margin: 0.45rem 0 0.25rem;
    font-size: 1.05rem;
}

.community-card p,
.sale-listing-body p {
    margin: 0;
    color: var(--tracker-muted);
}

.sale-listing-card {
    grid-template-columns: 84px minmax(0, 1fr);
    align-content: start;
}

.sale-listing-thumb-frame {
    display: grid;
    place-items: center;
    width: 84px;
    aspect-ratio: 0.72;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    color: var(--tracker-muted);
    font-size: 0.75rem;
    font-weight: 800;
    text-align: center;
}

.sale-listing-thumb-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sale-listing-body {
    display: grid;
    gap: 0.45rem;
    min-width: 0;
}

.sale-listing-body strong {
    color: var(--tracker-ink);
    font-size: 1rem;
}

.store-chat-layout,
.store-chat-messages,
.chat-message,
.chat-compose-form {
    display: grid;
    gap: 1rem;
}

.store-chat-messages {
    max-height: 36rem;
    overflow: auto;
    padding-right: 0.25rem;
}

.chat-message {
    gap: 0.45rem;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.chat-message > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0.5rem;
    color: var(--tracker-muted);
    font-size: 0.85rem;
}

.chat-message p {
    margin: 0;
    color: var(--tracker-ink);
    white-space: pre-wrap;
}

.seller-card-search-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem;
}

.seller-listing-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.seller-listing-wide {
    grid-column: 1 / -1;
}

.seller-listing-table {
    display: grid;
    gap: 1rem;
}

.seller-listing-row {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: start;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.seller-listing-edit-form {
    display: grid;
    grid-template-columns: minmax(160px, 1.35fr) repeat(3, minmax(92px, 0.75fr)) minmax(150px, 1fr);
    gap: 0.75rem;
    align-items: start;
}

.seller-listing-edit-form textarea,
.seller-listing-edit-form .form-check {
    grid-column: span 2;
}

.seller-listing-delete-form {
    display: flex;
}

.deck-summary {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1.5rem;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.deck-summary > div:first-child {
    flex: 1 1 18rem;
    min-width: 0;
}

.summary-stats {
    flex: 1 1 32rem;
    display: grid;
    grid-template-columns: repeat(4, minmax(110px, 1fr));
    gap: 1rem;
}

.summary-stats strong {
    display: block;
    font-size: 1.35rem;
}

.deck-build-progress {
    flex: 1 1 100%;
}

.deck-build-progress .deck-progress-completion {
    grid-template-columns: minmax(10rem, 1fr) 4rem;
}

.deck-start-guide .summary-stats,
.deck-start-guide .deck-build-progress {
    margin-bottom: 1rem;
}

.deck-start-guide ol {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.deck-start-guide li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.55rem;
    align-items: center;
    min-height: 3.25rem;
    padding: 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-muted);
}

.deck-start-guide li > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.8rem;
    height: 1.8rem;
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 900;
}

.deck-start-guide strong {
    min-width: 0;
    color: inherit;
    font-size: 0.88rem;
    overflow-wrap: anywhere;
}

.deck-start-guide li.is-current {
    border-color: rgba(45, 120, 255, 0.45);
    background: rgba(45, 120, 255, 0.08);
    color: var(--tracker-blue);
}

.deck-start-guide li.is-current > span {
    background: var(--tracker-blue);
    color: #ffffff;
}

.deck-start-guide li.is-complete {
    border-color: rgba(75, 226, 181, 0.55);
    background: rgba(75, 226, 181, 0.12);
    color: #12715c;
}

.deck-start-guide li.is-complete > span {
    background: var(--tracker-success);
    color: var(--tracker-navy);
}

.import-example {
    display: grid;
    gap: 0.65rem;
    margin-top: 0.85rem;
    padding: 0.85rem;
    border: 1px solid rgba(45, 120, 255, 0.22);
    border-radius: 8px;
    background: rgba(45, 120, 255, 0.06);
}

.import-example strong {
    color: var(--tracker-ink);
    font-size: 0.9rem;
}

.import-example pre {
    max-height: 16rem;
    margin: 0;
    padding: 0.85rem;
    overflow: auto;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    color: var(--tracker-ink);
    font-size: 0.86rem;
    white-space: pre-wrap;
}

.import-preview {
    display: grid;
    gap: 1rem;
    margin-top: 1.25rem;
}

.import-section-counts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.import-section-counts span {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.3rem 0.7rem;
    border: 1px solid rgba(45, 120, 255, 0.28);
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-blue);
    font-size: 0.86rem;
    font-weight: 900;
}

.import-preview-list {
    display: grid;
    gap: 0.5rem;
}

.import-preview-list h3 {
    margin: 0;
    font-size: 1rem;
}

.import-preview-list ul {
    display: grid;
    gap: 0.35rem;
    margin: 0;
    padding-left: 1.2rem;
}

.deck-create-import-panel {
    display: grid;
    gap: 0.9rem;
    margin-top: 0.35rem;
    padding: 1.1rem;
    border: 1px solid rgba(45, 120, 255, 0.2);
    border-radius: 16px;
    background: rgba(245, 249, 255, 0.82);
}

.deck-create-import-panel .panel-header {
    margin-bottom: 0;
}

.deck-create-import-panel .import-example {
    margin-top: 0;
}

.deck-create-import-panel .import-example summary {
    cursor: pointer;
    color: var(--tracker-navy);
    font-weight: 900;
}

.deck-import-verify-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.deck-import-preview-region {
    min-height: 2rem;
    scroll-margin-top: 1rem;
}

.deck-import-preview-region .import-preview {
    margin-top: 0;
}

.deck-import-preview-region.is-stale .import-preview {
    opacity: 0.58;
}

.deck-import-preview-region.is-stale::before {
    display: block;
    margin-bottom: 0.65rem;
    color: #8a5800;
    font-weight: 900;
    content: "Deck list changed — verify again.";
}

[data-deck-import-verify-status].is-error {
    color: #a1252f;
}

[data-deck-import-verify-status].is-success {
    color: #176b45;
}

[data-deck-import-verify-status].is-stale {
    color: #8a5800;
}

.metadata-example-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.metadata-example-grid h3 {
    font-size: 1rem;
    margin: 0 0 0.5rem;
}

.metadata-example-list {
    margin: 0;
    padding-left: 1.1rem;
    color: var(--tracker-muted);
    font-size: 0.9rem;
}

.stat-label {
    display: block;
    color: var(--tracker-muted);
    font-size: 0.85rem;
    margin-bottom: 0.2rem;
}

.card-name {
    font-weight: 600;
}

.card-detail-hero {
    display: grid;
    grid-template-columns: minmax(180px, 320px) minmax(0, 1fr);
    gap: 2rem;
    align-items: start;
}

.card-detail-image-frame {
    width: 100%;
    max-width: 320px;
    aspect-ratio: 5 / 7;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.card-detail-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.card-detail-image-placeholder {
    color: var(--tracker-muted);
    font-weight: 800;
    text-transform: uppercase;
}

.card-detail-summary {
    display: grid;
    gap: 1rem;
}

.card-detail-summary h1 {
    margin: 0;
}

.card-detail-subtitle {
    margin: -0.55rem 0 0;
    color: var(--tracker-muted);
    font-weight: 700;
}

.card-price-panel {
    display: grid;
    gap: 0.85rem;
    padding: 1rem;
    border: 1px solid rgba(45, 120, 255, 0.24);
    border-radius: 10px;
    background: linear-gradient(145deg, rgba(45, 120, 255, 0.07), rgba(255, 255, 255, 0.92));
}

.card-price-heading,
.card-price-source-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.card-price-heading .eyebrow,
.card-price-heading h2,
.card-price-source-heading h3,
.card-price-status,
.card-price-disclaimer {
    margin: 0;
}

.card-price-heading h2 {
    font-size: 1.1rem;
}

.card-price-refresh-label,
.card-price-source-heading span {
    color: var(--tracker-muted);
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.card-price-status,
.card-price-disclaimer {
    color: var(--tracker-muted);
    font-size: 0.82rem;
    line-height: 1.45;
}

.card-price-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.card-price-source {
    display: grid;
    gap: 0.7rem;
    min-width: 0;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.card-price-source-heading h3 {
    font-size: 0.96rem;
}

.card-price-source dl {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.35rem 0.7rem;
    margin: 0;
}

.card-price-source dt {
    color: var(--tracker-muted);
    font-size: 0.82rem;
}

.card-price-source dd {
    margin: 0;
    color: var(--tracker-ink);
    font-weight: 900;
}

.card-price-source a {
    width: fit-content;
    font-size: 0.82rem;
    font-weight: 800;
}

.card-price-empty {
    padding: 0.7rem;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.75);
    color: var(--tracker-muted);
    font-size: 0.85rem;
}

.card-collection-locations {
    display: grid;
    gap: 0.75rem;
    padding-top: 0.9rem;
    border-top: 1px solid var(--tracker-border);
}

.card-collection-location-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.card-collection-location-heading h2 {
    margin: 0;
    font-size: 1.05rem;
}

.card-collection-location-heading span {
    color: var(--tracker-muted);
    font-size: 0.88rem;
    font-weight: 800;
}

.card-collection-location-table {
    margin-bottom: 0;
}

.card-detail-search {
    margin-bottom: 0;
}

.card-detail-embedded {
    display: grid;
    gap: 1rem;
    margin-top: 0.35rem;
    padding-top: 1rem;
    border-top: 1px solid var(--tracker-border);
}

.card-detail-embedded h2 {
    margin: 0;
    font-size: 1.15rem;
}

.error-panel {
    max-width: 48rem;
    margin-inline: auto;
}

.card-detail-section-grid {
    display: grid;
    grid-template-columns: minmax(16rem, 0.9fr) minmax(0, 1.1fr);
    gap: 1.5rem;
    align-items: start;
}

.card-format-legality-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
}

.card-format-legality-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.65rem 0.85rem;
    align-items: start;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.card-format-legality-row.is-legal {
    border-color: rgba(31, 184, 138, 0.42);
}

.card-format-legality-row.is-illegal {
    border-color: rgba(245, 158, 11, 0.5);
}

.card-format-legality-main {
    min-width: 0;
}

.card-format-legality-main h3 {
    margin: 0 0 0.25rem;
    font-size: 0.98rem;
}

.card-format-legality-main p,
.card-format-legality-explanation {
    margin: 0;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    line-height: 1.35;
}

.card-format-legality-status {
    max-width: 11rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.card-format-legality-explanation {
    grid-column: 1 / -1;
}

.card-information-block,
.card-text-detail-block {
    min-width: 0;
}

.card-information-block h3,
.card-text-detail-block h3 {
    margin: 0 0 0.85rem;
    font-size: 1rem;
}

.card-text-detail-block {
    display: grid;
    gap: 0.75rem;
}

.card-add-to-deck-form {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
}

.card-add-to-deck-form .form-select {
    flex: 1 1 16rem;
    min-width: 0;
    max-width: 30rem;
}

.card-add-new-deck-field {
    display: none;
    flex: 1 1 18rem;
    min-width: min(100%, 18rem);
}

.card-add-new-deck-field.is-visible {
    display: block;
}

.equivalent-printings-panel {
    overflow: hidden;
}

.equivalent-printing-controls {
    display: inline-flex;
    gap: 0.4rem;
    align-items: center;
}

.equivalent-printing-carousel {
    min-width: 0;
}

.equivalent-printing-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 2rem) / 3);
    gap: 1rem;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding: 0;
    padding-bottom: 0.35rem;
}

.equivalent-printing-card {
    min-width: 0;
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 0.85rem;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    scroll-snap-align: start;
}

.equivalent-printing-image-frame {
    aspect-ratio: 5 / 7;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    text-decoration: none;
}

.equivalent-printing-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.equivalent-printing-image-placeholder {
    padding: 0.75rem;
    color: var(--tracker-muted);
    font-weight: 800;
    text-align: center;
    text-transform: uppercase;
}

.equivalent-printing-meta {
    display: grid;
    gap: 0.45rem;
}

.equivalent-printing-meta p {
    margin: 0;
    color: var(--tracker-muted);
    font-size: 0.9rem;
    font-weight: 700;
}

.detail-list {
    display: grid;
    grid-template-columns: minmax(8rem, auto) minmax(0, 1fr);
    gap: 0.55rem 1rem;
    margin: 0;
}

.detail-list dt {
    color: var(--tracker-muted);
    font-weight: 700;
}

.detail-list dd {
    margin: 0;
}

.trainer-type-badge {
    display: inline-flex;
    align-items: center;
    min-height: 1.55rem;
    padding: 0.18rem 0.55rem;
    border: 1px solid rgba(45, 120, 255, 0.32);
    border-radius: 999px;
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
    font-size: 0.8rem;
    font-weight: 800;
}

.moves-abilities-text {
    margin: 0;
    padding: 0.9rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-ink);
    font-size: 0.95rem;
    line-height: 1.45;
    white-space: pre-line;
}

.set-management-shell {
    max-width: 1440px;
}

.set-management-hero h1 {
    margin: 0 0 0.35rem;
}

.set-management-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.set-management-summary span {
    display: inline-flex;
    align-items: center;
    min-height: 1.8rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: var(--tracker-surface);
    color: var(--tracker-red-dark);
    font-weight: 700;
}

.set-management-summary strong {
    margin-right: 0.25rem;
}

.set-summary-note {
    white-space: normal;
}

.set-details-form {
    align-items: start;
}

.set-details-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(8rem, 0.35fr) minmax(12rem, 0.65fr);
    gap: 0.9rem;
}

.set-format-legality-field {
    grid-column: 1 / -1;
}

.set-format-legality-field textarea {
    min-height: 6rem;
}

.set-name-form {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
}

.set-name-field {
    min-width: 0;
}

.set-management-tools {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr);
    gap: 1.5rem;
    align-items: stretch;
    margin-bottom: 1.5rem;
}

.set-management-tool {
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
}

.set-management-tool form {
    flex: 1;
}

.set-management-tool textarea {
    min-height: 9rem;
}

.set-regulation-form {
    align-content: start;
}

.set-card-table-wrap {
    max-height: 38rem;
    overflow: auto;
}

.set-card-table {
    min-width: 980px;
}

.set-card-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    border-bottom: 2px solid var(--tracker-border);
    background: var(--tracker-surface);
    color: var(--tracker-red-dark);
}

.set-card-table td:first-child {
    min-width: 14rem;
}

.set-card-table .ownership-badges {
    min-width: 18rem;
}

.set-gallery-panel .set-card-gallery {
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}

.set-gallery-tile {
    align-content: start;
    gap: 0.75rem;
}

.set-gallery-summary {
    display: grid;
    gap: 0.55rem;
}

.set-gallery-summary h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.25;
}

.set-card-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.set-card-facts span {
    display: inline-flex;
    align-items: center;
    min-height: 1.45rem;
    padding: 0.18rem 0.45rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-muted);
    font-size: 0.76rem;
    font-weight: 700;
}

.set-gallery-card-form {
    gap: 0.7rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--tracker-border);
}

.set-gallery-editor {
    padding: 0.55rem 0.65rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.set-gallery-editor summary {
    cursor: pointer;
    color: var(--tracker-red-dark);
    font-weight: 800;
}

.set-gallery-editor[open] summary {
    margin-bottom: 0.65rem;
}

.set-gallery-editor .form-label {
    margin-bottom: 0.2rem;
    color: var(--tracker-muted);
    font-size: 0.78rem;
    font-weight: 700;
}

.set-gallery-editor .available-copy-control {
    grid-template-columns: 2rem minmax(0, 1fr) 2rem;
}

.set-gallery-photo-field {
    margin-top: 0.7rem;
}

.set-card-moves-field {
    display: grid;
    gap: 0.35rem;
    margin-top: 0.7rem;
}

.set-card-moves-field textarea {
    min-height: 7rem;
    line-height: 1.35;
}

.set-gallery-editor .form-check {
    margin-top: 0.7rem;
}

.set-gallery-editor-actions {
    margin-top: 0.75rem;
}

.set-card-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.set-card-tile {
    display: grid;
    gap: 0.9rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: linear-gradient(180deg, var(--tracker-surface) 0%, #ffffff 100%);
}

.set-card-image-frame {
    aspect-ratio: 5 / 7;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

.set-card-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.set-card-image-placeholder {
    padding: 1rem;
    text-align: center;
    color: var(--tracker-muted);
    font-weight: 600;
}

.set-card-meta h3 {
    margin: 0 0 0.3rem;
    font-size: 1rem;
}

.set-card-meta p {
    margin: 0;
    color: var(--tracker-muted);
    font-size: 0.9rem;
}

.set-card-meta {
    display: grid;
    gap: 0.75rem;
}

.set-card-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.set-card-field-grid .form-label {
    margin-bottom: 0.25rem;
}

.form-shell {
    max-width: 760px;
}

.deck-form-shell {
    max-width: 980px;
}

.binder-shell {
    max-width: none;
}

@media (max-width: 768px) {
    :root {
        --tracker-sidebar-width: min(20rem, calc(100vw - 2.75rem));
        --tracker-sidebar-collapsed-offset: var(--tracker-sidebar-gutter);
        --tracker-sidebar-gutter: 1rem;
    }

    .tracker-shell,
    body.sidebar-collapsed .tracker-shell {
        margin-left: var(--tracker-sidebar-gutter);
        margin-right: var(--tracker-sidebar-gutter);
        padding-top: 1rem;
    }

    .binder-index-hero,
    .binder-index-toolbar {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .binder-index-hero-actions,
    .binder-index-view-toggle {
        justify-content: flex-start;
    }

    .binder-index-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .binder-index-stat-copy {
        grid-column: 1 / -1;
    }

    .binder-workspace-hero {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .binder-workspace-nav {
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 0.2rem;
        scrollbar-width: thin;
    }

    .binder-workspace-nav a {
        flex: 0 0 auto;
    }

    .login-page .tracker-shell,
    .printable-checklist-page .tracker-shell {
        margin-left: auto;
        margin-right: auto;
    }

    .site-footer,
    body.sidebar-collapsed .site-footer {
        margin-left: 0;
    }

    .login-shell {
        grid-template-columns: 1fr;
        gap: 2rem;
        min-height: auto;
    }

    .login-brand-story {
        gap: 1.5rem;
    }

    .login-brand-story h1 {
        font-size: clamp(2.4rem, 14vw, 4rem);
    }

    .panel-header,
    .deck-workspace-pane-header,
    .deck-summary {
        flex-direction: column;
    }

    .deck-layout-panel {
        padding-left: 1.5rem;
    }

    .deck-panel-drag-handle {
        position: static;
        width: 100%;
        height: 2.35rem;
        margin-bottom: 0.9rem;
    }

    .deck-search-results {
        grid-template-columns: 1fr;
    }

    .deck-search-card {
        grid-template-columns: 3.6rem minmax(0, 1fr);
    }

    .deck-search-card-image {
        width: 3.6rem;
        min-height: 5rem;
    }

    .deck-list-card-row {
        grid-template-columns: 3.25rem minmax(0, 1fr);
        align-items: center;
    }

    [data-inline-edit-active="true"] .deck-list-card-row {
        grid-template-columns: 3.25rem minmax(0, 1fr);
    }

    .deck-list-card-main,
    .deck-list-card-counts,
    .deck-list-card-actions {
        grid-column: 1 / -1;
    }

    .deck-list-card-counts {
        grid-template-columns: repeat(auto-fit, minmax(5.65rem, 1fr));
    }

    [data-inline-edit-active="true"] .deck-list-card-counts {
        grid-template-columns: repeat(auto-fit, minmax(6.5rem, 1fr));
    }

    .deck-collection-location-heading {
        flex-direction: column;
    }

    .deck-collection-location-row {
        grid-template-columns: 1fr;
    }

    .deck-collection-location-row .btn {
        width: 100%;
    }

    [data-active-deck-art-layout="free"] .deck-list-art-card {
        width: 7.5rem;
    }

    .tracker-grid {
        grid-template-columns: 1fr;
    }

    .binder-panel-layout-controls {
        align-items: stretch;
        flex-direction: column;
    }

    .binder-panel-customize {
        justify-items: stretch;
    }

    .binder-panel-customize > summary {
        justify-content: center;
    }

    .binder-panel-drag-handle,
    .binder-panel-width-options {
        width: 100%;
    }

    .binder-panel-width-options button {
        flex: 1 1 5rem;
    }

    .dashboard-status-grid,
    .snapshot-comparison-grid,
    .format-rules-grid,
    .format-guide-grid,
    .card-database-layout,
    .event-card,
    .event-title-line,
    .event-form-grid,
    .profile-store-grid,
    .sale-listing-card,
    .seller-card-search-row,
    .seller-listing-grid,
    .seller-listing-row,
    .seller-listing-edit-form,
    .format-picker-form,
    .format-summary-strip,
    .format-detail-layout,
    .format-rule-row,
    .format-admin-field-grid,
    .format-toggle-row,
    .format-ban-add-form,
    .format-ban-chip,
    .card-detail-hero,
    .card-detail-section-grid,
    .card-price-grid,
    .binder-tile-settings,
    .binder-layout-fields,
    .binder-custom-image-grid,
    .set-details-grid,
    .set-management-tools,
    .metadata-example-grid {
        grid-template-columns: 1fr;
    }

    .binder-custom-image-placement {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .card-art-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.75rem;
    }

    .binder-form-accordion summary {
        align-items: flex-start;
    }

    .binder-form-summary-meta {
        justify-content: flex-start;
        margin-right: 0;
    }

    .format-focus-header {
        flex-direction: column;
    }

    .format-side-panel {
        padding-left: 0;
        padding-top: 0.9rem;
        border-left: 0;
        border-top: 1px solid var(--tracker-border);
    }

    .set-format-legality-field {
        grid-column: auto;
    }

    .set-name-form {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .tracker-panel,
    .tracker-panel[data-width="narrow"],
    .tracker-panel[data-width="medium"],
    .tracker-panel[data-width="wide"],
    .tracker-panel[data-width="full"] {
        grid-column: 1 / -1;
    }

    .summary-stats {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .deck-start-guide ol {
        grid-template-columns: 1fr;
    }

    .ownership-key {
        grid-template-columns: 1fr;
    }

    .profile-store-wide,
    .event-form-wide,
    .seller-listing-wide,
    .seller-listing-edit-form textarea,
    .seller-listing-edit-form .form-check {
        grid-column: auto;
    }

    .deck-drop-sidebar {
        position: static;
        order: -1;
    }

    .binder-grid {
        grid-template-columns: repeat(var(--binder-grid-columns, 3), minmax(4.75rem, 1fr));
        gap: 0.45rem;
    }

    .binder-staging-grid {
        grid-template-columns: repeat(3, minmax(4.75rem, 1fr));
        gap: 0.45rem;
    }

    .binder-card-copy-grid {
        grid-template-columns: repeat(auto-fill, minmax(4.75rem, 1fr));
        gap: 0.45rem;
    }

    .binder-slot-cell {
        min-height: 0;
        padding: 0.35rem;
    }

    .equivalent-printing-track {
        grid-auto-columns: calc((100% - 1rem) / 2);
    }

    .pagination-bar {
        flex-direction: column;
        align-items: stretch;
    }

    .set-card-field-grid {
        grid-template-columns: 1fr;
    }

}

@media (max-width: 576px) {
    body:not(.login-page):not(.printable-checklist-page) .tracker-shell {
        padding: 4rem 0 2rem;
    }

    .login-page .tracker-shell,
    .printable-checklist-page .tracker-shell {
        padding: 1rem 0 2rem;
    }

    .tracker-hero,
    .tracker-panel {
        padding: 1.25rem;
    }

    .binder-index-hero,
    .binder-workspace-hero {
        padding: 1.25rem;
        border-radius: 16px;
    }

    .binder-index-summary,
    .binder-workspace-hero {
        grid-template-columns: 1fr;
    }

    .binder-index-stat-copy {
        grid-column: auto;
    }

    .binder-workspace-cover {
        width: 4.75rem;
    }

    .binder-workspace-nav {
        grid-column: auto;
    }

    .binder-workspace-stats {
        display: grid;
        grid-template-columns: 1fr;
    }

    .binder-workspace-stats > span {
        justify-content: center;
    }

    .search-row {
        align-items: stretch;
    }

    .deck-panel-layout-controls,
    .deck-panel-layout-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .deck-panel-width-options button {
        width: 100%;
    }

    .card-art-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .search-row .form-control,
    .search-row .form-select,
    .search-row .card-search-suggest-combobox,
    .search-row .set-filter-combobox,
    .format-picker-form .form-select,
    .format-ban-add-form .form-select,
    .card-add-to-deck-form .form-select {
        flex-basis: 100%;
        max-width: none;
    }

    .equivalent-printing-track {
        grid-auto-columns: 100%;
    }

    .binder-page-card {
        overflow-x: auto;
    }

    .binder-grid {
        grid-template-columns: repeat(var(--binder-grid-columns, 3), minmax(3.9rem, 1fr));
    }

    .binder-staging-grid {
        grid-template-columns: repeat(2, minmax(3.9rem, 1fr));
    }

    .binder-card-copy-grid {
        grid-template-columns: repeat(auto-fill, minmax(3.9rem, 1fr));
    }

    .binder-slot-cell {
        min-height: 0;
    }

    .form-actions .btn,
    .search-row .btn,
    .format-picker-form .btn,
    .format-ban-add-form .btn,
    .format-ban-chip .btn,
    .card-add-to-deck-form .btn,
    .action-row:not(td) .btn {
        width: 100%;
    }

}

.printable-checklist-page {
    background: #f4f7ff;
}

.printable-checklist-shell {
    max-width: 1100px;
}

.printable-checklist-hero h1 {
    margin: 0 0 0.35rem;
}

.printable-checklist-panel {
    padding: 0;
    overflow: hidden;
}

.printable-checklist-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
    gap: 0.65rem;
    padding: 1rem;
}

.printable-checklist-card {
    display: grid;
    grid-template-columns: 2.4rem minmax(0, 1fr);
    gap: 0.55rem;
    align-items: center;
    min-width: 0;
    padding: 0.5rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    break-inside: avoid;
}

.printable-checklist-thumb-frame {
    width: 2.4rem;
    aspect-ratio: 5 / 7;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 5px;
    background: #ffffff;
}

.printable-checklist-thumb {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.printable-checklist-thumb-placeholder {
    padding: 0.12rem;
    color: var(--tracker-muted);
    font-size: 0.48rem;
    font-weight: 800;
    line-height: 1.05;
    text-align: center;
    text-transform: uppercase;
}

.printable-checklist-card-copy {
    display: grid;
    gap: 0.1rem;
    min-width: 0;
}

.printable-checklist-number {
    color: var(--tracker-muted);
    font-size: 0.75rem;
    font-weight: 800;
    line-height: 1.1;
}

.printable-checklist-name {
    color: var(--tracker-ink);
    font-size: 0.86rem;
    font-weight: 800;
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.printable-checklist-foil {
    color: var(--tracker-muted);
    font-size: 0.68rem;
    font-weight: 750;
    line-height: 1.08;
    overflow-wrap: anywhere;
}

.feedback-form {
    max-width: none;
}

.feedback-honeypot {
    position: absolute;
    left: -10000px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.feedback-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.feedback-form-wide {
    grid-column: 1 / -1;
}

.feedback-filter-form {
    display: flex;
    align-items: end;
    gap: 0.75rem;
    max-width: 22rem;
    margin-bottom: 1rem;
}

.feedback-filter-form .form-label {
    margin-bottom: 0;
    font-weight: 800;
}

.feedback-admin-list {
    display: grid;
    gap: 1rem;
}

.feedback-admin-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
    gap: 1.25rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.feedback-admin-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.5rem;
}

.feedback-admin-heading h2 {
    margin: 0;
    font-size: 1.2rem;
}

.feedback-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 0.9rem;
    margin-bottom: 0.85rem;
    color: var(--tracker-muted);
    font-size: 0.9rem;
    font-weight: 700;
}

.feedback-details {
    margin: 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.feedback-admin-form {
    display: grid;
    gap: 0.65rem;
    align-content: start;
}

@media (max-width: 900px) {
    .feedback-admin-card {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .feedback-form-grid {
        grid-template-columns: 1fr;
    }

    .feedback-filter-form {
        align-items: stretch;
        flex-direction: column;
        max-width: none;
    }
}

@media print {
    @page evodecks-checklist {
        size: letter landscape;
        margin: 0.18in;
    }

    body.printable-checklist-page {
        page: evodecks-checklist;
        background: #ffffff;
        color: #000000;
    }

    .printable-checklist-page .no-print,
    .printable-checklist-page .tracker-sidebar,
    .printable-checklist-page .sidebar-toggle,
    .site-footer {
        display: none !important;
    }

    .printable-checklist-page .tracker-shell {
        width: 100%;
        max-width: none;
        padding: 0;
    }

    .printable-checklist-page .tracker-panel {
        margin-bottom: 0.04in;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: #ffffff;
        box-shadow: none;
    }

    .printable-checklist-page .panel-header {
        margin-bottom: 0.04in;
    }

    .printable-checklist-page .panel-header h1 {
        margin-bottom: 0;
        font-size: 11pt;
        line-height: 1.1;
    }

    .printable-checklist-page .eyebrow {
        margin-bottom: 0.01in;
        font-size: 6pt;
        line-height: 1;
    }

    .printable-checklist-panel {
        overflow: visible;
    }

    .printable-checklist-grid {
        grid-template-columns: repeat(12, minmax(0, 1fr));
        gap: 0.025in;
        padding: 0;
    }

    .printable-checklist-card {
        grid-template-columns: 0.28in minmax(0, 1fr);
        gap: 0.025in;
        min-height: 0.42in;
        padding: 0.02in;
        border: 0.5pt solid #000000;
        border-radius: 0;
        background: #ffffff;
        color: #000000;
        overflow: hidden;
    }

    .printable-checklist-thumb-frame {
        width: 0.28in;
        border: 0.5pt solid #000000;
        border-radius: 0;
        background: #ffffff;
    }

    .printable-checklist-thumb-placeholder {
        padding: 0.01in;
        color: #000000;
        font-size: 3.8pt;
        line-height: 1;
    }

    .printable-checklist-thumb-frame .card-foil-marker {
        display: none;
    }

    .printable-checklist-card-copy {
        gap: 0.005in;
        overflow: hidden;
    }

    .printable-checklist-number {
        color: #000000;
        font-size: 4.8pt;
        line-height: 1;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .printable-checklist-name {
        color: #000000;
        display: -webkit-box;
        max-height: 0.22in;
        overflow: hidden;
        font-size: 4.6pt;
        line-height: 1;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow-wrap: anywhere;
    }

    .printable-checklist-foil {
        color: #000000;
        font-size: 3.8pt;
        line-height: 1;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .printable-checklist-thumb,
    .printable-checklist-thumb-placeholder {
        print-color-adjust: exact;
        -webkit-print-color-adjust: exact;
    }
}

.scanner-shell {
    max-width: none;
}

.scanner-layout {
    display: grid;
    grid-template-columns: minmax(20rem, 0.85fr) minmax(0, 1.15fr);
    gap: 1.25rem;
    align-items: start;
    margin-bottom: 1.25rem;
}

.scanner-hero-panel .panel-header,
.scanner-capture-panel .panel-header,
.scanner-result-panel .panel-header,
.scanner-queue-panel .panel-header {
    flex-wrap: wrap;
}

.scanner-queue-count {
    display: inline-grid;
    gap: 0.1rem;
    min-width: 6rem;
    padding: 0.8rem 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 12px;
    background: rgba(45, 120, 255, 0.08);
    text-align: center;
}

.scanner-queue-count strong {
    color: var(--tracker-blue);
    font-size: 1.6rem;
    line-height: 1;
}

.scanner-queue-count span {
    color: var(--tracker-muted);
    font-size: 0.78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.scanner-capture-form,
.scanner-assign-form,
.scanner-queue-form {
    display: grid;
    gap: 0.85rem;
}

.scanner-camera-stage {
    position: relative;
    display: grid;
    place-items: center;
    min-height: clamp(24rem, 58vw, 36rem);
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 16px;
    background:
            radial-gradient(circle at 22% 18%, rgba(45, 120, 255, 0.15), transparent 32%),
            linear-gradient(135deg, #111827, #263247 52%, #111827);
}

.scanner-camera-stage video,
.scanner-camera-stage img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.scanner-camera-stage video[hidden],
.scanner-camera-stage img[hidden] {
    display: none;
}

.scanner-card-guide {
    position: absolute;
    width: min(64%, 19rem);
    aspect-ratio: 5 / 7;
    border: 2px solid rgba(255, 255, 255, 0.9);
    border-radius: 14px;
    box-shadow: 0 0 0 999px rgba(8, 13, 24, 0.34), 0 0 2rem rgba(45, 120, 255, 0.28);
    pointer-events: none;
}

.scanner-camera-placeholder {
    position: absolute;
    inset: 1rem;
    display: grid;
    place-content: center;
    gap: 0.3rem;
    color: #ffffff;
    text-align: center;
}

.scanner-camera-placeholder strong {
    font-size: 1.1rem;
}

.scanner-camera-placeholder span {
    color: rgba(255, 255, 255, 0.76);
    font-weight: 700;
}

.scanner-capture-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.scanner-ocr-panel {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem;
    border: 1px solid rgba(45, 120, 255, 0.2);
    border-radius: 10px;
    background: rgba(45, 120, 255, 0.06);
}

.scanner-ocr-status {
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 800;
}

.scanner-ocr-status.is-error {
    color: #b45309;
}

.scanner-result-grid {
    display: grid;
    grid-template-columns: minmax(9rem, 0.38fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.scanner-preview-card {
    display: grid;
    place-items: center;
    min-width: 0;
    padding: 0.55rem;
    border: 1px solid var(--tracker-border);
    border-radius: 12px;
    background: rgba(246, 248, 252, 0.82);
}

.scanner-preview-card img {
    width: 100%;
    max-height: 26rem;
    object-fit: contain;
    border-radius: 8px;
}

.scanner-debug-actions {
    display: grid;
    gap: 0.45rem;
    width: 100%;
    margin-top: 0.65rem;
}

.scanner-debug-actions .btn {
    white-space: normal;
}

.scanner-preview-card.is-empty {
    min-height: 13rem;
    color: var(--tracker-muted);
    font-weight: 800;
}

.scanner-candidate-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(7.25rem, 1fr));
    gap: 0.6rem;
}

.scanner-candidate-card {
    display: grid;
    gap: 0.3rem;
    min-width: 0;
    padding: 0.55rem;
    border: 1px solid var(--tracker-border);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.82);
}

.scanner-candidate-card strong,
.scanner-candidate-card span,
.scanner-candidate-card small,
.scanner-queue-heading strong,
.scanner-queue-heading span {
    overflow-wrap: anywhere;
}

.scanner-candidate-art {
    display: grid;
    place-items: center;
    aspect-ratio: 5 / 7;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-muted);
    font-size: 0.76rem;
    font-weight: 800;
}

.scanner-candidate-art img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.scanner-candidate-card strong {
    font-size: 0.88rem;
}

.scanner-candidate-card span,
.scanner-candidate-card small {
    color: var(--tracker-muted);
    font-size: 0.76rem;
    font-weight: 800;
}

.scanner-destination-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.scanner-destination-grid > div {
    min-width: 0;
}

.scanner-queue-list {
    display: grid;
    gap: 0.9rem;
}

.scanner-queue-item {
    display: grid;
    grid-template-columns: minmax(7rem, 9rem) minmax(0, 1fr);
    gap: 1rem;
    padding: 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 12px;
    background: rgba(246, 248, 252, 0.72);
}

.scanner-queue-image {
    display: grid;
    place-items: center;
    min-height: 10rem;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 10px;
    background: #ffffff;
    color: var(--tracker-muted);
    font-size: 0.78rem;
    font-weight: 900;
}

.scanner-queue-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.scanner-queue-main {
    display: grid;
    gap: 0.7rem;
    min-width: 0;
}

.scanner-queue-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.scanner-queue-heading > div {
    display: grid;
    gap: 0.15rem;
    min-width: 0;
}

.scanner-queue-heading span:not(.status-pill) {
    color: var(--tracker-muted);
    font-size: 0.86rem;
    font-weight: 800;
}

.scanner-delete-form {
    margin: 0;
}

@media (max-width: 1000px) {
    .scanner-layout,
    .scanner-result-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .public-home-topbar {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        display: grid;
        gap: 0.75rem;
        padding: 0.75rem;
        background: #080e28;
    }

    .public-home-nav {
        justify-content: flex-start;
        max-width: none;
    }

    .public-home-nav a {
        font-size: 0.82rem;
    }

    .public-search-hero {
        min-height: auto;
        padding: 3rem 1rem;
    }

    .public-search-hero::before {
        background-position: center 1.5rem;
        background-size: min(24rem, 86vw) auto;
        opacity: 0.12;
    }

    .public-search-copy h1 {
        font-size: 2.45rem;
    }

    .public-search-form {
        grid-template-columns: 1fr;
    }

    .public-search-button {
        width: 100%;
    }

    .public-route-grid {
        grid-template-columns: 1fr;
    }

    .scanner-destination-grid,
    .scanner-queue-item {
        grid-template-columns: 1fr;
    }

    .scanner-capture-actions .btn,
    .scanner-ocr-panel .btn,
    .scanner-queue-actions .btn,
    .scanner-delete-form .btn {
        width: 100%;
    }
}

/* Deck workspace workbench redesign */
.deck-workbench-shell {
    display: grid;
    gap: 0.75rem;
    padding-top: 1rem;
}

.deck-workbench-summary {
    display: grid;
    grid-template-columns: minmax(16rem, 1.2fr) minmax(26rem, 1.8fr) minmax(12rem, auto);
    align-items: center;
    gap: 0.75rem 1rem;
    margin-bottom: 0;
    padding: 0.8rem 0.95rem;
    border-color: rgba(45, 120, 255, 0.2);
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.08), rgba(106, 58, 255, 0.05)), #ffffff;
    color: var(--tracker-ink);
}

.deck-summary-identity {
    min-width: 0;
}

.deck-workbench-summary .eyebrow {
    margin-bottom: 0.2rem;
    color: var(--tracker-cyan);
}

.deck-workbench-summary h1 {
    margin: 0;
    color: var(--tracker-ink);
    font-size: clamp(1.35rem, 2vw, 1.8rem);
    line-height: 1.08;
}

.deck-workbench-summary p:not(.eyebrow) {
    margin: 0.25rem 0 0;
    color: var(--tracker-muted);
    font-size: 0.88rem;
}

.deck-summary-actions,
.deck-document-actions,
.deck-workspace-viewbar-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem;
    min-width: 0;
}

.deck-summary-actions {
    margin-top: 0.5rem;
}

.deck-summary-metrics {
    display: grid;
    grid-template-columns: repeat(5, minmax(5.4rem, 1fr));
    gap: 0.45rem;
    min-width: 0;
}

.deck-summary-metric {
    display: grid;
    gap: 0.12rem;
    min-width: 0;
    padding: 0.45rem 0.5rem;
    border: 1px solid rgba(45, 120, 255, 0.14);
    border-radius: 8px;
    background: rgba(246, 248, 252, 0.88);
}

.deck-summary-metric span {
    color: var(--tracker-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.deck-summary-metric strong {
    min-width: 0;
    color: var(--tracker-ink);
    font-size: 0.95rem;
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.deck-summary-state {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.45rem;
}

.status-pill.legality-illegal {
    border: 1px solid rgba(158, 22, 44, 0.22);
    background: var(--tracker-danger);
    color: var(--tracker-navy);
}

.deck-legality-panel {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(12rem, auto) minmax(0, 1fr);
    align-items: center;
    gap: 0.65rem 1rem;
    min-width: 0;
    padding: 0.65rem 0.75rem;
    border: 1px solid var(--tracker-border);
    border-left-width: 4px;
    border-radius: 8px;
    background: rgba(246, 248, 252, 0.9);
}

.deck-legality-panel--legal {
    border-left-color: #198754;
}

.deck-legality-panel--illegal {
    border-left-color: #bd3044;
    background: rgba(255, 105, 122, 0.08);
}

.deck-legality-panel--unverified {
    border-left-color: #b17800;
    background: rgba(255, 209, 102, 0.12);
}

.deck-legality-summary {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    min-width: 0;
}

.deck-legality-marker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 1.75rem;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    background: var(--tracker-ink);
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 900;
}

.deck-legality-summary h2 {
    margin: 0;
    font-size: 0.9rem;
}

.deck-legality-summary p,
.deck-legality-passed {
    margin: 0;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    line-height: 1.35;
}

.deck-legality-summary strong {
    color: var(--tracker-ink);
}

.deck-legality-details {
    min-width: 0;
}

.deck-legality-details summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: 2.35rem;
    padding: 0.4rem 0.55rem;
    border-radius: 6px;
    color: var(--tracker-ink);
    cursor: pointer;
    font-size: 0.82rem;
    font-weight: 800;
}

.deck-legality-details summary:hover {
    background: rgba(45, 120, 255, 0.08);
}

.deck-legality-details summary:focus-visible {
    background: rgba(45, 120, 255, 0.08);
    outline: 2px solid var(--tracker-blue);
    outline-offset: 2px;
}

.deck-legality-counts {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.35rem;
}

.deck-legality-counts > span,
.deck-legality-issue-label {
    padding: 0.14rem 0.4rem;
    border-radius: 999px;
    background: #ffffff;
    color: var(--tracker-muted);
    font-size: 0.7rem;
    font-weight: 900;
    white-space: nowrap;
}

.deck-legality-issues {
    display: grid;
    gap: 0.4rem;
    margin: 0.45rem 0 0;
    padding: 0;
    list-style: none;
}

.deck-legality-issues li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 0.5rem;
    padding: 0.5rem 0.55rem;
    border-radius: 6px;
    background: #ffffff;
    color: var(--tracker-ink);
    font-size: 0.8rem;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.deck-legality-issue--error .deck-legality-issue-label {
    background: rgba(255, 105, 122, 0.22);
    color: #861d2d;
}

.deck-legality-issue--warning .deck-legality-issue-label {
    background: rgba(255, 209, 102, 0.3);
    color: #6c4b00;
}

.deck-workbench-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.65rem;
    min-width: 0;
    padding: 0.55rem;
    border: 1px solid rgba(45, 120, 255, 0.18);
    border-radius: 8px;
    background: #ffffff;
}

.deck-document-actions {
    flex: 1 1 auto;
    justify-content: flex-end;
}

.deck-workspace-panel {
    --deck-workspace-target-height: clamp(30rem, calc(100vh - 20rem), 58rem);
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 0.85rem;
    min-height: 0;
    overflow: hidden;
    margin-bottom: 0;
    padding: 0.85rem;
    border-color: rgba(0, 212, 255, 0.28);
    border-radius: var(--tracker-radius-sm);
    background: #e9eef8;
    box-shadow: none;
}

.deck-workspace-panel > .deck-panel-drag-handle {
    position: absolute;
    top: 0.55rem;
    right: 0.55rem;
    z-index: 5;
    width: auto;
    height: 1.55rem;
    padding: 0 0.45rem;
    border-color: rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.06);
    color: var(--tracker-light-muted);
    font-size: 0.68rem;
    opacity: 0.72;
}

.deck-workspace-viewbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    min-width: 0;
    padding: 0.15rem 0.1rem;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.deck-workspace-viewbar-label,
.deck-workspace-size-controls > span {
    color: var(--tracker-blue);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: nowrap;
}

.deck-workspace-viewbar .segmented-control {
    min-width: 0;
}

.deck-workspace-viewbar .segmented-control-option,
.deck-workspace-size-controls .segmented-control-option {
    min-height: 1.85rem;
    padding: 0.24rem 0.58rem;
    font-size: 0.8rem;
}

.deck-workspace-viewbar-actions {
    justify-content: flex-end;
}

.deck-workspace-grid,
.deck-workspace-grid[data-workspace-split],
.deck-workspace-grid[data-workspace-split="left-three-quarter"],
.deck-workspace-grid[data-workspace-split="right-three-quarter"] {
    --deck-workspace-left-share: 70fr;
    --deck-workspace-right-share: 30fr;
    --deck-workspace-resizer-left: 70%;
    display: grid;
    grid-template-columns: minmax(0, var(--deck-workspace-left-share)) minmax(20rem, var(--deck-workspace-right-share));
    gap: 0.85rem;
    min-height: 0;
    height: var(--deck-workspace-target-height);
    align-items: stretch;
}

.deck-workspace-grid[data-workspace-split="equal"] {
    --deck-workspace-left-share: 50fr;
    --deck-workspace-right-share: 50fr;
    --deck-workspace-resizer-left: 50%;
}

.deck-workspace-grid[data-workspace-split="custom"] {
    grid-template-columns: minmax(0, var(--deck-workspace-left-share)) minmax(20rem, var(--deck-workspace-right-share));
}

.deck-workspace-grid.has-floating-search-tile {
    grid-template-columns: 1fr;
}

.deck-workspace-pane {
    --deck-workspace-pane-padding: 1rem;
    grid-template-rows: auto minmax(0, 1fr);
    align-content: stretch;
    gap: 0.65rem;
    min-height: 0;
    overflow: hidden;
    border-color: var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.deck-workspace-pane-left {
    grid-column: 1;
    grid-row: 1;
}

.deck-workspace-pane-right {
    grid-column: 2;
    grid-row: 1;
}

.deck-workspace-pane-header {
    gap: 0.55rem;
    padding-bottom: 0.7rem;
    border-bottom: 1px solid var(--tracker-border);
}

.deck-workspace-pane-title-row {
    align-items: center;
}

.deck-workspace-pane-header h2 {
    margin: 0;
    font-size: 0.98rem;
    line-height: 1.2;
}

.deck-workspace-pane-header h2::before {
    display: block;
    margin-bottom: 0.18rem;
    color: var(--tracker-blue);
    content: "Deck workspace";
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    line-height: 1.2;
    text-transform: uppercase;
}

.deck-workspace-pane-left[data-active-deck-workspace-view="deck-list"] .deck-workspace-pane-header h2::before {
    content: "Deck list";
}

.deck-workspace-pane-left[data-active-deck-workspace-view="potentials"] .deck-workspace-pane-header h2::before {
    content: "Test Lab";
}

.deck-workspace-pane-right[data-active-deck-workspace-view="card-search"] .deck-workspace-pane-header h2::before {
    content: "Search inside this deck";
}

.deck-workspace-pane-header p {
    display: none;
}

.deck-workspace-view,
.deck-workspace-drop-zone,
.deck-search-gallery-shell,
[data-deck-card-search-results-region] {
    min-height: 0;
}

.deck-workspace-view {
    overflow: auto;
}

.deck-workspace-drop-zone {
    height: 100%;
    overflow: auto;
}

.deck-workspace-pane-right .deck-workspace-view[data-deck-workspace-view="card-search"] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 0.45rem;
    overflow: hidden;
}

.deck-workspace-pane-right .deck-card-search-form {
    margin-bottom: 0;
}

.deck-workspace-pane-right .deck-card-search-form > .form-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

.deck-workspace-pane-right [data-deck-card-search-results-region] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    overflow: hidden;
}

.deck-search-gallery-shell {
    overflow: hidden;
}

.deck-workspace-panel .deck-search-art-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: auto;
    padding-right: 0.2rem;
}

.deck-workspace-panel .deck-search-art-gallery.deck-search-name-groups,
.deck-workspace-pane.is-compact .deck-search-art-gallery.deck-search-name-groups {
    grid-template-columns: 1fr;
    gap: 0.85rem;
}

.deck-search-name-group {
    display: grid;
    gap: 0.65rem;
    min-width: 0;
    padding: 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.deck-search-name-group-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
}

.deck-search-name-group-heading h4 {
    margin: 0;
    color: var(--tracker-ink);
    font-size: 1rem;
}

.deck-search-name-group-heading span {
    color: var(--tracker-muted);
    font-size: 0.8rem;
    font-weight: 900;
    white-space: nowrap;
}

.deck-workspace-panel .deck-search-name-group .deck-search-printings-grid {
    margin: 0;
    padding: 0;
    overflow: visible;
}

.deck-workspace-pane.is-compact .deck-search-art-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.deck-search-guidance {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
}

.deck-search-guidance summary {
    cursor: pointer;
    color: var(--tracker-muted);
    font-weight: 900;
}

.deck-search-panel-close {
    display: none;
}

.deck-workspace-panel .deck-section-counts .status-pill.complete,
.deck-workspace-panel .deck-list-art-legality.status-pill.complete,
.deck-workspace-panel .deck-card-format-legality.status-pill.complete {
    border: 1px solid rgba(18, 113, 92, 0.18);
    background: rgba(75, 226, 181, 0.14);
    color: #12715c;
}

.deck-workspace-panel .deck-section-counts .status-pill.incomplete,
.deck-workspace-panel .deck-list-art-legality.status-pill.incomplete,
.deck-workspace-panel .deck-card-format-legality.status-pill.incomplete {
    border: 1px solid rgba(189, 48, 68, 0.18);
    background: rgba(189, 48, 68, 0.09);
    color: #bd3044;
}

.deck-workspace-pane-right .empty-state.compact {
    align-items: start;
    border: 0;
    border-left: 4px solid var(--tracker-cyan);
    border-radius: 0 8px 8px 0;
    background: #edfaff;
    text-align: left;
}

.deck-workspace-pane-right .deck-card-search-form .search-row > button[type="submit"] {
    border-color: var(--tracker-blue);
    background: var(--tracker-blue);
    color: #ffffff;
    font-weight: 900;
}

@media (min-width: 769px) {
    .deck-workspace-pane-right .deck-card-search-form .search-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0.45rem;
        align-items: stretch;
    }

    .deck-workspace-pane-right .deck-card-search-form #deckCardSearch {
        grid-column: 1;
        grid-row: 1;
        width: 100%;
        max-width: none;
    }

    .deck-workspace-pane-right .deck-card-search-form .search-row > button[type="submit"] {
        grid-column: 2;
        grid-row: 1;
    }

    .deck-workspace-pane-right .deck-card-search-scope {
        grid-column: 1 / -1;
        grid-row: 2;
        width: 100%;
    }

    .deck-workspace-pane-right .deck-card-search-form #deckCardSetId {
        grid-column: 1 / -1;
        grid-row: 3;
        width: 100%;
        max-width: none;
    }

    .deck-workspace-pane-right .deck-card-search-form #deckCardSortOrder {
        grid-column: 1;
        grid-row: 4;
        width: 100%;
        max-width: none;
    }

    .deck-workspace-pane-right .deck-card-search-form .search-row > a.btn {
        grid-column: 2;
        grid-row: 4;
    }

    .deck-workspace-pane-right:not(.is-compact) .deck-card-search-form .search-row {
        grid-template-columns: minmax(12rem, 1.35fr) minmax(10rem, 1fr) auto;
    }

    .deck-workspace-pane-right:not(.is-compact) .deck-card-search-form #deckCardSearch {
        grid-column: 1 / 3;
    }

    .deck-workspace-pane-right:not(.is-compact) .deck-card-search-form .search-row > button[type="submit"] {
        grid-column: 3;
    }

    .deck-workspace-pane-right:not(.is-compact) .deck-card-search-form #deckCardSetId {
        grid-column: 1;
        grid-row: 3;
    }

    .deck-workspace-pane-right:not(.is-compact) .deck-card-search-form #deckCardSortOrder {
        grid-column: 2;
        grid-row: 3;
    }

    .deck-workspace-pane-right:not(.is-compact) .deck-card-search-form .search-row > a.btn {
        grid-column: 3;
        grid-row: 3;
    }

    .deck-workspace-panel .deck-list-section {
        margin-top: 0.75rem;
    }

    .deck-workspace-panel .deck-list-section:first-of-type {
        margin-top: 0;
    }

    .deck-workspace-panel .deck-list-section-heading {
        gap: 0.45rem 0.85rem;
        padding: 0.75rem 0;
        border: 0;
        border-top: 2px solid var(--tracker-border);
        border-radius: 0;
        background: transparent;
        color: var(--tracker-ink);
    }

    .deck-workspace-panel .deck-list-section:first-of-type > .deck-list-section-heading,
    .deck-workspace-panel .deck-list-art-section-heading:first-child {
        padding-top: 0;
        border-top: 0;
    }

    .deck-workspace-panel .deck-section-counts {
        gap: 0.3rem 0.65rem;
        font-size: 0.78rem;
    }

    .deck-workspace-panel .deck-section-counts > span:not(.status-pill) {
        min-height: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
    }

    .deck-workspace-panel .deck-list-card-stack {
        gap: 0;
        margin-top: 0;
    }

    .deck-workspace-panel .deck-list-card-row {
        padding: 0.65rem 0;
        border: 0;
        border-top: 1px solid var(--tracker-border);
        border-radius: 0;
        background: #ffffff;
        box-shadow: none;
        font-size: 0.84rem;
    }

    .deck-workspace-panel .deck-list-card-meta > span:not(.status-pill) {
        min-height: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
    }

    .deck-workspace-pane-left[data-inline-edit-active="false"] .deck-list-card-count {
        padding: 0.2rem;
        border: 0;
        background: transparent;
    }

    .deck-workspace-pane-left[data-inline-edit-active="false"] .deck-list-card-count > span {
        font-size: 0.75rem;
        text-transform: none;
    }

    .deck-workspace-pane-left[data-inline-edit-active="false"] .deck-list-card-count .form-control-sm:disabled {
        width: 2rem;
        min-height: 0;
        padding: 0;
        border: 0;
        background: transparent;
        color: var(--tracker-ink);
        font-weight: 900;
        opacity: 1;
    }

    .deck-workspace-panel .deck-list-card-count > strong {
        color: #bd3044;
    }
}

.deck-workspace-resizer {
    position: absolute;
    top: 0;
    bottom: 0;
    left: var(--deck-workspace-resizer-left, 70%);
    z-index: 4;
    width: 0.8rem;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: col-resize;
    transform: translateX(calc(-50% + 0.325rem));
    touch-action: none;
}

.deck-workspace-resizer::before {
    content: "";
    position: absolute;
    top: 0.75rem;
    bottom: 0.75rem;
    left: 50%;
    width: 2px;
    border-radius: 999px;
    background: rgba(0, 212, 255, 0.42);
    transform: translateX(-50%);
}

.deck-workspace-resizer:hover::before,
.deck-workspace-resizer:focus-visible::before,
.deck-workspace-grid[data-workspace-resizing="true"] .deck-workspace-resizer::before {
    width: 4px;
    background: var(--tracker-cyan);
}

.deck-workspace-resizer:focus-visible {
    outline: 2px solid var(--tracker-cyan);
    outline-offset: 2px;
}

.deck-workspace-panel:fullscreen,
.deck-workspace-panel.is-css-fullscreen {
    width: 100vw;
    height: 100vh;
    max-width: none;
    margin: 0;
    padding: 0.75rem;
    border-radius: 0;
}

.deck-workspace-panel:fullscreen .deck-workspace-grid,
.deck-workspace-panel.is-css-fullscreen .deck-workspace-grid {
    height: calc(100vh - 4.7rem);
}

@media (max-width: 1200px) {
    .deck-workbench-summary {
        grid-template-columns: minmax(16rem, 1fr);
    }

    .deck-summary-state {
        justify-content: flex-start;
    }
}

@media (max-width: 1100px) {
    .deck-summary-metrics {
        grid-template-columns: repeat(3, minmax(5.4rem, 1fr));
    }

    .deck-workspace-grid,
    .deck-workspace-grid[data-workspace-split],
    .deck-workspace-grid[data-workspace-split="left-three-quarter"],
    .deck-workspace-grid[data-workspace-split="right-three-quarter"] {
        grid-template-columns: minmax(0, var(--deck-workspace-left-share)) minmax(20rem, var(--deck-workspace-right-share));
    }

    .deck-workspace-pane.is-compact .deck-search-art-gallery,
    .deck-workspace-panel .deck-search-art-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 768px) {
    .deck-workspace-grid,
    .deck-workspace-grid[data-workspace-split],
    .deck-workspace-grid[data-workspace-split="left-three-quarter"],
    .deck-workspace-grid[data-workspace-split="right-three-quarter"] {
        grid-template-columns: minmax(0, var(--deck-workspace-left-share)) minmax(20rem, var(--deck-workspace-right-share));
    }

    .deck-workspace-pane-left {
        grid-column: 1;
    }

    .deck-workspace-pane-right {
        grid-column: 2;
    }
}

@media (max-width: 767px) {
    .deck-workbench-shell {
        gap: 0.65rem;
    }

    .deck-workbench-summary,
    .deck-summary-metrics {
        grid-template-columns: 1fr;
    }

    .deck-legality-panel {
        grid-template-columns: minmax(0, 1fr);
        align-items: stretch;
    }

    .deck-legality-details summary {
        align-items: flex-start;
    }

    .deck-workbench-strip {
        align-items: stretch;
        flex-direction: column;
    }

    .deck-document-actions,
    .deck-workspace-viewbar-actions {
        justify-content: flex-start;
    }

    .deck-workspace-panel {
        min-height: 0;
        overflow: visible;
    }

    .deck-workspace-panel > .deck-panel-drag-handle {
        display: none;
    }

    .deck-workspace-viewbar {
        flex-direction: column;
        align-items: stretch;
        padding-right: 0.6rem;
    }

    .deck-workspace-viewbar-group {
        align-items: stretch;
    }

    .deck-workspace-viewbar .segmented-control,
    .deck-workspace-toggle {
        overflow-x: auto;
        flex-wrap: nowrap;
    }

    .deck-workspace-grid,
    .deck-workspace-grid[data-workspace-split],
    .deck-workspace-grid[data-workspace-split="left-three-quarter"],
    .deck-workspace-grid[data-workspace-split="right-three-quarter"] {
        display: block;
        height: auto;
        min-height: 30rem;
    }

    .deck-workspace-pane-left {
        min-height: calc(100vh - 15rem);
    }

    .deck-workspace-pane-right {
        position: fixed;
        inset: 4.25rem 0.75rem 0.75rem;
        z-index: 720;
        display: grid;
        min-height: 0;
        max-height: none;
        opacity: 0;
        pointer-events: none;
        transform: translateX(110%);
        transition: transform 180ms ease, opacity 180ms ease;
        box-shadow: 0 24px 70px rgba(8, 14, 40, 0.34);
    }

    .deck-workspace-grid.is-search-panel-open .deck-workspace-pane-right {
        opacity: 1;
        pointer-events: auto;
        transform: translateX(0);
    }

    .deck-search-panel-close {
        display: inline-flex;
    }

    .deck-search-float-toggle,
    .deck-workspace-resizer,
    .deck-workspace-size-controls {
        display: none;
    }

    .deck-workspace-panel .deck-search-art-gallery,
    .deck-workspace-pane.is-compact .deck-search-art-gallery {
        grid-template-columns: 1fr;
    }

    .deck-workspace-panel:fullscreen .deck-workspace-grid,
    .deck-workspace-panel.is-css-fullscreen .deck-workspace-grid {
        height: auto;
    }
}

/* Public How to Use guide and its non-interactive deck example. */
.how-to-use-page {
    background: linear-gradient(145deg, #f6f8fc 0%, #ffffff 48%, #e8faff 100%);
}

.how-to-shell {
    max-width: 88rem;
}

.how-to-shell article {
    display: grid;
    gap: 1rem;
}

.how-to-shell .tracker-panel {
    margin-bottom: 0;
}

.how-to-shell section[id] {
    scroll-margin-top: 1rem;
}

.how-to-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(16rem, 0.55fr);
    gap: 2rem;
    align-items: center;
    min-height: 25rem;
    padding: clamp(1.5rem, 5vw, 4.5rem);
    overflow: hidden;
    border-color: rgba(0, 212, 255, 0.38);
    background:
            radial-gradient(circle at 88% 18%, rgba(0, 212, 255, 0.2), transparent 28%),
            radial-gradient(circle at 15% 110%, rgba(106, 58, 255, 0.34), transparent 35%),
            var(--tracker-navy);
    color: #ffffff;
}

.how-to-hero h1 {
    max-width: 13ch;
    margin: 0;
    color: #ffffff;
    font-size: clamp(2.7rem, 7vw, 5.5rem);
    line-height: 0.94;
}

.how-to-hero .eyebrow,
.how-to-demo-banner span {
    color: var(--tracker-cyan);
}

.how-to-hero-copy {
    display: grid;
    gap: 1rem;
}

.how-to-lede {
    max-width: 46rem;
    margin: 0;
    color: #d9e2f5;
    font-size: clamp(1.05rem, 2vw, 1.3rem);
    line-height: 1.55;
}

.how-to-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    align-items: center;
}

.how-to-readonly-note {
    display: grid;
    gap: 0.5rem;
    padding: 1.25rem;
    border: 1px solid rgba(75, 226, 181, 0.42);
    border-radius: var(--tracker-radius-sm);
    background: rgba(75, 226, 181, 0.1);
    color: #dffdf3;
}

.how-to-readonly-note strong {
    color: #ffffff;
    font-size: 1.05rem;
}

.how-to-readonly-note p {
    margin: 0;
    line-height: 1.55;
}

.how-to-contents {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    padding: 0.75rem;
}

.how-to-contents a {
    display: inline-flex;
    align-items: center;
    min-height: 2.3rem;
    padding: 0.35rem 0.7rem;
    border: 1px solid var(--tracker-border);
    border-radius: 999px;
    background: var(--tracker-surface);
    color: var(--tracker-ink);
    font-size: 0.86rem;
    font-weight: 900;
    text-decoration: none;
}

.how-to-contents a:hover,
.how-to-contents a:focus {
    border-color: var(--tracker-blue);
    background: rgba(45, 120, 255, 0.1);
    color: var(--tracker-blue);
}

.how-to-section,
.how-to-finish {
    padding: clamp(1.35rem, 4vw, 2.6rem);
}

.how-to-section > p,
.how-to-copy-grid p,
.how-to-finish > p {
    max-width: 82ch;
    color: #3f485c;
    font-size: 1rem;
    line-height: 1.68;
}

.how-to-section-heading {
    display: flex;
    gap: 1rem;
    align-items: center;
    margin-bottom: 1.1rem;
}

.how-to-section-heading .eyebrow,
.how-to-section-heading h2,
.how-to-finish .eyebrow,
.how-to-finish h2 {
    margin: 0;
}

.how-to-section-heading h2,
.how-to-finish h2 {
    font-size: clamp(1.65rem, 4vw, 2.4rem);
}

.how-to-step-number {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 3.25rem;
    min-height: 3.25rem;
    padding: 0.4rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--tracker-cyan), var(--tracker-blue), var(--tracker-purple));
    color: #ffffff;
    font-size: 1rem;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(45, 120, 255, 0.25);
}

.how-to-workflow-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    margin: 1.4rem 0 0;
    padding: 0;
    counter-reset: how-to-workflow;
    list-style: none;
}

.how-to-workflow-grid li {
    position: relative;
    display: grid;
    gap: 0.4rem;
    min-height: 9rem;
    padding: 1rem 1rem 1rem 3.4rem;
    border: 1px solid var(--tracker-border);
    border-radius: var(--tracker-radius-sm);
    background: var(--tracker-surface);
    counter-increment: how-to-workflow;
}

.how-to-workflow-grid li::before {
    content: counter(how-to-workflow);
    position: absolute;
    top: 1rem;
    left: 1rem;
    display: inline-flex;
    width: 1.7rem;
    height: 1.7rem;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--tracker-navy);
    color: #ffffff;
    font-size: 0.8rem;
    font-weight: 900;
}

.how-to-workflow-grid li span {
    color: var(--tracker-muted);
    line-height: 1.5;
}

.how-to-demo {
    padding: 0;
    overflow: hidden;
    border-color: rgba(45, 120, 255, 0.28);
}

.how-to-demo-banner {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    justify-content: space-between;
    padding: 0.65rem 1rem;
    background: var(--tracker-navy);
    color: #ffffff;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.how-to-demo-summary {
    display: grid;
    grid-template-columns: minmax(15rem, 1fr) minmax(30rem, 1.3fr) auto;
    gap: 1rem;
    align-items: center;
    padding: 1.25rem;
}

.how-to-demo-summary h2,
.how-to-demo-summary p,
.how-to-demo-metrics,
.how-to-demo-metrics dd {
    margin: 0;
}

.how-to-demo-summary p {
    color: var(--tracker-muted);
}

.how-to-demo-metrics {
    display: grid;
    grid-template-columns: repeat(5, minmax(4.6rem, 1fr));
    gap: 0.45rem;
}

.how-to-demo-metrics div {
    min-width: 0;
    padding: 0.6rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.how-to-demo-metrics dt {
    color: var(--tracker-muted);
    font-size: 0.7rem;
    font-weight: 900;
    text-transform: uppercase;
}

.how-to-demo-metrics dd {
    overflow-wrap: anywhere;
    color: var(--tracker-ink);
    font-weight: 900;
}

.how-to-demo-pages {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--tracker-border);
    background: var(--tracker-surface);
}

.how-to-demo-pages span {
    padding: 0.3rem 0.65rem;
    border: 1px solid transparent;
    border-radius: 999px;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    font-weight: 900;
}

.how-to-demo-pages .is-active {
    border-color: rgba(45, 120, 255, 0.32);
    background: rgba(45, 120, 255, 0.12);
    color: var(--tracker-blue);
}

.how-to-copy-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(19rem, 0.85fr);
    gap: 1.5rem;
    align-items: start;
}

.how-to-tip,
.how-to-demo-callout {
    padding: 0.9rem 1rem;
    border-left: 4px solid var(--tracker-cyan);
    border-radius: 0 8px 8px 0;
    background: #edfaff;
    color: #34405a;
    line-height: 1.55;
}

.how-to-ui-card,
.how-to-progress-card,
.how-to-missing-card,
.how-to-event-card {
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: var(--tracker-radius-sm);
    background: var(--tracker-surface);
}

.how-to-ui-label {
    color: var(--tracker-blue);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.how-to-faux-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    margin: 0.65rem 0;
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.how-to-faux-search span,
.how-to-faux-search strong {
    padding: 0.65rem 0.75rem;
}

.how-to-faux-search span {
    color: var(--tracker-muted);
}

.how-to-faux-search strong {
    background: var(--tracker-blue);
    color: #ffffff;
}

.how-to-search-result,
.how-to-mini-result {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.75rem 0;
    border-top: 1px solid var(--tracker-border);
}

.how-to-search-result div,
.how-to-mini-result div {
    display: grid;
    min-width: 0;
}

.how-to-search-result div span,
.how-to-mini-result small {
    color: var(--tracker-muted);
    font-size: 0.78rem;
}

.how-to-card-glyph {
    display: inline-flex;
    width: 2.2rem;
    height: 3rem;
    align-items: center;
    justify-content: center;
    border: 2px solid #ffffff;
    border-radius: 6px;
    color: #ffffff;
    font-weight: 900;
    box-shadow: 0 0 0 1px var(--tracker-border), 0 5px 12px rgba(8, 14, 40, 0.16);
}

.how-to-card-glyph.trainer {
    background: linear-gradient(145deg, var(--tracker-blue), var(--tracker-purple));
}

.how-to-card-glyph.pokemon {
    background: linear-gradient(145deg, #168a6e, var(--tracker-success));
}

.how-to-table-wrap {
    margin: 1.2rem 0;
    border: 1px solid var(--tracker-border);
    border-radius: var(--tracker-radius-sm);
}

.how-to-static-table {
    min-width: 42rem;
    margin: 0;
}

.how-to-static-table tbody td {
    background: #ffffff;
}

.how-to-workspace-demo {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.65fr);
    gap: 0.85rem;
    margin: 1.25rem 0;
    padding: 0.85rem;
    border: 1px solid rgba(0, 212, 255, 0.28);
    border-radius: var(--tracker-radius-sm);
    background: #e9eef8;
}

.how-to-workspace-demo > section,
.how-to-workspace-demo > aside {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
}

.how-to-workspace-demo header {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 0.7rem;
}

.how-to-workspace-demo header h3 {
    margin: 0.2rem 0 0;
    font-size: 1rem;
}

.how-to-workspace-demo header > span {
    color: var(--tracker-muted);
    font-size: 0.75rem;
    font-weight: 900;
}

.how-to-workspace-subhead {
    margin-top: 0.75rem;
    border-top: 2px solid var(--tracker-border);
    padding-top: 0.75rem;
}

.how-to-deck-row {
    display: grid;
    grid-template-columns: minmax(9rem, 1fr) repeat(2, minmax(5.5rem, auto)) minmax(4.5rem, auto);
    gap: 0.65rem;
    align-items: center;
    padding: 0.65rem 0;
    border-top: 1px solid var(--tracker-border);
    font-size: 0.84rem;
}

.how-to-deck-row span {
    color: var(--tracker-muted);
}

.how-to-deck-row em,
.how-to-location-row em {
    color: #bd3044;
    font-size: 0.78rem;
    font-style: normal;
    font-weight: 900;
    text-align: right;
}

.how-to-deck-row em.is-ready {
    color: #12715c;
}

.how-to-workspace-demo > aside .how-to-mini-result {
    grid-template-columns: auto minmax(0, 1fr);
}

.how-to-demo-callout {
    margin-top: 0.8rem;
    font-size: 0.84rem;
}

.how-to-printing-steps {
    display: grid;
    gap: 0.65rem;
    margin: 1rem 0 1.2rem;
    padding-left: 1.5rem;
}

.how-to-printing-steps li {
    padding: 0.75rem 0.85rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
    color: var(--tracker-ink);
}

.how-to-printing-steps li::marker {
    color: var(--tracker-blue);
    font-weight: 900;
}

.how-to-printing-steps strong,
.how-to-printing-steps span {
    display: block;
}

.how-to-printing-steps span {
    margin-top: 0.2rem;
    color: var(--tracker-muted);
    font-size: 0.86rem;
    line-height: 1.5;
}

.how-to-printing-demo,
.how-to-printing-picker {
    display: grid;
    gap: 0.75rem;
}

.how-to-menu-dots {
    color: var(--tracker-muted);
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: 0.12em;
}

.how-to-printing-menu {
    display: grid;
    justify-self: end;
    width: min(14rem, 100%);
    overflow: hidden;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(8, 14, 40, 0.14);
}

.how-to-printing-menu span,
.how-to-printing-menu strong {
    padding: 0.65rem 0.8rem;
    border-bottom: 1px solid var(--tracker-border);
    font-size: 0.84rem;
}

.how-to-printing-menu span:last-child {
    border-bottom: 0;
    color: var(--tracker-danger);
}

.how-to-printing-menu strong {
    background: rgba(45, 120, 255, 0.1);
    color: var(--tracker-blue);
}

.how-to-printing-picker {
    padding-top: 0.8rem;
    border-top: 1px solid var(--tracker-border);
}

.how-to-printing-choice {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.7rem;
    align-items: center;
    padding: 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.how-to-printing-choice > div {
    display: grid;
    min-width: 0;
}

.how-to-printing-choice small,
.how-to-printing-choice > div span {
    color: var(--tracker-muted);
    font-size: 0.75rem;
}

.how-to-use-printing-control {
    grid-column: 2 / -1;
    justify-self: start;
    padding: 0.45rem 0.7rem;
    border-radius: 7px;
    background: var(--tracker-blue);
    color: #ffffff;
    font-size: 0.8rem;
    font-weight: 900;
}

.how-to-subheading {
    margin-top: 1.5rem;
    font-size: 1.15rem;
}

.how-to-completion-grid {
    display: grid;
    grid-template-columns: minmax(16rem, 0.7fr) minmax(20rem, 1.3fr);
    gap: 1rem;
    margin: 1.25rem 0;
}

.how-to-progress-card {
    display: grid;
    gap: 0.75rem;
}

.how-to-progress-card > strong {
    font-size: 2.8rem;
    line-height: 1;
}

.how-to-progress-card dl,
.how-to-missing-card dl {
    display: grid;
    gap: 0.5rem;
    margin: 0;
}

.how-to-progress-card dl div,
.how-to-missing-card dl div {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding-top: 0.5rem;
    border-top: 1px solid var(--tracker-border);
}

.how-to-progress-card dt,
.how-to-missing-card dt {
    color: var(--tracker-muted);
    font-weight: 700;
}

.how-to-progress-card dd,
.how-to-missing-card dd {
    margin: 0;
    color: var(--tracker-ink);
    font-weight: 900;
}

.how-to-missing-card h3 {
    margin: 0.2rem 0 0.8rem;
}

.how-to-location-row {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.8rem;
    padding: 0.75rem;
    border: 1px solid rgba(75, 226, 181, 0.5);
    border-radius: 8px;
    background: rgba(75, 226, 181, 0.1);
}

.how-to-location-row span {
    display: grid;
}

.how-to-location-row small {
    color: var(--tracker-muted);
}

.how-to-location-row em {
    color: #12715c;
}

.how-to-event-card {
    margin: 1.25rem 0;
}

.how-to-event-card > header {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    align-items: center;
}

.how-to-event-card h3,
.how-to-event-card header p {
    margin: 0.2rem 0 0;
}

.how-to-event-card header p {
    color: var(--tracker-muted);
}

.how-to-event-record {
    display: grid;
    justify-items: end;
    flex: 0 0 auto;
}

.how-to-event-record strong {
    font-size: 2rem;
}

.how-to-event-record span {
    color: #12715c;
    font-size: 0.8rem;
    font-weight: 900;
}

.how-to-event-card .table-responsive {
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
}

.how-to-history {
    display: grid;
    gap: 0.65rem;
    margin: 1.25rem 0;
}

.how-to-history article {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: 8px;
    background: var(--tracker-surface);
}

.how-to-history article.is-current {
    border-color: rgba(45, 120, 255, 0.38);
    background: rgba(45, 120, 255, 0.08);
}

.how-to-history article div {
    display: grid;
    gap: 0.2rem;
}

.how-to-history article span {
    color: var(--tracker-blue);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.how-to-history article h3,
.how-to-history article p {
    margin: 0;
}

.how-to-history article h3 {
    font-size: 1rem;
}

.how-to-history article p {
    color: var(--tracker-muted);
    font-size: 0.84rem;
}

.how-to-history article > strong {
    flex: 0 0 auto;
    color: var(--tracker-blue);
    font-size: 0.82rem;
}

.how-to-finish {
    border-color: rgba(75, 226, 181, 0.42);
    background: linear-gradient(135deg, #ffffff, #effdf9);
}

.how-to-finish > p {
    margin-top: 0.75rem;
}

@media (max-width: 1050px) {
    .how-to-demo-summary {
        grid-template-columns: 1fr;
    }

    .how-to-demo-summary > .status-pill {
        justify-self: start;
    }

    .how-to-workspace-demo {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 850px) {
    .how-to-hero,
    .how-to-copy-grid,
    .how-to-completion-grid {
        grid-template-columns: 1fr;
    }

    .how-to-workflow-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .how-to-section-heading {
        align-items: flex-start;
    }

    .how-to-step-number {
        min-width: 2.65rem;
        min-height: 2.65rem;
    }

    .how-to-workflow-grid,
    .how-to-demo-metrics {
        grid-template-columns: 1fr;
    }

    .how-to-workflow-grid li {
        min-height: 0;
    }

    .how-to-search-result {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .how-to-search-result .version-pill {
        grid-column: 2;
        justify-self: start;
    }

    .how-to-printing-choice {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .how-to-printing-choice > .status-pill {
        grid-column: 2;
        justify-self: start;
    }

    .how-to-use-printing-control {
        grid-column: 1 / -1;
        justify-self: stretch;
        text-align: center;
    }

    .how-to-deck-row {
        grid-template-columns: 1fr 1fr;
    }

    .how-to-deck-row strong {
        grid-column: 1 / -1;
    }

    .how-to-deck-row em {
        text-align: left;
    }

    .how-to-event-card > header,
    .how-to-location-row,
    .how-to-history article {
        align-items: flex-start;
        flex-direction: column;
    }

    .how-to-event-record {
        justify-items: start;
    }
}

/* Mobile interaction layer. These rules intentionally live last so desktop layouts stay unchanged. */
.deck-mobile-page-tabs,
.deck-mobile-workspace-nav,
.deck-mobile-search-backdrop,
.deck-mobile-search-filter-toggle,
.mobile-card-filter-toggle,
.card-mobile-add-cta,
.collection-mobile-jump-nav,
.mobile-only-copy {
    display: none;
}

@media (max-width: 768px) {
    html {
        scroll-padding-top: 1rem;
        scroll-padding-bottom: 5.75rem;
    }

    body.has-tracker-sidebar:not(.sidebar-collapsed),
    body.deck-mobile-search-open {
        overflow: hidden;
    }

    .tracker-sidebar {
        z-index: 1060;
        width: min(20rem, calc(100vw - 2.75rem));
        height: 100dvh;
        padding-top: env(safe-area-inset-top, 0);
        padding-bottom: env(safe-area-inset-bottom, 0);
        transform: translateX(0);
        visibility: visible;
        pointer-events: auto;
        transition: transform 180ms ease, visibility 180ms ease;
    }

    body.sidebar-collapsed .tracker-sidebar {
        width: min(20rem, calc(100vw - 2.75rem));
        transform: translateX(-101%);
        visibility: hidden;
        pointer-events: none;
    }

    .tracker-sidebar-inner {
        padding: 0.75rem;
    }

    .tracker-sidebar-nav {
        overscroll-behavior: contain;
    }

    .tracker-sidebar .nav-link,
    .tracker-sidebar .nav-logout-button {
        min-height: 2.75rem;
        padding: 0.65rem 0.75rem;
    }

    .sidebar-scrim {
        position: fixed;
        inset: 0;
        z-index: 1050;
        display: block;
        border: 0;
        background: rgba(8, 14, 40, 0.58);
        opacity: 1;
        backdrop-filter: blur(2px);
        transition: opacity 180ms ease, visibility 180ms ease;
    }

    body.sidebar-collapsed .sidebar-scrim {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }

    .sidebar-toggle {
        display: none;
    }

    .tracker-shell,
    body.sidebar-collapsed .tracker-shell,
    body.has-public-navigation .tracker-shell {
        margin-right: 0.65rem;
        margin-left: 0.65rem;
        padding-top: 1rem;
    }

    body.has-tracker-sidebar .tracker-shell {
        padding-bottom: calc(6rem + env(safe-area-inset-bottom, 0px));
    }

    .site-footer,
    body.sidebar-collapsed .site-footer {
        margin-left: 0;
    }

    body.has-tracker-sidebar .site-footer {
        padding-bottom: calc(4.4rem + env(safe-area-inset-bottom, 0px));
    }

    .mobile-bottom-nav {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1040;
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        min-height: calc(4.15rem + env(safe-area-inset-bottom, 0px));
        padding: 0.35rem 0.25rem calc(0.35rem + env(safe-area-inset-bottom, 0px));
        border-top: 1px solid rgba(0, 212, 255, 0.26);
        background: rgba(8, 14, 40, 0.98);
        box-shadow: 0 -12px 28px rgba(8, 14, 40, 0.2);
        backdrop-filter: blur(14px);
    }

    .mobile-bottom-nav a,
    .mobile-bottom-nav button {
        position: relative;
        display: flex;
        min-width: 0;
        min-height: 3.45rem;
        flex-direction: column;
        gap: 0.22rem;
        align-items: center;
        justify-content: center;
        padding: 0.3rem 0.1rem;
        border: 0;
        border-radius: 10px;
        background: transparent;
        color: #aeb9d3;
        font-size: clamp(0.62rem, 2.5vw, 0.72rem);
        font-weight: 800;
        line-height: 1;
        text-align: center;
        text-decoration: none;
    }

    .mobile-bottom-nav .nav-icon {
        width: 1.3rem;
        height: 1.3rem;
    }

    .mobile-bottom-nav a:hover,
    .mobile-bottom-nav a:focus-visible,
    .mobile-bottom-nav button:hover,
    .mobile-bottom-nav button:focus-visible,
    .mobile-bottom-nav .is-active,
    .mobile-bottom-nav [aria-current="page"] {
        background: rgba(45, 120, 255, 0.18);
        color: #ffffff;
    }

    .mobile-bottom-nav .is-active::after,
    .mobile-bottom-nav [aria-current="page"]::after {
        content: "";
        position: absolute;
        top: 0.12rem;
        left: 50%;
        width: 1.35rem;
        height: 0.18rem;
        border-radius: 999px;
        background: var(--tracker-cyan);
        transform: translateX(-50%);
    }

    .mobile-bottom-nav a:focus-visible,
    .mobile-bottom-nav button:focus-visible {
        outline: 2px solid #ffffff;
        outline-offset: -3px;
    }

    .shared-public-nav {
        grid-template-columns: minmax(6rem, 1fr) auto auto;
        gap: 0.45rem;
        min-height: 4rem;
        padding: 0.45rem 0.65rem;
    }

    .shared-public-brand img {
        max-width: 9.5rem;
        height: 2.4rem;
    }

    .shared-public-links {
        display: none;
    }

    .shared-public-menu {
        position: relative;
        display: block;
    }

    .shared-public-menu summary {
        min-height: 2.75rem;
        display: inline-flex;
        align-items: center;
        padding: 0.55rem 0.75rem;
        border: 1px solid rgba(174, 185, 211, 0.32);
        background: rgba(255, 255, 255, 0.06);
        color: #ffffff;
        cursor: pointer;
        list-style: none;
    }

    .shared-public-menu summary::-webkit-details-marker {
        display: none;
    }

    .shared-public-menu div {
        position: absolute;
        top: calc(100% + 0.55rem);
        right: 0;
        width: min(16rem, calc(100vw - 1.3rem));
        display: grid;
        gap: 0.2rem;
        padding: 0.55rem;
        border: 1px solid rgba(0, 212, 255, 0.3);
        border-radius: 12px;
        background: #0d1738;
        box-shadow: 0 18px 42px rgba(8, 14, 40, 0.35);
    }

    .shared-public-menu div a {
        min-height: 2.75rem;
        display: flex;
        align-items: center;
        padding: 0.65rem 0.75rem;
    }

    .shared-public-menu div a:hover,
    .shared-public-menu div a:focus-visible {
        background: rgba(45, 120, 255, 0.2);
        color: #ffffff;
    }

    .shared-public-sign-in {
        min-height: 2.75rem;
        padding-inline: 0.75rem;
    }

    .shared-public-sign-up {
        display: none;
    }

    .tracker-panel,
    .tracker-hero {
        padding: 1rem;
    }

    .btn,
    button:not(.deck-workspace-resizer):not(.deck-search-tile-resize-handle),
    summary,
    .form-control,
    .form-select {
        min-height: 2.75rem;
    }

    a,
    button,
    summary,
    input,
    select,
    textarea {
        touch-action: manipulation;
    }

    .form-control,
    .form-select,
    input,
    select,
    textarea {
        font-size: 16px;
    }

    .form-actions,
    .action-row:not(td) {
        align-items: stretch;
    }

    .form-actions .btn {
        flex: 1 1 10rem;
    }

    .segmented-control {
        max-width: 100%;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
    }

    .segmented-control-option {
        flex: 0 0 auto;
        min-height: 2.6rem;
    }

    .table-responsive {
        max-width: 100%;
        border: 1px solid var(--tracker-border);
        border-radius: 8px;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
    }

    .table-responsive th,
    .table-responsive td {
        padding: 0.65rem;
    }

    td.action-row {
        white-space: normal;
    }

    td.action-row .btn,
    td.action-row button {
        min-height: 2.5rem;
    }

    .pagination-bar {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0.65rem;
    }

    .pagination-bar .action-row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.5rem;
    }

    .pagination-bar .action-row > * {
        width: 100%;
        margin: 0;
        text-align: center;
    }

    .site-footer-links a {
        display: inline-flex;
        align-items: center;
        min-height: 2.75rem;
        padding: 0.35rem;
    }

    .mobile-only-copy {
        display: inline;
    }

    .desktop-only-copy {
        display: none;
    }

    .card-database-layout .deck-drop-sidebar {
        order: initial;
        min-height: 0;
    }

    .card-database-layout .deck-drop-zone {
        min-height: 7rem;
    }

    .mobile-card-filter-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .card-database-search-form .search-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0.55rem;
        align-items: stretch;
    }

    .card-database-search-form .card-search-suggest-combobox {
        grid-column: 1;
        grid-row: 1;
        max-width: none;
    }

    .card-database-search-form .search-row > button[type="submit"] {
        grid-column: 2;
        grid-row: 1;
        width: auto;
    }

    .card-database-search-form .mobile-card-filter-toggle {
        grid-column: 1;
        grid-row: 2;
    }

    .card-database-search-form .search-row > a.btn {
        grid-column: 2;
        grid-row: 2;
        width: auto;
    }

    .card-database-search-form .mobile-card-filter {
        grid-column: 1 / -1;
        width: 100%;
        max-width: none;
    }

    .card-database-search-form:not(.is-mobile-filters-open):not(.mobile-filters-active) .mobile-card-filter {
        display: none;
    }

    .card-database-search-form .advanced-filter-panel,
    .card-database-search-form .search-helper {
        margin-top: 0.55rem;
    }

    .card-column-picker {
        max-height: 11rem;
        overflow: auto;
        padding: 0.65rem;
        border: 1px solid var(--tracker-border);
        border-radius: 8px;
    }

    .card-mobile-add-cta {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }

    .collection-mobile-jump-nav {
        position: sticky;
        top: 0.5rem;
        z-index: 12;
        display: flex;
        gap: 0.4rem;
        margin-bottom: 0.75rem;
        padding: 0.45rem;
        overflow-x: auto;
        border: 1px solid var(--tracker-border);
        border-radius: 10px;
        background: rgba(255, 255, 255, 0.96);
        box-shadow: 0 8px 20px rgba(8, 14, 40, 0.1);
    }

    .collection-mobile-jump-nav a {
        display: inline-flex;
        align-items: center;
        min-height: 2.5rem;
        padding: 0.45rem 0.65rem;
        border-radius: 8px;
        background: var(--tracker-surface);
        color: var(--tracker-navy);
        font-weight: 900;
        text-decoration: none;
        white-space: nowrap;
    }

    .how-to-shell article,
    .how-to-shell article > *,
    .how-to-workspace-demo,
    .how-to-workspace-demo > * {
        min-width: 0;
        max-width: 100%;
    }

    .how-to-static-table {
        width: 100%;
        min-width: 42rem;
    }

    .scanner-camera-stage {
        min-height: min(24rem, 52svh);
    }

    /* Individual deck: compact overview, usable tabs, and an accessible search drawer. */
    .deck-workbench-shell {
        padding-bottom: calc(5.75rem + env(safe-area-inset-bottom, 0));
    }

    .deck-workbench-summary {
        gap: 0.75rem;
    }

    .deck-summary-identity h1 {
        font-size: clamp(1.55rem, 7vw, 2rem);
    }

    .deck-summary-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.5rem;
    }

    .deck-summary-actions > a,
    .deck-summary-actions > form,
    .deck-summary-actions > details,
    .deck-summary-actions .btn {
        width: 100%;
        margin: 0;
    }

    .deck-summary-actions > form:last-child {
        grid-column: 1 / -1;
    }

    .deck-summary-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.5rem;
    }

    .deck-summary-metric {
        min-height: 0;
        padding: 0.65rem;
    }

    .deck-summary-metric:last-child {
        grid-column: 1 / -1;
    }

    .deck-summary-state {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
    }

    .deck-mobile-page-tabs {
        display: flex;
        gap: 0.35rem;
        margin-bottom: 0.75rem;
        padding: 0.4rem;
        overflow-x: auto;
        border: 1px solid var(--tracker-border);
        border-radius: 10px;
        background: rgba(255, 255, 255, 0.96);
    }

    .deck-mobile-page-tabs a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 1 0 auto;
        min-height: 2.6rem;
        padding: 0.45rem 0.65rem;
        border-radius: 8px;
        color: var(--tracker-muted);
        font-size: 0.86rem;
        font-weight: 900;
        text-decoration: none;
        white-space: nowrap;
    }

    .deck-mobile-page-tabs a.is-active {
        background: var(--tracker-navy);
        color: #ffffff;
    }

    .deck-document-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .deck-document-actions .btn {
        width: 100%;
    }

    .deck-workspace-panel {
        padding: 0.75rem;
    }

    .deck-workspace-pane-left {
        --deck-workspace-pane-padding: 0.75rem;
    }

    .deck-workspace-viewbar {
        position: sticky;
        top: 0.5rem;
        z-index: 15;
        display: block;
        padding: 0.45rem;
        border: 1px solid var(--tracker-border);
        border-radius: 9px;
        background: rgba(255, 255, 255, 0.96);
    }

    .deck-workspace-viewbar > .deck-workspace-viewbar-group:first-child,
    .deck-workspace-viewbar-actions,
    .deck-workspace-viewbar-label,
    [data-deck-art-layout-controls],
    .deck-art-stack-button {
        display: none;
    }

    .deck-workspace-viewbar-group[data-deck-workspace-global-deck-controls] {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
    }

    .deck-workspace-grid,
    .deck-workspace-grid[data-workspace-split] {
        min-height: 0;
    }

    .deck-workspace-pane-left {
        min-height: 0;
    }

    .deck-mobile-workspace-nav {
        position: fixed;
        right: 0.5rem;
        bottom: max(0.5rem, env(safe-area-inset-bottom, 0));
        left: 0.5rem;
        z-index: 750;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.25rem;
        padding: 0.4rem;
        border: 1px solid rgba(0, 212, 255, 0.34);
        border-radius: 14px;
        background: rgba(8, 14, 40, 0.97);
        box-shadow: 0 16px 38px rgba(8, 14, 40, 0.34);
    }

    .deck-mobile-workspace-nav button {
        min-width: 0;
        min-height: 3rem;
        padding: 0.35rem 0.15rem;
        border: 0;
        border-radius: 9px;
        background: transparent;
        color: var(--tracker-light-muted);
        font-size: clamp(0.68rem, 2.7vw, 0.8rem);
        font-weight: 900;
        line-height: 1.1;
    }

    .deck-mobile-workspace-nav button.is-active {
        background: var(--tracker-blue);
        color: #ffffff;
    }

    body.deck-mobile-search-open .deck-mobile-workspace-nav {
        opacity: 0;
        pointer-events: none;
    }

    body.deck-mobile-search-open .sidebar-toggle {
        opacity: 0;
        pointer-events: none;
    }

    .deck-mobile-search-backdrop {
        position: fixed;
        inset: 0;
        z-index: 1050;
        display: block;
        border: 0;
        background: rgba(8, 14, 40, 0.62);
        opacity: 0;
        pointer-events: none;
        transition: opacity 180ms ease;
    }

    .deck-workspace-grid.is-search-panel-open .deck-mobile-search-backdrop {
        opacity: 1;
        pointer-events: auto;
    }

    .deck-workspace-pane-right,
    .deck-workspace-pane-right.is-floating-search-tile {
        position: fixed !important;
        inset: max(0.35rem, env(safe-area-inset-top, 0)) 0.35rem max(0.35rem, env(safe-area-inset-bottom, 0)) !important;
        z-index: 1060;
        grid-template-rows: auto minmax(0, 1fr);
        width: auto !important;
        height: auto !important;
        max-width: none;
        max-height: none;
        padding: 0.75rem;
        overflow: hidden;
        border-radius: 14px;
        background: #ffffff;
        opacity: 0;
        pointer-events: none;
        transform: translateY(105%);
        transition: transform 180ms ease, opacity 180ms ease;
    }

    .deck-workspace-grid.is-search-panel-open .deck-workspace-pane-right {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
    }

    .deck-workspace-pane-right .deck-workspace-pane-header {
        min-height: 0;
        padding-bottom: 0.55rem;
        border-bottom: 1px solid var(--tracker-border);
    }

    .deck-workspace-pane-right .deck-workspace-pane-title-row {
        align-items: center;
    }

    .deck-workspace-pane-right .deck-workspace-pane-title-row h2 {
        font-size: 1.1rem;
    }

    .deck-search-panel-close {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 4rem;
    }

    .deck-workspace-pane-right > .deck-workspace-view {
        min-height: 0;
        overflow: auto;
        overscroll-behavior: contain;
    }

    .deck-workspace-pane-right .deck-workspace-view[data-deck-workspace-view="card-search"] {
        overflow: hidden;
    }

    .deck-card-search-form {
        padding-bottom: 0.55rem;
    }

    .deck-card-search-form .search-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0.5rem;
    }

    .deck-card-search-form [data-deck-import-text],
    .deck-card-search-form #deckCardSearch {
        grid-column: 1;
        grid-row: 1;
    }

    .deck-card-search-form .search-row > button[type="submit"] {
        grid-column: 2;
        grid-row: 1;
        width: auto;
    }

    .deck-mobile-search-filter-toggle {
        display: inline-flex;
        grid-column: 1;
        grid-row: 2;
        align-items: center;
        justify-content: center;
    }

    .deck-card-search-form .search-row > a.btn {
        grid-column: 2;
        grid-row: 2;
        width: auto;
    }

    .deck-card-search-form:not(.is-mobile-filters-open) .deck-card-search-scope,
    .deck-card-search-form:not(.is-mobile-filters-open) #deckCardSetId,
    .deck-card-search-form:not(.is-mobile-filters-open) #deckCardSortOrder,
    .deck-card-search-form:not(.is-mobile-filters-open) .deck-search-guidance {
        display: none;
    }

    .deck-card-search-form .deck-card-search-scope,
    .deck-card-search-form #deckCardSetId,
    .deck-card-search-form #deckCardSortOrder,
    .deck-card-search-form .deck-search-guidance {
        grid-column: 1 / -1;
        width: 100%;
        max-width: none;
    }

    .deck-workspace-pane-right [data-deck-card-search-results-region] {
        min-height: 0;
        overflow: hidden;
    }

    .deck-workspace-pane-right .deck-search-gallery-shell,
    .deck-workspace-panel .deck-search-art-gallery.deck-search-name-groups {
        min-height: 0;
        overflow: auto;
    }

    .deck-workspace-panel .deck-search-name-group .deck-search-printings-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: visible;
    }

    .deck-search-art-actions .btn {
        flex-basis: 100%;
    }

    .deck-list-card-main {
        grid-column: 2;
    }

    .deck-list-card-counts,
    .deck-list-card-actions {
        grid-column: 1 / -1;
    }

    .summary-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 370px) {
    .deck-workspace-panel .deck-search-name-group .deck-search-printings-grid,
    .summary-stats {
        grid-template-columns: 1fr;
    }

    .deck-mobile-workspace-nav {
        right: 0.25rem;
        left: 0.25rem;
        padding: 0.25rem;
    }
}

@media (max-width: 576px) {
    .tracker-shell,
    body.sidebar-collapsed .tracker-shell {
        margin-right: 0.45rem;
        margin-left: 0.45rem;
    }

    .tracker-panel,
    .tracker-hero {
        padding: 0.85rem;
    }

    .dashboard-bento-lead,
    .dashboard-launchpad,
    .dashboard-bento-work {
        gap: 0.7rem;
    }

    .dashboard-command-card {
        grid-template-columns: 1fr;
        min-height: 19rem;
        padding: 1.2rem;
    }

    .dashboard-command-card h1 {
        font-size: clamp(2rem, 11vw, 2.65rem);
    }

    .dashboard-command-intro {
        max-width: 100%;
        font-size: 0.88rem;
    }

    .dashboard-command-spotlight {
        width: 100%;
        padding: 0.75rem;
    }

    .dashboard-card-fan {
        display: none;
    }

    .dashboard-launchpad {
        grid-template-rows: repeat(2, minmax(7.5rem, 1fr));
    }

    .dashboard-action-card {
        grid-template-columns: auto minmax(0, 1fr);
        gap: 0.55rem;
        min-height: 7.5rem;
        padding: 0.75rem;
    }

    .dashboard-action-icon {
        width: 2.25rem;
        height: 2.25rem;
        border-radius: 10px;
    }

    .dashboard-action-icon svg {
        width: 1.2rem;
        height: 1.2rem;
    }

    .dashboard-action-content > span {
        font-size: 0.62rem;
    }

    .dashboard-action-content > strong {
        font-size: 1.3rem;
    }

    .dashboard-action-content > small {
        font-size: 0.66rem;
    }

    .dashboard-action-arrow {
        position: absolute;
        top: 0.65rem;
        right: 0.65rem;
    }

    .dashboard-setup-card,
    .dashboard-bento-card {
        padding: 0.85rem;
        border-radius: 14px;
    }

    .dashboard-setup-heading,
    .dashboard-section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .dashboard-section-heading-line {
        display: none;
    }

    .dashboard-bento-card-header {
        gap: 0.5rem;
    }

    .dashboard-command-spotlight > a,
    .dashboard-command-spotlight span > a,
    .dashboard-bento-card-header > a,
    .dashboard-bento-card-links a,
    .dashboard-visual-empty-state a {
        min-height: 2.75rem;
    }

    .dashboard-deck-mosaic {
        grid-template-columns: 1fr;
    }

    .dashboard-deck-card-featured {
        grid-column: auto;
        min-height: 7.75rem;
    }

    .dashboard-deck-card-featured .dashboard-progress-ring {
        width: 4.5rem;
    }

    .dashboard-collection-summary > .dashboard-collection-primary > strong {
        font-size: 2.1rem;
    }

    .dashboard-binder-strip {
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: minmax(11rem, 76%);
        margin: -0.4rem;
        padding: 0.4rem;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x proximity;
    }

    .dashboard-binder-card {
        scroll-snap-align: start;
    }
}

@media (max-width: 768px) and (pointer: coarse) {
    .binder-panel-width-options,
    .deck-panel-width-options,
    .binder-panel-drag-handle,
    .deck-panel-drag-handle,
    .deck-workspace-size-controls,
    .deck-search-float-toggle,
    .deck-workspace-resizer,
    .deck-search-tile-resize-handle {
        display: none !important;
    }
}

/* Missing-card shopping and acquisition workflow. */
.missing-card-shell {
    padding-bottom: 3rem;
}

.missing-card-header-panel .panel-header,
.missing-card-list-panel .panel-header {
    align-items: flex-start;
}

.missing-card-print-heading,
.missing-card-print-check-column {
    display: none;
}

.missing-card-summary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 1rem;
}

.missing-card-summary-grid > div {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-radius: var(--tracker-radius-md);
    background: var(--tracker-surface);
}

.missing-card-summary-grid span,
.missing-card-printing,
.acquisition-reminder-heading span,
.acquisition-reminder-heading time,
.missing-card-table td small {
    color: var(--tracker-muted);
    font-size: 0.82rem;
}

.missing-card-summary-grid strong {
    font-size: 1.8rem;
}

.missing-card-printing,
.missing-card-table td > span,
.missing-card-table td > small {
    display: block;
}

.missing-card-destinations {
    display: grid;
    gap: 0.4rem;
    min-width: 14rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.missing-card-destinations li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0.25rem 0.75rem;
}

.missing-card-destinations li span {
    color: var(--tracker-muted);
    font-size: 0.78rem;
}

.missing-card-buy-count {
    display: inline-grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 999px;
    background: rgba(255, 209, 102, 0.34);
    font-size: 1.1rem;
}

.missing-card-purchase-form {
    display: grid;
    gap: 0.55rem;
    min-width: 10.5rem;
}

.missing-card-purchase-form label {
    display: grid;
    gap: 0.2rem;
    color: var(--tracker-muted);
    font-size: 0.75rem;
    font-weight: 700;
}

.missing-card-purchased-button {
    min-height: 2.75rem;
    font-weight: 800;
}

.acquisition-reminder-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
    gap: 1rem;
}

.acquisition-reminder-card {
    display: grid;
    align-content: start;
    gap: 0.85rem;
    padding: 1rem;
    border: 1px solid var(--tracker-border);
    border-left: 0.3rem solid var(--tracker-success);
    border-radius: var(--tracker-radius-md);
    background: #fff;
    box-shadow: 0 10px 28px rgba(8, 14, 40, 0.08);
}

.acquisition-reminder-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.acquisition-reminder-heading > div,
.acquisition-reminder-heading .card-name {
    display: block;
}

.acquisition-reminder-heading time {
    flex: 0 0 auto;
}

.acquisition-snapshot,
.acquisition-reminder-card .helper-copy {
    margin: 0;
    color: var(--tracker-muted);
    font-size: 0.88rem;
}

.acquisition-destination-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.45rem;
}

.acquisition-history-list {
    display: grid;
    gap: 0.45rem;
    margin: 0.75rem 0 0;
}

.acquisition-history-list li {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

@media (max-width: 768px) {
    .missing-card-summary-grid {
        grid-template-columns: 1fr 1fr;
    }

    .missing-card-screen-actions {
        width: 100%;
    }

    .missing-card-screen-actions .btn {
        flex: 1 1 auto;
    }

    .missing-card-table-wrap {
        overflow: visible;
    }

    .missing-card-table,
    .missing-card-table tbody,
    .missing-card-table tr,
    .missing-card-table td {
        display: block;
        width: 100%;
    }

    .missing-card-table thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
    }

    .missing-card-table tr {
        margin-bottom: 1rem;
        padding: 0.9rem;
        border: 1px solid var(--tracker-border);
        border-radius: var(--tracker-radius-md);
        background: #fff;
        box-shadow: 0 10px 28px rgba(8, 14, 40, 0.08);
    }

    .missing-card-table td {
        display: grid;
        grid-template-columns: minmax(6.5rem, 0.36fr) minmax(0, 1fr);
        gap: 0.75rem;
        padding: 0.55rem 0;
        border: 0;
    }

    .missing-card-table td::before {
        content: attr(data-label);
        color: var(--tracker-muted);
        font-size: 0.72rem;
        font-weight: 800;
        letter-spacing: 0.04em;
        text-transform: uppercase;
    }

    .missing-card-table td:last-child {
        display: block;
    }

    .missing-card-purchase-form {
        grid-template-columns: 1fr;
    }

    .missing-card-purchased-button {
        min-height: 3.25rem;
        font-size: 1rem;
    }

    .acquisition-reminder-heading {
        flex-direction: column;
    }
}

@media print {
    @page {
        size: portrait;
        margin: 0.45in;
    }

    body.missing-card-print-view {
        background: #fff !important;
        color: #000;
        font-size: 9pt;
    }

    .missing-card-print-view .missing-card-screen-only,
    .missing-card-print-view .site-footer,
    .missing-card-print-view .mobile-bottom-nav,
    .missing-card-print-view .sidebar-toggle {
        display: none !important;
    }

    .missing-card-print-view .missing-card-shell {
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .missing-card-print-view .tracker-panel {
        margin: 0 0 0.18in;
        padding: 0;
        border: 0;
        box-shadow: none;
        background: #fff;
    }

    .missing-card-print-view .missing-card-header-panel .panel-header p,
    .missing-card-print-view .missing-card-header-panel .section-kicker,
    .missing-card-print-view .missing-card-summary-grid > div:not(:first-child),
    .missing-card-print-view .missing-card-list-panel .panel-header p {
        display: none;
    }

    .missing-card-print-view h1 {
        margin: 0;
        font-size: 18pt;
    }

    .missing-card-print-heading {
        display: flex;
        justify-content: space-between;
        margin: 0.08in 0;
    }

    .missing-card-print-view .missing-card-summary-grid {
        display: block;
        margin: 0.05in 0 0.12in;
    }

    .missing-card-print-view .missing-card-summary-grid > div {
        display: inline-flex;
        flex-direction: row;
        gap: 0.08in;
        padding: 0;
        border: 0;
        background: #fff;
    }

    .missing-card-print-view .missing-card-summary-grid strong {
        font-size: 9pt;
    }

    .missing-card-print-view .missing-card-table-wrap {
        overflow: visible;
    }

    .missing-card-print-view .missing-card-table {
        width: 100%;
        margin: 0;
        table-layout: fixed;
        border-collapse: collapse;
    }

    .missing-card-print-view .missing-card-table th,
    .missing-card-print-view .missing-card-table td {
        padding: 0.06in;
        border: 1px solid #777;
        color: #000;
        vertical-align: top;
    }

    .missing-card-print-view .missing-card-table th:nth-child(1) { width: 0.65in; }
    .missing-card-print-view .missing-card-table th:nth-child(2) { width: 2.1in; }
    .missing-card-print-view .missing-card-table th:nth-child(4) { width: 1in; }
    .missing-card-print-view .missing-card-table th:nth-child(5) { width: 0.45in; }

    .missing-card-print-view .missing-card-print-check-column {
        display: table-cell;
    }

    .missing-card-print-checkboxes {
        display: inline-block;
        margin-right: 0.05in;
        font-size: 13pt;
        line-height: 1;
    }

    .missing-card-print-view a {
        color: #000;
        text-decoration: none;
    }

    .missing-card-print-view tr,
    .missing-card-print-view li {
        break-inside: avoid;
    }
}

/* Compact, action-first dashboard */
.dashboard-v2-shell {
    padding-bottom: 2rem;
}

.dashboard-v2-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(22rem, 0.85fr);
    gap: 1.25rem;
    min-height: 10rem;
    margin-bottom: 0.8rem;
    padding: 1.25rem 1.35rem;
    overflow: hidden;
    border: 1px solid rgba(0, 212, 255, 0.24);
    border-radius: 18px;
    background:
        radial-gradient(circle at 88% 12%, rgba(0, 212, 255, 0.2), transparent 33%),
        linear-gradient(130deg, #0a1230 0%, #142b68 58%, #40259b 100%);
    box-shadow: 0 16px 38px rgba(8, 14, 40, 0.2);
}

.dashboard-v2-hero::before {
    position: absolute;
    inset: 0;
    background: linear-gradient(105deg, rgba(255, 255, 255, 0.05), transparent 42%);
    content: "";
    pointer-events: none;
}

.dashboard-v2-hero-solo {
    grid-template-columns: minmax(0, 42rem);
}

.dashboard-v2-command {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    gap: 0.6rem;
}

.dashboard-v2-eyebrow {
    margin: 0;
    color: var(--tracker-cyan);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.dashboard-v2-command h1 {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: clamp(0.92rem, 1.5vw, 1.08rem);
    line-height: 1.2;
}

.dashboard-v2-next {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 0.7rem;
    align-items: center;
}

.dashboard-v2-next > span {
    padding: 0.28rem 0.5rem;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.09);
    color: rgba(255, 255, 255, 0.75);
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.dashboard-v2-next > div {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.8rem;
    align-items: baseline;
}

.dashboard-v2-next strong {
    color: #ffffff;
    font-size: clamp(1.25rem, 2.5vw, 1.7rem);
    line-height: 1.08;
}

.dashboard-v2-next a {
    color: var(--tracker-cyan);
    font-size: 0.76rem;
    font-weight: 900;
    text-decoration: none;
}

.dashboard-v2-command-row {
    display: flex;
    gap: 0.55rem;
    align-items: center;
    margin-top: 0.1rem;
}

.dashboard-v2-search {
    display: flex;
    flex: 1 1 15rem;
    align-items: center;
    max-width: 23rem;
    min-height: 2.45rem;
    padding: 0 0.7rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 6px 16px rgba(2, 8, 28, 0.18);
}

.dashboard-v2-search svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    fill: none;
    stroke: var(--tracker-blue);
    stroke-linecap: round;
    stroke-width: 2;
}

.dashboard-v2-search input {
    width: 100%;
    min-width: 0;
    padding: 0.45rem 0.55rem;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--tracker-ink);
    font-size: 0.82rem;
}

.dashboard-v2-search:focus-within {
    border-color: var(--tracker-cyan);
    box-shadow: 0 0 0 3px rgba(0, 212, 255, 0.22);
}

.dashboard-v2-new-deck {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 0.35rem;
    align-items: center;
    min-height: 2.45rem;
    padding: 0.45rem 0.75rem;
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 10px;
    color: #ffffff;
    font-size: 0.78rem;
    font-weight: 900;
    text-decoration: none;
}

.dashboard-v2-new-deck:hover,
.dashboard-v2-new-deck:focus {
    border-color: var(--tracker-cyan);
    background: rgba(0, 212, 255, 0.1);
    color: #ffffff;
}

.dashboard-v2-featured {
    --dashboard-ring-color: var(--tracker-cyan);
    --dashboard-ring-track: rgba(255, 255, 255, 0.18);
    --dashboard-ring-center: #17245d;
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 8.25rem minmax(0, 1fr) auto;
    gap: 0.85rem;
    align-items: center;
    min-width: 0;
    padding: 0.7rem 0.8rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 15px;
    background: rgba(6, 15, 52, 0.36);
    color: #ffffff;
    text-decoration: none;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(8px);
    transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.dashboard-v2-card-stack {
    position: relative;
    display: block;
    width: 8rem;
    height: 7.4rem;
}

.dashboard-v2-card-stack > img,
.dashboard-v2-card-stack > span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 4.25rem;
    aspect-ratio: 5 / 7;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 6px;
    background:
        radial-gradient(circle at 50% 34%, rgba(255, 255, 255, 0.72) 0 10%, transparent 11%),
        linear-gradient(160deg, var(--tracker-cyan), var(--tracker-blue) 50%, var(--tracker-purple));
    object-fit: cover;
    box-shadow: 0 12px 24px rgba(2, 8, 28, 0.36);
}

.dashboard-v2-card-stack > :nth-child(1) {
    transform: translate(-72%, -48%) rotate(-11deg);
}

.dashboard-v2-card-stack > :nth-child(2) {
    z-index: 2;
    transform: translate(-50%, -54%) rotate(0);
}

.dashboard-v2-card-stack > :nth-child(3) {
    z-index: 1;
    transform: translate(-28%, -48%) rotate(11deg);
}

.dashboard-v2-card-stack > :only-child {
    transform: translate(-50%, -52%) rotate(-2deg);
}

.dashboard-v2-featured-copy {
    display: grid;
    justify-items: start;
    gap: 0.3rem;
    min-width: 0;
}

.dashboard-v2-featured-copy > small {
    color: var(--tracker-cyan);
    font-size: 0.65rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dashboard-v2-featured-copy > strong {
    max-width: 100%;
    overflow: hidden;
    color: #ffffff;
    font-size: clamp(0.95rem, 1.6vw, 1.2rem);
    line-height: 1.15;
    text-overflow: ellipsis;
}

.dashboard-v2-featured .dashboard-progress-ring {
    width: 3.8rem;
}

.dashboard-v2-featured .dashboard-progress-ring strong {
    color: #ffffff;
    font-size: 0.76rem;
}

.dashboard-v2-shortcuts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.65rem;
    margin-bottom: 0.8rem;
}

.dashboard-v2-shortcuts > a {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.55rem;
    align-items: center;
    min-height: 3.65rem;
    padding: 0.65rem 0.75rem;
    border: 1px solid var(--tracker-border);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.92);
    color: var(--tracker-ink);
    text-decoration: none;
    box-shadow: 0 7px 18px rgba(8, 14, 40, 0.07);
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.dashboard-v2-shortcut-icon {
    display: grid;
    place-items: center;
    width: 2.15rem;
    height: 2.15rem;
    border-radius: 9px;
    background: rgba(45, 120, 255, 0.1);
    color: var(--tracker-blue);
}

.dashboard-v2-shortcuts > a:nth-child(2) .dashboard-v2-shortcut-icon {
    background: rgba(75, 226, 181, 0.18);
    color: #12715c;
}

.dashboard-v2-shortcuts > a:nth-child(3) .dashboard-v2-shortcut-icon {
    background: rgba(106, 58, 255, 0.11);
    color: var(--tracker-purple);
}

.dashboard-v2-shortcuts > a:nth-child(4) .dashboard-v2-shortcut-icon {
    background: rgba(0, 212, 255, 0.13);
    color: #007994;
}

.dashboard-v2-shortcut-icon svg {
    width: 1.15rem;
    height: 1.15rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.dashboard-v2-shortcuts > a > span:nth-child(2) {
    overflow: hidden;
    font-size: 0.78rem;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-v2-shortcuts > a > strong {
    color: var(--tracker-blue);
    font-size: 1rem;
}

.dashboard-v2-setup {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.8rem;
    align-items: center;
    margin-bottom: 0.8rem;
    padding: 0.75rem 0.9rem;
    border: 1px solid rgba(45, 120, 255, 0.2);
    border-radius: 13px;
    background: linear-gradient(110deg, rgba(45, 120, 255, 0.08), rgba(0, 212, 255, 0.06)), #ffffff;
    box-shadow: 0 7px 18px rgba(8, 14, 40, 0.06);
}

.dashboard-v2-setup-progress {
    display: flex;
    gap: 0.25rem;
}

.dashboard-v2-setup-progress i {
    width: 1.25rem;
    height: 0.32rem;
    border-radius: 999px;
    background: var(--tracker-border);
}

.dashboard-v2-setup-progress i.is-complete {
    background: linear-gradient(90deg, var(--tracker-cyan), var(--tracker-blue));
}

.dashboard-v2-setup-copy {
    display: grid;
    gap: 0.08rem;
    min-width: 0;
}

.dashboard-v2-setup-copy small {
    color: var(--tracker-muted);
    font-size: 0.65rem;
}

.dashboard-v2-setup-copy strong {
    color: var(--tracker-ink);
    font-size: 0.86rem;
}

.dashboard-v2-setup > a {
    color: var(--tracker-blue);
    font-size: 0.76rem;
    font-weight: 900;
    text-decoration: none;
}

.dashboard-v2-workspace {
    margin-bottom: 1.25rem;
}

.dashboard-v2-workspace-grid {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(18rem, 5fr);
    gap: 0.8rem;
    align-items: start;
}

.dashboard-v2-workspace-single .dashboard-v2-side {
    grid-column: 1 / -1;
    grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.dashboard-v2-side {
    display: grid;
    gap: 0.8rem;
}

.dashboard-v2-workspace .dashboard-bento-card {
    grid-area: auto;
    gap: 0.75rem;
    padding: 0.9rem;
    border-radius: 14px;
    box-shadow: 0 8px 22px rgba(8, 14, 40, 0.07);
}

.dashboard-v2-workspace .dashboard-bento-card-header {
    align-items: center;
}

.dashboard-v2-workspace .dashboard-bento-card-header h2 {
    margin: 0;
    font-size: 0.98rem;
}

.dashboard-v2-workspace .dashboard-bento-card-header > a {
    color: var(--tracker-blue);
    font-size: 0.75rem;
    font-weight: 900;
    text-decoration: none;
}

.dashboard-v2-workspace .dashboard-deck-mosaic {
    gap: 0.6rem;
}

.dashboard-v2-workspace .dashboard-deck-card {
    min-height: 5.75rem;
    padding: 0.75rem;
}

.dashboard-v2-workspace .dashboard-progress-ring {
    width: 3.6rem;
}

.dashboard-v2-workspace .dashboard-activity-item {
    min-height: 3rem;
    padding: 0.4rem 0;
}

.dashboard-v2-workspace .dashboard-collection-summary > .dashboard-collection-primary {
    padding: 0.65rem 0.75rem;
}

.dashboard-v2-workspace .dashboard-collection-primary > strong {
    font-size: 2rem;
}

.dashboard-v2-featured:hover,
.dashboard-v2-featured:focus,
.dashboard-v2-shortcuts > a:hover,
.dashboard-v2-shortcuts > a:focus {
    border-color: var(--tracker-cyan);
    box-shadow: 0 10px 24px rgba(8, 14, 40, 0.14);
    transform: translateY(-1px);
}

.dashboard-v2-featured:focus-visible,
.dashboard-v2-shortcuts > a:focus-visible,
.dashboard-v2-setup > a:focus-visible,
.dashboard-v2-workspace a:focus-visible,
.dashboard-v2-new-deck:focus-visible {
    outline: 3px solid var(--tracker-cyan);
    outline-offset: 2px;
}

@media (max-width: 980px) {
    .dashboard-v2-hero {
        grid-template-columns: 1fr;
    }

    .dashboard-v2-featured {
        grid-template-columns: 7.5rem minmax(0, 1fr) auto;
    }

    .dashboard-v2-card-stack {
        width: 7.25rem;
        height: 6.5rem;
    }

    .dashboard-v2-card-stack > img,
    .dashboard-v2-card-stack > span {
        width: 3.8rem;
    }

    .dashboard-v2-workspace-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-v2-side {
        grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr));
    }
}

@media (max-width: 700px) {
    .dashboard-v2-shortcuts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-v2-workspace .dashboard-deck-mosaic {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .dashboard-v2-hero {
        gap: 0.9rem;
        min-height: 0;
        padding: 1rem;
        border-radius: 15px;
    }

    .dashboard-v2-command {
        gap: 0.52rem;
    }

    .dashboard-v2-command h1 {
        font-size: 0.94rem;
    }

    .dashboard-v2-next {
        align-items: flex-start;
        flex-direction: column;
    }

    .dashboard-v2-command-row {
        align-items: stretch;
        flex-direction: column;
    }

    .dashboard-v2-search {
        flex-basis: auto;
        width: 100%;
        max-width: none;
    }

    .dashboard-v2-new-deck {
        justify-content: center;
    }

    .dashboard-v2-featured {
        grid-template-columns: 5.7rem minmax(0, 1fr) auto;
        gap: 0.55rem;
        padding: 0.6rem;
    }

    .dashboard-v2-card-stack {
        width: 5.5rem;
        height: 5.3rem;
    }

    .dashboard-v2-card-stack > img,
    .dashboard-v2-card-stack > span {
        width: 3rem;
        border-radius: 4px;
    }

    .dashboard-v2-featured .dashboard-progress-ring {
        width: 3.2rem;
    }

    .dashboard-v2-featured-copy > strong {
        font-size: 0.88rem;
    }

    .dashboard-v2-shortcuts {
        gap: 0.5rem;
    }

    .dashboard-v2-shortcuts > a {
        min-height: 3.25rem;
        padding: 0.55rem 0.6rem;
    }

    .dashboard-v2-shortcut-icon {
        width: 1.9rem;
        height: 1.9rem;
    }

    .dashboard-v2-setup {
        grid-template-columns: auto minmax(0, 1fr);
        gap: 0.55rem 0.7rem;
    }

    .dashboard-v2-setup > a {
        grid-column: 2;
    }

    .dashboard-v2-side,
    .dashboard-v2-workspace-single .dashboard-v2-side {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 390px) {
    .dashboard-v2-featured {
        grid-template-columns: 4.6rem minmax(0, 1fr);
    }

    .dashboard-v2-card-stack {
        width: 4.4rem;
    }

    .dashboard-v2-featured .dashboard-progress-ring {
        display: none;
    }

    .dashboard-v2-shortcuts > a {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .dashboard-v2-shortcuts > a > strong {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dashboard-v2-featured,
    .dashboard-v2-shortcuts > a {
        transition: none;
    }
}

/* Dashboard collection showcase */
.dashboard-showcase-shell {
    --dashboard-showcase-navy: #07132f;
    --dashboard-showcase-indigo: #182e72;
    --dashboard-showcase-cyan: #55e4ff;
    --dashboard-showcase-mint: #7ff4cb;
    --dashboard-showcase-surface: rgba(255, 255, 255, 0.94);
    padding-bottom: 3rem;
}

.dashboard-showcase-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(24rem, 0.95fr);
    gap: clamp(1.5rem, 4vw, 4rem);
    align-items: center;
    min-height: 25rem;
    margin-bottom: 1rem;
    padding: clamp(1.6rem, 4vw, 3.4rem);
    overflow: hidden;
    border: 1px solid rgba(85, 228, 255, 0.25);
    border-radius: 28px;
    background:
        radial-gradient(circle at 78% 24%, rgba(85, 228, 255, 0.2), transparent 24rem),
        radial-gradient(circle at 16% 112%, rgba(116, 78, 255, 0.52), transparent 30rem),
        linear-gradient(135deg, var(--dashboard-showcase-navy), var(--dashboard-showcase-indigo) 64%, #4d2599);
    box-shadow: 0 24px 54px rgba(7, 19, 47, 0.23);
    isolation: isolate;
}

.dashboard-showcase-hero::before,
.dashboard-showcase-hero::after {
    position: absolute;
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.dashboard-showcase-hero::before {
    top: -9rem;
    right: -5rem;
    width: 23rem;
    height: 23rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow:
        0 0 0 3rem rgba(255, 255, 255, 0.018),
        0 0 0 6rem rgba(255, 255, 255, 0.012);
}

.dashboard-showcase-hero::after {
    bottom: -10rem;
    left: 28%;
    z-index: -1;
    width: 22rem;
    height: 22rem;
    background: rgba(0, 212, 255, 0.08);
    filter: blur(20px);
}

.dashboard-showcase-copy {
    position: relative;
    z-index: 2;
    display: grid;
    gap: 1rem;
    min-width: 0;
}

.dashboard-showcase-greeting {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
    margin: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.82rem;
}

.dashboard-showcase-greeting strong {
    color: #fff;
    font-weight: 850;
}

.dashboard-showcase-kicker,
.dashboard-showcase-section-heading p {
    margin: 0 0 0.22rem;
    color: var(--tracker-blue);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.dashboard-showcase-kicker {
    color: var(--dashboard-showcase-cyan);
}

.dashboard-showcase-copy h1 {
    max-width: 13ch;
    margin: 0;
    color: #fff;
    font-size: clamp(2rem, 4.3vw, 3.6rem);
    font-weight: 900;
    letter-spacing: -0.045em;
    line-height: 0.98;
    text-wrap: balance;
}

.dashboard-showcase-supporting {
    max-width: 36rem;
    margin: 0.7rem 0 0;
    color: rgba(255, 255, 255, 0.74);
    font-size: clamp(0.88rem, 1.5vw, 1rem);
    line-height: 1.6;
}

.dashboard-showcase-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    align-items: center;
}

.dashboard-showcase-primary-action,
.dashboard-showcase-secondary-action,
.dashboard-showcase-text-action {
    display: inline-flex;
    gap: 0.45rem;
    align-items: center;
    justify-content: center;
    min-height: 2.85rem;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 900;
    text-decoration: none;
    transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.dashboard-showcase-primary-action {
    padding: 0.65rem 1.15rem;
    border: 1px solid var(--dashboard-showcase-cyan);
    background: var(--dashboard-showcase-cyan);
    color: #07132f;
    box-shadow: 0 9px 24px rgba(85, 228, 255, 0.2);
}

.dashboard-showcase-secondary-action {
    padding: 0.65rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.dashboard-showcase-text-action {
    min-height: 2.4rem;
    padding: 0.45rem 0.55rem;
    color: rgba(255, 255, 255, 0.76);
}

.dashboard-showcase-primary-action:hover,
.dashboard-showcase-primary-action:focus {
    background: #fff;
    color: #07132f;
    transform: translateY(-1px);
}

.dashboard-showcase-secondary-action:hover,
.dashboard-showcase-secondary-action:focus,
.dashboard-showcase-text-action:hover,
.dashboard-showcase-text-action:focus {
    border-color: var(--dashboard-showcase-cyan);
    color: var(--dashboard-showcase-cyan);
}

.dashboard-showcase-search {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    width: min(100%, 32rem);
    min-height: 3rem;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 12px 28px rgba(2, 8, 28, 0.22);
}

.dashboard-showcase-search svg {
    width: 1.1rem;
    height: 1.1rem;
    margin-left: 0.85rem;
    fill: none;
    stroke: var(--tracker-blue);
    stroke-linecap: round;
    stroke-width: 2;
}

.dashboard-showcase-search input {
    width: 100%;
    min-width: 0;
    padding: 0.72rem 0.7rem;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--tracker-ink);
    font-size: 0.86rem;
}

.dashboard-showcase-search button {
    align-self: stretch;
    padding: 0 1rem;
    border: 0;
    border-left: 1px solid var(--tracker-border);
    background: transparent;
    color: var(--tracker-blue);
    font-size: 0.76rem;
    font-weight: 900;
}

.dashboard-showcase-search:focus-within {
    border-color: var(--dashboard-showcase-cyan);
    box-shadow: 0 0 0 4px rgba(85, 228, 255, 0.18);
}

.dashboard-showcase-art {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    min-width: 0;
    min-height: 20rem;
    color: #fff;
    text-decoration: none;
}

.dashboard-showcase-art::before {
    position: absolute;
    inset: 9% 2% 8%;
    z-index: -1;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 25px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.1), rgba(5, 13, 42, 0.24));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
    content: "";
    backdrop-filter: blur(8px);
}

.dashboard-showcase-card-fan {
    position: relative;
    display: block;
    width: 100%;
    height: 15rem;
}

.dashboard-showcase-card-fan > img,
.dashboard-showcase-card-fan > span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: clamp(7.2rem, 11vw, 9.5rem);
    aspect-ratio: 5 / 7;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.46);
    border-radius: 9px;
    background:
        radial-gradient(circle at 50% 32%, rgba(255, 255, 255, 0.82) 0 8%, transparent 9%),
        linear-gradient(155deg, #55e4ff, #2d78ff 48%, #7a45ff);
    object-fit: cover;
    box-shadow: 0 22px 38px rgba(2, 8, 28, 0.42);
    transition: transform 180ms ease;
}

.dashboard-showcase-card-fan > :nth-child(1) {
    transform: translate(-106%, -43%) rotate(-16deg);
}

.dashboard-showcase-card-fan > :nth-child(2) {
    z-index: 2;
    transform: translate(-77%, -54%) rotate(-8deg);
}

.dashboard-showcase-card-fan > :nth-child(3) {
    z-index: 4;
    transform: translate(-50%, -59%);
}

.dashboard-showcase-card-fan > :nth-child(4) {
    z-index: 3;
    transform: translate(-23%, -54%) rotate(8deg);
}

.dashboard-showcase-card-fan > :nth-child(5) {
    z-index: 1;
    transform: translate(6%, -43%) rotate(16deg);
}

.dashboard-showcase-card-fan > :only-child {
    transform: translate(-50%, -55%) rotate(-2deg);
}

.dashboard-showcase-card-count-2 > :nth-child(1) {
    transform: translate(-70%, -51%) rotate(-9deg);
}

.dashboard-showcase-card-count-2 > :nth-child(2) {
    transform: translate(-30%, -56%) rotate(7deg);
}

.dashboard-showcase-card-count-3 > :nth-child(1) {
    transform: translate(-82%, -47%) rotate(-13deg);
}

.dashboard-showcase-card-count-3 > :nth-child(2) {
    transform: translate(-50%, -58%);
}

.dashboard-showcase-card-count-3 > :nth-child(3) {
    transform: translate(-18%, -47%) rotate(13deg);
}

.dashboard-showcase-card-count-4 > :nth-child(1) {
    transform: translate(-94%, -45%) rotate(-15deg);
}

.dashboard-showcase-card-count-4 > :nth-child(2) {
    transform: translate(-64%, -57%) rotate(-5deg);
}

.dashboard-showcase-card-count-4 > :nth-child(3) {
    transform: translate(-36%, -57%) rotate(5deg);
}

.dashboard-showcase-card-count-4 > :nth-child(4) {
    transform: translate(-6%, -45%) rotate(15deg);
}

.dashboard-showcase-art:hover .dashboard-showcase-card-fan > :nth-child(1),
.dashboard-showcase-art:focus .dashboard-showcase-card-fan > :nth-child(1) {
    transform: translate(-110%, -45%) rotate(-18deg);
}

.dashboard-showcase-art:hover .dashboard-showcase-card-fan > :nth-child(5),
.dashboard-showcase-art:focus .dashboard-showcase-card-fan > :nth-child(5) {
    transform: translate(10%, -45%) rotate(18deg);
}

.dashboard-showcase-art:hover .dashboard-showcase-card-count-2 > :nth-child(1),
.dashboard-showcase-art:focus .dashboard-showcase-card-count-2 > :nth-child(1) {
    transform: translate(-74%, -52%) rotate(-11deg);
}

.dashboard-showcase-art:hover .dashboard-showcase-card-count-3 > :nth-child(1),
.dashboard-showcase-art:focus .dashboard-showcase-card-count-3 > :nth-child(1) {
    transform: translate(-86%, -49%) rotate(-15deg);
}

.dashboard-showcase-art:hover .dashboard-showcase-card-count-4 > :nth-child(1),
.dashboard-showcase-art:focus .dashboard-showcase-card-count-4 > :nth-child(1) {
    transform: translate(-98%, -47%) rotate(-17deg);
}

.dashboard-showcase-art-footer {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: space-between;
    width: calc(100% - 3rem);
    margin: -0.15rem auto 0;
}

.dashboard-showcase-art-footer > span:first-child {
    display: grid;
    gap: 0.15rem;
    min-width: 0;
}

.dashboard-showcase-art-footer small {
    color: var(--dashboard-showcase-cyan);
    font-size: 0.63rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dashboard-showcase-art-footer strong {
    overflow: hidden;
    color: #fff;
    font-size: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-showcase-art .dashboard-progress-ring {
    --dashboard-ring-center: #16265c;
    --dashboard-ring-track: rgba(255, 255, 255, 0.18);
    width: 4.1rem;
    flex: 0 0 auto;
}

.dashboard-showcase-art .dashboard-progress-ring strong {
    color: #fff;
    font-size: 0.78rem;
}

.dashboard-showcase-celebration {
    position: absolute;
    top: 1.2rem;
    right: 1.2rem;
    z-index: 8;
    max-width: calc(100% - 2.4rem);
    padding: 0.4rem 0.7rem;
    border: 1px solid rgba(127, 244, 203, 0.35);
    border-radius: 999px;
    background: rgba(7, 19, 47, 0.66);
    color: var(--dashboard-showcase-mint);
    font-size: 0.66rem;
    font-weight: 900;
    box-shadow: 0 8px 20px rgba(2, 8, 28, 0.22);
    backdrop-filter: blur(8px);
}

.dashboard-showcase-starter-caption {
    width: calc(100% - 3rem);
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.78rem;
    font-weight: 800;
    text-align: center;
}

.dashboard-showcase-signals {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    margin: 0 0 1rem;
}

.dashboard-showcase-signals > a {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    min-width: 0;
    padding: 0.8rem 0.95rem;
    border: 1px solid var(--tracker-border);
    border-radius: 15px;
    background: var(--dashboard-showcase-surface);
    color: var(--tracker-ink);
    text-decoration: none;
    box-shadow: 0 7px 20px rgba(8, 14, 40, 0.065);
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.dashboard-showcase-signals > a:hover,
.dashboard-showcase-signals > a:focus {
    border-color: rgba(45, 120, 255, 0.45);
    box-shadow: 0 12px 26px rgba(8, 14, 40, 0.1);
    transform: translateY(-1px);
}

.dashboard-showcase-signal-icon {
    display: grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 auto;
    border-radius: 12px;
    font-size: 1rem;
    font-weight: 900;
}

.dashboard-showcase-signal-ready {
    background: rgba(75, 226, 181, 0.18);
    color: #08735a;
}

.dashboard-showcase-signal-missing {
    background: rgba(255, 180, 60, 0.17);
    color: #9a5700;
}

.dashboard-showcase-signal-new {
    background: rgba(106, 58, 255, 0.11);
    color: var(--tracker-purple);
}

.dashboard-showcase-signals > a > span:last-child {
    display: flex;
    gap: 0.35rem;
    align-items: baseline;
    min-width: 0;
}

.dashboard-showcase-signals strong {
    color: var(--tracker-ink);
    font-size: 1.3rem;
    line-height: 1;
}

.dashboard-showcase-signals small {
    overflow: hidden;
    color: var(--tracker-muted);
    font-size: 0.72rem;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-showcase-recent,
.dashboard-showcase-setup,
.dashboard-showcase-panel,
.dashboard-showcase-history {
    margin-bottom: 1rem;
    padding: clamp(1rem, 2vw, 1.35rem);
    border: 1px solid var(--tracker-border);
    border-radius: 20px;
    background: var(--dashboard-showcase-surface);
    box-shadow: 0 10px 28px rgba(8, 14, 40, 0.07);
}

.dashboard-showcase-section-heading {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 0.9rem;
}

.dashboard-showcase-section-heading h2 {
    margin: 0;
    color: var(--tracker-ink);
    font-size: clamp(1.05rem, 2vw, 1.28rem);
    letter-spacing: -0.02em;
}

.dashboard-showcase-section-heading > a {
    flex: 0 0 auto;
    color: var(--tracker-blue);
    font-size: 0.75rem;
    font-weight: 900;
    text-decoration: none;
}

.dashboard-showcase-card-rail {
    display: grid;
    grid-auto-columns: minmax(10rem, 12rem);
    grid-auto-flow: column;
    gap: 0.8rem;
    max-width: 100%;
    padding: 0.1rem 0.1rem 0.55rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline proximity;
    scrollbar-color: rgba(45, 120, 255, 0.4) transparent;
}

.dashboard-showcase-acquisition {
    display: grid;
    gap: 0.65rem;
    min-width: 0;
    color: var(--tracker-ink);
    text-decoration: none;
    scroll-snap-align: start;
}

.dashboard-showcase-acquisition-art {
    position: relative;
    display: grid;
    place-items: center;
    aspect-ratio: 1.45 / 1;
    overflow: hidden;
    border: 1px solid rgba(45, 120, 255, 0.13);
    border-radius: 14px;
    background:
        radial-gradient(circle at 72% 20%, rgba(85, 228, 255, 0.2), transparent 50%),
        linear-gradient(145deg, #f4f8ff, #e7edff);
}

.dashboard-showcase-acquisition-art > img {
    width: 5.5rem;
    max-height: calc(100% - 0.75rem);
    border-radius: 5px;
    object-fit: cover;
    box-shadow: 0 10px 22px rgba(8, 14, 40, 0.2);
    transition: transform 180ms ease;
}

.dashboard-showcase-acquisition:hover .dashboard-showcase-acquisition-art > img,
.dashboard-showcase-acquisition:focus .dashboard-showcase-acquisition-art > img {
    transform: translateY(-2px) rotate(-1deg);
}

.dashboard-showcase-card-placeholder {
    width: 5.5rem;
    aspect-ratio: 5 / 7;
    border-radius: 5px;
    background:
        radial-gradient(circle at 50% 36%, rgba(255, 255, 255, 0.85) 0 9%, transparent 10%),
        linear-gradient(155deg, #55e4ff, #2d78ff 48%, #7a45ff);
    box-shadow: 0 10px 22px rgba(8, 14, 40, 0.18);
}

.dashboard-showcase-foil {
    position: absolute;
    right: 0.42rem;
    bottom: 0.42rem;
    max-width: calc(100% - 0.84rem);
    padding: 0.22rem 0.38rem;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.34);
    border-radius: 7px;
    background: rgba(7, 19, 47, 0.67);
    color: #fff;
    font-size: 0.52rem;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
    backdrop-filter: blur(6px);
}

.dashboard-showcase-acquisition-copy {
    display: grid;
    gap: 0.18rem;
    min-width: 0;
}

.dashboard-showcase-acquisition-copy > strong {
    overflow: hidden;
    font-size: 0.8rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-showcase-acquisition-copy > small {
    overflow: hidden;
    color: var(--tracker-muted);
    font-size: 0.65rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-showcase-acquisition-meta {
    display: flex;
    gap: 0.25rem;
    align-items: center;
    overflow: hidden;
    color: #1a6a58;
    font-size: 0.61rem;
    font-weight: 800;
    white-space: nowrap;
}

.dashboard-showcase-acquisition-meta > span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
}

.dashboard-showcase-setup {
    background:
        linear-gradient(115deg, rgba(45, 120, 255, 0.055), rgba(85, 228, 255, 0.045)),
        #fff;
}

.dashboard-showcase-journey {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.dashboard-showcase-journey > a {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.18rem 0.65rem;
    min-width: 0;
    padding: 0.8rem;
    border: 1px solid rgba(45, 120, 255, 0.16);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.8);
    color: var(--tracker-ink);
    text-decoration: none;
}

.dashboard-showcase-journey > a > span {
    display: grid;
    grid-row: 1 / span 2;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: var(--tracker-blue);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 900;
}

.dashboard-showcase-journey > a.is-complete > span {
    background: #168b70;
    font-size: 0;
}

.dashboard-showcase-journey > a.is-complete > span::before {
    font-size: 0.75rem;
    content: "✓";
}

.dashboard-showcase-journey strong {
    font-size: 0.78rem;
}

.dashboard-showcase-journey small {
    color: var(--tracker-muted);
    font-size: 0.64rem;
    line-height: 1.35;
}

.dashboard-showcase-primary-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 25rem), 1fr));
    gap: 1rem;
}

.dashboard-showcase-panel {
    min-width: 0;
    margin-bottom: 0;
}

.dashboard-showcase-work {
    margin-bottom: 1rem;
}

.dashboard-showcase-deck-list,
.dashboard-showcase-binder-list {
    display: grid;
    gap: 0.7rem;
}

.dashboard-showcase-deck-list {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
}

.dashboard-showcase-deck-list .dashboard-deck-card {
    min-height: 6.3rem;
    padding: 0.85rem;
    border-radius: 14px;
}

.dashboard-showcase-deck-list .dashboard-progress-ring {
    width: 3.6rem;
}

.dashboard-showcase-binder-card {
    display: grid;
    grid-template-columns: 7.2rem minmax(0, 1fr) auto;
    gap: 0.8rem;
    align-items: center;
    min-width: 0;
    padding: 0.55rem;
    border: 1px solid rgba(45, 120, 255, 0.13);
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(45, 120, 255, 0.055), rgba(106, 58, 255, 0.035));
    color: var(--tracker-ink);
    text-decoration: none;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.dashboard-showcase-binder-card:hover,
.dashboard-showcase-binder-card:focus {
    border-color: rgba(45, 120, 255, 0.42);
    box-shadow: 0 9px 22px rgba(8, 14, 40, 0.09);
    transform: translateY(-1px);
}

.dashboard-showcase-binder-art {
    position: relative;
    display: block;
    height: 4.8rem;
    overflow: hidden;
    border: 1px solid rgba(8, 14, 40, 0.18);
    border-radius: 7px 12px 12px 7px;
    background: #142b68;
    box-shadow: 0 8px 18px rgba(8, 14, 40, 0.18);
}

.dashboard-showcase-binder-art > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dashboard-showcase-binder-page {
    display: grid;
    grid-template-columns: repeat(var(--binder-columns), minmax(0, 1fr));
    grid-template-rows: repeat(var(--binder-rows), minmax(0, 1fr));
    gap: 2px;
    width: 100%;
    height: 100%;
    padding: 0.3rem 0.35rem 0.3rem 0.58rem;
    background: linear-gradient(145deg, #102152, #294b9b);
}

.dashboard-showcase-binder-page > span {
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.08);
}

.dashboard-showcase-binder-page img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dashboard-showcase-binder-spine {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0.34rem;
    border-right: 1px solid rgba(255, 255, 255, 0.17);
    background: rgba(2, 8, 28, 0.36);
}

.dashboard-showcase-binder-copy {
    display: grid;
    gap: 0.18rem;
    min-width: 0;
}

.dashboard-showcase-binder-copy strong {
    overflow: hidden;
    font-size: 0.8rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-showcase-binder-copy small {
    color: var(--tracker-muted);
    font-size: 0.65rem;
}

.dashboard-showcase-binder-card > span:last-child {
    color: var(--tracker-blue);
    font-size: 0.8rem;
}

.dashboard-showcase-history {
    box-shadow: 0 7px 20px rgba(8, 14, 40, 0.05);
}

.dashboard-showcase-history-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
    gap: 0.45rem 1rem;
}

.dashboard-showcase-history-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.55rem;
    align-items: center;
    min-width: 0;
    padding: 0.45rem 0;
    color: var(--tracker-ink);
    text-decoration: none;
}

.dashboard-showcase-history-dot {
    width: 0.48rem;
    height: 0.48rem;
    border-radius: 50%;
    background: var(--tracker-cyan);
    box-shadow: 0 0 0 4px rgba(0, 212, 255, 0.12);
}

.dashboard-showcase-history-item > span:nth-child(2) {
    display: grid;
    gap: 0.08rem;
    min-width: 0;
}

.dashboard-showcase-history-item strong,
.dashboard-showcase-history-item small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-showcase-history-item strong {
    font-size: 0.73rem;
}

.dashboard-showcase-history-item small {
    color: var(--tracker-muted);
    font-size: 0.61rem;
}

.dashboard-showcase-history-item > span:last-child {
    color: var(--tracker-blue);
}

.dashboard-showcase-primary-action:focus-visible,
.dashboard-showcase-secondary-action:focus-visible,
.dashboard-showcase-text-action:focus-visible,
.dashboard-showcase-art:focus-visible,
.dashboard-showcase-signals a:focus-visible,
.dashboard-showcase-recent a:focus-visible,
.dashboard-showcase-setup a:focus-visible,
.dashboard-showcase-work a:focus-visible,
.dashboard-showcase-history a:focus-visible {
    outline: 3px solid var(--tracker-cyan);
    outline-offset: 3px;
}

@media (max-width: 980px) {
    .dashboard-showcase-hero {
        grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.82fr);
        gap: 1.25rem;
        min-height: 22rem;
        padding: 2rem;
    }

    .dashboard-showcase-copy h1 {
        font-size: clamp(1.85rem, 4.8vw, 3rem);
    }

    .dashboard-showcase-card-fan {
        height: 13rem;
    }

    .dashboard-showcase-card-fan > img,
    .dashboard-showcase-card-fan > span {
        width: clamp(6.5rem, 13vw, 8rem);
    }

    .dashboard-showcase-art {
        min-height: 18rem;
    }
}

@media (max-width: 760px) {
    .dashboard-showcase-hero {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }

    .dashboard-showcase-art {
        grid-row: 1;
        min-height: 16rem;
    }

    .dashboard-showcase-copy {
        grid-row: 2;
    }

    .dashboard-showcase-art-footer {
        width: calc(100% - 4rem);
    }

    .dashboard-showcase-signals {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }

    .dashboard-showcase-signals > a {
        padding: 0.65rem 0.8rem;
    }

    .dashboard-showcase-journey {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .dashboard-showcase-shell {
        padding-right: 0.75rem;
        padding-left: 0.75rem;
    }

    .dashboard-showcase-hero {
        min-height: 0;
        padding: 1.05rem;
        border-radius: 20px;
    }

    .dashboard-showcase-art {
        min-height: 14rem;
    }

    .dashboard-showcase-art::before {
        inset: 5% 0 9%;
        border-radius: 18px;
    }

    .dashboard-showcase-card-fan {
        height: 10.8rem;
    }

    .dashboard-showcase-card-fan > img,
    .dashboard-showcase-card-fan > span {
        width: clamp(5.25rem, 26vw, 6.7rem);
        border-radius: 6px;
    }

    .dashboard-showcase-art-footer {
        width: calc(100% - 1.5rem);
    }

    .dashboard-showcase-celebration {
        top: 0.55rem;
        right: 0.55rem;
    }

    .dashboard-showcase-copy {
        gap: 0.8rem;
    }

    .dashboard-showcase-copy h1 {
        max-width: 15ch;
        font-size: clamp(1.75rem, 9vw, 2.5rem);
    }

    .dashboard-showcase-supporting {
        margin-top: 0.45rem;
        font-size: 0.82rem;
    }

    .dashboard-showcase-actions {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .dashboard-showcase-primary-action {
        grid-column: 1 / -1;
    }

    .dashboard-showcase-text-action {
        display: none;
    }

    .dashboard-showcase-search {
        min-height: 2.75rem;
    }

    .dashboard-showcase-card-rail {
        grid-auto-columns: minmax(9.2rem, 10.5rem);
        margin-right: -0.9rem;
        padding-right: 0.9rem;
    }

    .dashboard-showcase-recent,
    .dashboard-showcase-setup,
    .dashboard-showcase-panel,
    .dashboard-showcase-history {
        padding: 0.9rem;
        border-radius: 16px;
    }

    .dashboard-showcase-section-heading {
        align-items: center;
    }

    .dashboard-showcase-binder-card {
        grid-template-columns: 6rem minmax(0, 1fr) auto;
    }

    .dashboard-showcase-binder-art {
        height: 4.25rem;
    }
}

@media (max-width: 380px) {
    .dashboard-showcase-art-footer .dashboard-progress-ring {
        width: 3.35rem;
    }

    .dashboard-showcase-actions {
        grid-template-columns: 1fr;
    }

    .dashboard-showcase-secondary-action {
        width: 100%;
    }

    .dashboard-showcase-search button {
        padding: 0 0.65rem;
    }

    .dashboard-showcase-signal-icon {
        width: 2.2rem;
        height: 2.2rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dashboard-showcase-primary-action,
    .dashboard-showcase-secondary-action,
    .dashboard-showcase-text-action,
    .dashboard-showcase-card-fan > img,
    .dashboard-showcase-card-fan > span,
    .dashboard-showcase-signals > a,
    .dashboard-showcase-acquisition-art > img,
    .dashboard-showcase-binder-card {
        transition: none;
    }
}
