:root{color-scheme:dark;font-family:Inter,Roboto,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ms-bg: #0b1020;--ms-surface: #111827;--ms-surface-2: #1f2937;--ms-border: #374151;--ms-text: #f9fafb;--ms-muted: #9ca3af;--ms-primary: #7c3aed;--ms-primary-hover: #6d28d9;--ms-accent-blue: #2563eb;--ms-accent-gold: #d97706;--ms-accent-red: #dc2626;--ms-success: #16a34a;--ms-warning: #f59e0b;--ms-danger: #ef4444;--ms-radius-sm: .625rem;--ms-radius: .875rem;--ms-radius-lg: 1.125rem;--ms-shadow-sm: 0 .5rem 1.5rem rgb(0 0 0 / 14%);--ms-shadow: 0 1rem 3rem rgb(0 0 0 / 20%);--ms-transition: .16s ease}*,*:before,*:after{box-sizing:border-box}html{background:var(--ms-bg)}body{min-width:320px;min-height:100vh;margin:0;color:var(--ms-text);background:radial-gradient(circle at top,rgb(124 58 237 / 16%),transparent 34rem),var(--ms-bg);line-height:1.6}#app{min-height:100vh}button,a,input,select,textarea{outline-offset:3px}:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}.app-skip-link{position:fixed;z-index:2000;top:.75rem;left:.75rem;padding:.7rem 1rem;color:#fff;background:var(--ms-primary);border:2px solid #ddd6fe;border-radius:var(--ms-radius-sm);box-shadow:var(--ms-shadow);font-weight:700;text-decoration:none;transform:translateY(-200%);transition:transform var(--ms-transition)}.app-skip-link:focus{color:#fff;transform:translateY(0)}a{color:#c4b5fd;text-underline-offset:.18em}a:hover{color:#ddd6fe}h1,h2,h3,h4,h5,h6{color:var(--ms-text);letter-spacing:-.015em}.app-surface{max-width:760px;background:#111827eb;border:1px solid var(--ms-border);border-radius:1rem;box-shadow:0 1.5rem 4rem #00000047}.app-login-card{background:#111827f0;border:1px solid var(--ms-border);border-radius:1rem;box-shadow:0 1.5rem 4rem #0000003d}.app-login-card hr,.app-session-panel{border-color:var(--ms-border)!important}.layout-shell{display:flex;min-height:100vh;flex-direction:column}.app-header,.app-mobile-bar,.app-footer{background:#0b1020eb;border-color:var(--ms-border)!important;-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem)}.app-footer{color:var(--ms-muted);font-size:.875rem}.app-format-menu{max-height:min(70vh,24rem);overflow-y:auto}.app-home-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#7c3aed38,#2563eb14),var(--ms-surface);border:1px solid var(--ms-border);border-radius:1.25rem;box-shadow:0 1.5rem 4rem #00000038}.app-home-hero:after{position:absolute;width:18rem;height:18rem;border:1px solid rgb(167 139 250 / 20%);border-radius:50%;content:"";inset:-8rem -6rem auto auto}.app-hero-mark{display:grid;width:9rem;height:9rem;place-items:center;border:1px solid rgb(167 139 250 / 45%);border-radius:1.5rem;color:#ddd6fe;background:#0b102094;box-shadow:inset 0 0 2.5rem #7c3aed40;font-size:2.5rem;font-weight:800;letter-spacing:.08em;transform:rotate(4deg)}.app-section-anchor{scroll-margin-top:1.5rem}.app-format-card,.app-tournament-card{position:relative;background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:.875rem;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.app-search-panel{background:#111827c7;border:1px solid var(--ms-border);border-radius:.875rem}.app-tournament-filters,.app-tournament-details,.app-stats-filters,.app-stats-context,.app-chart-panel,.app-ranking-panel{background:#111827e0;border:1px solid var(--ms-border);border-radius:.875rem}.app-chart-container{position:relative;min-height:22rem}.app-chart-container--ranking{min-height:26rem}.app-ranking-table{--bs-table-bg: transparent;--bs-table-border-color: var(--ms-border);--bs-table-hover-bg: rgb(124 58 237 / 10%)}.app-ranking-table a,.app-ranking-card a{color:#c4b5fd}.app-ranking-card{background:var(--ms-surface-2);border:1px solid var(--ms-border);border-radius:.875rem}.app-ranking-position{display:inline-grid;min-width:2.5rem;min-height:2.5rem;place-items:center;border-radius:50%;color:#fff;background:var(--ms-primary);font-weight:800}.app-tournament-hero{background:linear-gradient(135deg,#2563eb2e,#7c3aed1f),var(--ms-surface);border:1px solid var(--ms-border);border-radius:1rem}.app-standings-table{--bs-table-bg: var(--ms-surface);--bs-table-border-color: var(--ms-border);--bs-table-hover-bg: rgb(124 58 237 / 10%);border:1px solid var(--ms-border)}.app-standings-table a,.app-standing-card a{color:#c4b5fd}.app-standing-card{background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:.875rem}.app-standing-position{display:inline-grid;min-width:2.75rem;min-height:2.75rem;place-items:center;border-radius:50%;color:#fff;background:var(--ms-primary);font-weight:800}.app-format-hero{overflow:hidden;background:linear-gradient(135deg,#7c3aed33,#2563eb14),var(--ms-surface);border:1px solid var(--ms-border);border-radius:1rem}.app-public-player-hero{overflow:hidden;background:linear-gradient(135deg,#2563eb2e,#7c3aed1f),var(--ms-surface);border:1px solid var(--ms-border);border-radius:1rem}.app-public-archetype-hero{overflow:hidden;background:linear-gradient(135deg,#7c3aed33,#d977061a),var(--ms-surface);border:1px solid var(--ms-border);border-radius:1rem}.app-public-archetype-format .app-format-badge{padding:.65rem .9rem;font-size:1rem;letter-spacing:.05em}.app-archetype-identity-badge{padding:.55rem .75rem}.app-public-archetype-description{white-space:pre-wrap}.app-public-deck-hero{overflow:hidden;background:linear-gradient(135deg,#d977062e,#2563eb1a),var(--ms-surface);border:1px solid var(--ms-border);border-radius:1rem}.app-public-deck-format .app-format-badge{padding:.65rem .9rem;font-size:1rem;letter-spacing:.05em}.app-public-deck-description{white-space:pre-wrap}.app-format-tabs{padding:.5rem;background:#111827c7;border:1px solid var(--ms-border);border-radius:.875rem}.app-format-tabs .nav-link{color:var(--ms-muted)}.app-format-tabs .nav-link:hover,.app-format-tabs .nav-link:focus-visible{color:var(--ms-text)}.app-format-tabs .nav-link.active{color:#fff;background:var(--ms-primary)}.app-format-panel{background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:.875rem}.app-preview-list .list-group-item{color:var(--ms-text);background:var(--ms-surface-2);border-color:var(--ms-border)}.app-preview-list .list-group-item-action:hover,.app-preview-list .list-group-item-action:focus{color:var(--ms-text);background:#7c3aed24}.app-format-arrow{color:#a78bfa;font-size:1.5rem;line-height:1;transition:transform .16s ease}.app-format-card:hover .app-format-arrow{transform:translate(.25rem)}.app-format-card:hover,.app-tournament-card:hover{border-color:#8b5cf6;box-shadow:0 1rem 2.5rem #0003;transform:translateY(-2px)}.app-date-block{display:inline-flex;min-width:7rem;justify-content:center;padding:.65rem .75rem;border-radius:.65rem;color:#ddd6fe;background:#7c3aed24;font-size:.875rem;font-weight:700}.app-page{flex:1;min-height:65vh}.app-page-container{max-width:1200px}.app-page-header{max-width:52rem}.app-page-title{font-size:clamp(1.75rem,3vw,2.35rem);font-weight:750;line-height:1.15}.app-page-subtitle{max-width:46rem;color:var(--ms-muted);font-size:1.025rem}.authenticated-layout{display:grid;min-height:100vh;grid-template-columns:260px minmax(0,1fr)}.app-sidebar{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;padding:1.5rem;background:var(--ms-surface);border-color:var(--ms-border)!important}.app-sidebar .nav-link{color:var(--ms-muted)}.app-sidebar .nav-link:hover,.app-sidebar .nav-link:focus-visible,.app-sidebar .nav-link.router-link-active{color:var(--ms-text);background:var(--ms-primary)}.authenticated-content{min-width:0}.app-mobile-bar{display:none;padding:1rem 1.5rem}.app-route-code{color:#c4b5fd}.app-error-code{color:#a78bfa}.app-stat-card,.app-state{background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:.875rem}.app-stat-card{border-top:3px solid var(--ms-primary);box-shadow:var(--ms-shadow-sm);transition:border-color var(--ms-transition),transform var(--ms-transition),box-shadow var(--ms-transition)}.app-stat-card:hover{box-shadow:var(--ms-shadow);transform:translateY(-2px)}.app-stat-value{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:750;letter-spacing:-.04em;line-height:1.15}.app-stat-card--success{border-top-color:var(--ms-success)}.app-stat-card--warning{border-top-color:var(--ms-warning)}.app-stat-card--danger{border-top-color:var(--ms-danger)}.app-stat-card--info{border-top-color:var(--ms-accent-blue)}.app-stat-icon,.app-state-icon{display:inline-grid;width:2.5rem;height:2.5rem;place-items:center;border-radius:50%;color:#c4b5fd;background:#7c3aed26;font-weight:700}.app-state-icon{font-size:1.5rem}.app-state{background:linear-gradient(145deg,rgb(124 58 237 / 5%),transparent 55%),var(--ms-surface);box-shadow:var(--ms-shadow-sm)}.app-state--error{border-color:#ef44448c}.app-format-badge{display:inline-flex;min-height:1.65rem;align-items:center;padding:.35rem .6rem;color:#fff;border:1px solid rgb(255 255 255 / 16%);border-radius:999px;box-shadow:inset 0 1px #ffffff1a;font-size:.72rem;font-weight:750;letter-spacing:.04em}.app-role-badge{color:#ddd6fe;background:#7c3aed2e;border:1px solid rgb(167 139 250 / 30%);letter-spacing:.08em}.app-filter-group{min-width:0;margin:0;padding:0;border:0}.form-control,.form-select{min-height:2.75rem;color:var(--ms-text);background-color:var(--ms-surface);border-color:var(--ms-border);border-radius:var(--ms-radius-sm)}textarea.form-control{min-height:7rem}.form-label,.form-check-label,legend{color:#e5e7eb;font-weight:600}.form-text{color:var(--ms-muted)}.form-check-input{background-color:var(--ms-surface);border-color:#6b7280}.form-check-input:checked{background-color:var(--ms-primary);border-color:var(--ms-primary)}.form-control:focus,.form-select:focus{color:var(--ms-text);background-color:var(--ms-surface);border-color:#8b5cf6;box-shadow:0 0 0 .25rem #7c3aed33}.form-control:disabled,.form-select:disabled{color:var(--ms-muted);background-color:var(--ms-surface-2)}.page-link{display:inline-grid;min-width:2.5rem;min-height:2.5rem;place-items:center;color:var(--ms-text);background:var(--ms-surface);border-color:var(--ms-border)}.page-link:hover,.page-link:focus{color:#fff;background:var(--ms-surface-2);border-color:#8b5cf6}.active>.page-link,.page-link.active{background:var(--ms-primary);border-color:var(--ms-primary)}.disabled>.page-link,.page-link:disabled{color:var(--ms-muted);background:var(--ms-surface-2);border-color:var(--ms-border)}.app-muted{color:var(--ms-muted)}.app-eyebrow{color:#a78bfa;letter-spacing:.14em}.btn-primary,.text-bg-primary{--bs-primary-rgb: 124, 58, 237;--bs-btn-bg: var(--ms-primary);--bs-btn-border-color: var(--ms-primary);--bs-btn-hover-bg: var(--ms-primary-hover);--bs-btn-hover-border-color: var(--ms-primary-hover)}.btn{--bs-btn-border-radius: var(--ms-radius-sm);display:inline-flex;min-height:2.5rem;align-items:center;justify-content:center;gap:.45rem;font-weight:650;transition:color var(--ms-transition),background-color var(--ms-transition),border-color var(--ms-transition),box-shadow var(--ms-transition),transform var(--ms-transition)}.btn:not(:disabled):active{transform:translateY(1px)}.btn-primary{box-shadow:0 .35rem 1rem #7c3aed38}.btn-primary:hover,.btn-primary:focus-visible{box-shadow:0 .5rem 1.25rem #7c3aed52}.btn-outline-light,.btn-outline-secondary,.btn-outline-dark{--bs-btn-color: #e5e7eb;--bs-btn-border-color: #6b7280;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--ms-surface-2);--bs-btn-hover-border-color: #9ca3af;--bs-btn-active-color: #fff;--bs-btn-active-bg: var(--ms-surface-2);--bs-btn-active-border-color: #9ca3af;--bs-btn-disabled-color: #9ca3af;--bs-btn-disabled-border-color: #4b5563}.btn-outline-danger,.btn-outline-success,.btn-outline-primary{background:#11182759}.btn-link{min-height:auto;font-weight:650;text-underline-offset:.18em}.btn:disabled,.btn.disabled{cursor:not-allowed;opacity:.58}.alert{border-radius:var(--ms-radius);border-width:1px}.alert-danger{color:#fecaca;background:#7f1d1d61;border-color:#f8717161}.alert-warning{color:#fde68a;background:#78350f61;border-color:#fbbf2461}.alert-success{color:#bbf7d0;background:#14532d61;border-color:#4ade8057}.card,.modal-content,.dropdown-menu{color:var(--ms-text);background-color:var(--ms-surface);border-color:var(--ms-border);border-radius:var(--ms-radius);box-shadow:var(--ms-shadow)}.dropdown-item{color:var(--ms-text)}.dropdown-item:hover,.dropdown-item:focus,.dropdown-item.active{color:#fff;background:#7c3aed33}.table{margin-bottom:0;color:var(--ms-text);vertical-align:middle}.table>:not(caption)>*>*{padding:.9rem .85rem;color:inherit;background-color:transparent;border-bottom-color:var(--ms-border)}.table thead th{color:#d1d5db;background:#1f2937c7;font-size:.75rem;font-weight:750;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}.table tbody tr:last-child>*{border-bottom-width:0}.table-responsive{border:1px solid var(--ms-border);border-radius:var(--ms-radius)}.badge{font-weight:700}.badge.text-bg-secondary,.text-bg-secondary{color:#e5e7eb!important;background-color:#374151!important}.admin-layout,.player-layout{grid-template-columns:280px minmax(0,1fr)}.admin-sidebar,.player-sidebar{--bs-offcanvas-width: 280px;width:280px}.admin-sidebar .offcanvas-body,.player-sidebar .offcanvas-body{overflow-y:auto}.app-sidebar-marker{display:inline-grid;width:2rem;height:2rem;flex:0 0 2rem;place-items:center;border-radius:.5rem;color:#ddd6fe;background:#7c3aed29;font-size:.7rem;font-weight:800;letter-spacing:.04em}.app-sidebar .nav-link.router-link-active .app-sidebar-marker,.app-sidebar .nav-link:hover .app-sidebar-marker{color:#fff;background:#0b102047}.admin-header,.player-header{position:sticky;z-index:1020;top:0;background:#0b1020eb;border-color:var(--ms-border)!important;-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem)}.admin-header .navbar-toggler,.player-header .navbar-toggler{padding:.4rem;border-color:var(--ms-border)}.admin-header .navbar-toggler-icon,.player-header .navbar-toggler-icon{filter:invert(1) grayscale(1)}.app-quick-action,.app-admin-panel,.app-player-panel,.app-player-chart,.app-player-list-card,.app-admin-list-card{background:#111827e0;border:1px solid var(--ms-border);border-radius:.875rem;box-shadow:var(--ms-shadow-sm)}.app-quick-action{transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.app-quick-action:hover,.app-quick-action:focus-visible{border-color:#8b5cf6;box-shadow:0 .75rem 2rem #0000002e;transform:translateY(-2px)}.app-quick-action-arrow{color:#a78bfa;font-size:1.4rem;line-height:1}.app-admin-table,.app-player-table{--bs-table-bg: transparent;--bs-table-border-color: var(--ms-border);--bs-table-hover-bg: rgb(124 58 237 / 10%)}.app-admin-panel,.app-player-panel,.app-chart-panel,.app-ranking-panel,.app-search-panel,.app-tournament-filters,.app-stats-filters{box-shadow:var(--ms-shadow-sm)}.app-admin-form{position:sticky;top:6.5rem}.app-confirm-dialog{color:var(--ms-text);background:var(--ms-surface);border:1px solid var(--ms-border)}@media(min-width:1200px){.app-standing-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}}.app-admin-description-cell{max-width:18rem}.app-admin-description-cell>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-player-description-cell{display:block;max-width:18rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-tournament-reference-summary,.app-tournament-structure-preview{background:var(--ms-surface-2);border:1px solid var(--ms-border);border-radius:.75rem}@media(max-width:767.98px){.authenticated-layout{display:block}.app-sidebar{position:static;width:100%;height:auto}.app-sidebar .nav{flex-flow:row wrap;margin-bottom:1.5rem}.app-sidebar .mt-auto{align-self:flex-start}.app-mobile-bar{display:block}}@media(max-width:991.98px){#publicNavigation{padding-top:1rem}#publicNavigation .nav-link,#publicNavigation .btn{display:flex;min-height:2.75rem;align-items:center}#publicNavigation>.navbar-nav>.nav-item>.btn{width:100%;justify-content:center;margin-top:.5rem;margin-left:0!important}.admin-layout,.player-layout{display:block}.admin-sidebar,.player-sidebar{position:fixed;width:var(--bs-offcanvas-width);height:100vh;padding:0}.admin-sidebar .offcanvas-body,.player-sidebar .offcanvas-body{padding:1.5rem!important}.admin-sidebar .nav,.player-sidebar .nav{flex-flow:column nowrap;margin-bottom:1.5rem}.admin-sidebar .mt-auto,.player-sidebar .mt-auto{align-self:stretch}.app-admin-form{position:static}}@media(max-width:575.98px){.btn:not(.btn-close),.page-link,.admin-header .navbar-toggler,.player-header .navbar-toggler{min-height:2.75rem}.admin-header .navbar-toggler,.player-header .navbar-toggler{min-width:2.75rem}.app-page{min-height:55vh}.app-page-header{margin-bottom:1.5rem!important}.app-page-title{font-size:1.75rem}.app-home-hero,.app-format-hero,.app-tournament-hero,.app-public-player-hero,.app-public-archetype-hero,.app-public-deck-hero{border-radius:var(--ms-radius)}.app-home-hero .display-4{font-size:clamp(2rem,11vw,2.75rem)}.app-state{padding:2rem 1.25rem!important}.table-responsive{border:0;border-radius:0}}
