@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap");

:root {
  color-scheme: dark;
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
  background: #0b1026;
  color: #ebe6ff;
  --bg: #0b1026;
  --bg-deep: #070a18;
  --panel: #111735;
  --panel2: #171e42;
  --line: rgba(146,157,255,.2);
  --muted: #9ba4ca;
  --blue: #6a7bff;
  --pink: #ff4ed8;
  --orange: #ff9a6b;
  --green: #20c875;
  --red: #ff5578;
}
* { box-sizing: border-box; }
html { min-height: 100%; scroll-behavior: smooth; }
body { margin: 0; min-height: 100vh; overflow-x: hidden; background: radial-gradient(circle at 82% 4%,rgba(106,123,255,.16),transparent 30rem),radial-gradient(circle at 12% 88%,rgba(255,78,216,.08),transparent 28rem),linear-gradient(180deg,var(--bg),var(--bg-deep)); }
body::before { content:""; position:fixed; inset:0; z-index:-1; pointer-events:none; opacity:.12; background-image:linear-gradient(rgba(235,230,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(235,230,255,.018) 1px,transparent 1px); background-size:4rem 4rem; mask-image:linear-gradient(to bottom,#000,transparent 78%); }
body::after { content:""; position:fixed; inset:0; z-index:-1; pointer-events:none; opacity:.42; background:radial-gradient(ellipse 28rem 7rem at 102% 19%,rgba(255,78,216,.24),transparent 70%),radial-gradient(ellipse 24rem 8rem at 99% 73%,rgba(255,154,107,.15),transparent 72%),linear-gradient(90deg,transparent 48%,rgba(106,123,255,.04) 64%,rgba(255,78,216,.22) 88%,rgba(255,154,107,.18) 96%,transparent) 0 18%/100% 2px no-repeat,linear-gradient(90deg,transparent 58%,rgba(106,123,255,.05) 72%,rgba(255,78,216,.18) 91%,transparent) 0 24%/100% 1px no-repeat,linear-gradient(90deg,transparent 42%,rgba(106,123,255,.035) 62%,rgba(255,78,216,.16) 87%,rgba(255,154,107,.12) 97%,transparent) 0 70%/100% 3px no-repeat,linear-gradient(90deg,transparent 55%,rgba(106,123,255,.035) 72%,rgba(255,78,216,.2) 93%,transparent) 0 77%/100% 1px no-repeat; filter:blur(.7px); }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:wait; opacity:.58; }
[hidden] { display:none!important; }

.topbar { position:sticky; top:0; z-index:20; height:4.5rem; padding:0 max(1rem,env(safe-area-inset-left)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); background:rgba(7,10,24,.8); backdrop-filter:blur(24px) saturate(130%); }
.brand { display:flex; align-items:center; gap:.72rem; color:inherit; text-decoration:none; font-weight:800; letter-spacing:-.045em; }
.brand-mark { position:relative; display:grid; place-items:center; width:2.2rem; height:2.2rem; overflow:hidden; border:1px solid rgba(255,255,255,.13); border-radius:.68rem; background:linear-gradient(145deg,#29306c,#b02fa6 58%,var(--pink)); color:#fff; box-shadow:0 0 1.8rem rgba(255,78,216,.25); font-size:.66rem; }
.brand-mark::after { content:""; position:absolute; width:150%; height:.28rem; transform:rotate(-8deg); background:rgba(255,255,255,.42); filter:blur(5px); }
.brand>span:last-child { text-transform:uppercase; }
.brand small { margin-left:.42rem; color:var(--pink); font-size:.56rem; letter-spacing:.17em; }
.topbar-actions { display:flex; align-items:center; gap:.9rem; }
.service-state { display:flex; align-items:center; gap:.42rem; color:var(--muted); font-size:.7rem; }
.service-state i { width:.42rem; height:.42rem; border-radius:50%; background:#586080; }
.service-state.ok i { background:var(--green); box-shadow:0 0 .7rem rgba(32,200,117,.72); }
.text-button,.icon-button { border:0; background:transparent; color:var(--muted); }
.text-button { font-size:.76rem; font-weight:600; }
.text-button:hover { color:#ebe6ff; }
main { width:min(76rem,100%); margin:0 auto; }

.access-screen { min-height:calc(100vh - 4.5rem); display:grid; grid-template-columns:1.08fr .92fr; gap:clamp(2rem,7vw,7rem); align-items:center; padding:4rem 2rem; }
.access-copy { position:relative; max-width:42rem; }
.access-copy::before { content:"11"; position:absolute; z-index:-1; top:-7rem; right:-2rem; color:transparent; font-size:clamp(14rem,27vw,27rem); font-weight:800; line-height:1; -webkit-text-stroke:1px rgba(106,123,255,.12); filter:drop-shadow(0 0 2rem rgba(255,78,216,.09)); }
.access-copy::after { content:""; position:absolute; z-index:-1; left:-15%; top:52%; width:125%; height:4rem; transform:rotate(-4deg); background:linear-gradient(90deg,transparent,rgba(106,123,255,.12),rgba(255,78,216,.2),rgba(255,154,107,.08),transparent); filter:blur(20px); }
.eyebrow { margin:0 0 .7rem; color:var(--pink); font-size:.66rem; font-weight:800; letter-spacing:.2em; text-transform:uppercase; }
.access-copy h1 { margin:0 0 1.5rem; max-width:12ch; font-size:clamp(3rem,6vw,6.3rem); line-height:.96; letter-spacing:-.07em; }
.access-copy h1::after { content:""; display:block; width:6.5rem; height:.2rem; margin-top:1.5rem; border-radius:99px; background:linear-gradient(90deg,var(--blue),var(--pink),var(--orange)); box-shadow:0 0 1.2rem rgba(255,78,216,.45); }
.access-copy>p:not(.eyebrow) { max-width:35rem; color:#b5bddc; font-size:1.05rem; line-height:1.7; }
.rule-strip { display:flex; gap:2.4rem; padding:0; margin:2.6rem 0 0; list-style:none; }
.rule-strip li { display:grid; gap:.26rem; }
.rule-strip strong { font-size:1.35rem; letter-spacing:-.04em; }
.rule-strip span { color:var(--muted); font-size:.73rem; }

.access-card { display:grid; gap:1rem; padding:clamp(1.35rem,4vw,2.3rem); border:1px solid var(--line); border-radius:1.35rem; background:linear-gradient(145deg,rgba(23,30,66,.92),rgba(12,16,38,.92)); box-shadow:0 2rem 5rem rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.025); }
h2 { margin:0; letter-spacing:-.04em; }
.muted { color:var(--muted); }
label { display:grid; gap:.48rem; color:#cdd2eb; font-size:.78rem; font-weight:650; }
input,select,textarea { width:100%; border:1px solid var(--line); border-radius:.78rem; padding:.86rem .95rem; background:rgba(7,10,24,.68); color:#ebe6ff; outline:none; }
input:focus,select:focus,textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(106,123,255,.14),0 0 1.4rem rgba(106,123,255,.08); }
.form-row { display:grid; grid-template-columns:.7fr 1.3fr; gap:.8rem; }
.check { grid-template-columns:auto 1fr; align-items:start; font-weight:450; line-height:1.45; }
.check input { width:1rem; margin-top:.12rem; accent-color:var(--pink); }
.primary-button,.secondary-button { min-height:3rem; border-radius:.78rem; padding:.74rem 1rem; border:1px solid transparent; font-weight:800; transition:.16s ease; }
.primary-button { background:linear-gradient(105deg,var(--blue),#a75aee 52%,var(--pink)); color:#fff; box-shadow:0 .8rem 2.2rem rgba(106,123,255,.18); }
.primary-button:hover { transform:translateY(-1px); box-shadow:0 1rem 2.4rem rgba(255,78,216,.2); }
.secondary-button { border-color:var(--line); background:rgba(23,30,66,.62); color:#ebe6ff; }
.secondary-button:hover { border-color:var(--blue); }
.form-error { min-height:1.2em; margin:0; color:var(--red); font-size:.78rem; }

.app-shell { padding:2.5rem 1.25rem 7rem; }
.user-line { display:flex; justify-content:space-between; align-items:center; margin-bottom:2rem; }
.user-line h1 { margin:0; font-size:clamp(2.1rem,5vw,3.5rem); letter-spacing:-.065em; }
.icon-button { width:2.9rem; height:2.9rem; border:1px solid var(--line); border-radius:50%; background:rgba(17,23,53,.82); color:#ebe6ff; font-size:1.35rem; box-shadow:inset 0 1px rgba(255,255,255,.04); }
.icon-button:hover { border-color:var(--pink); box-shadow:0 0 1.4rem rgba(255,78,216,.15); }
.metric-grid { display:grid; grid-template-columns:2fr repeat(3,1fr); gap:.85rem; }
.metric { position:relative; min-height:8.5rem; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; padding:1.2rem; border:1px solid var(--line); border-radius:1rem; background:linear-gradient(145deg,rgba(23,30,66,.82),rgba(13,18,43,.88)); }
.metric::after { content:""; position:absolute; right:-2rem; bottom:-2.4rem; width:7rem; height:7rem; border-radius:50%; background:rgba(106,123,255,.08); filter:blur(4px); }
.metric.primary { border-color:rgba(255,78,216,.34); background:linear-gradient(120deg,rgba(39,45,104,.95),rgba(90,35,105,.78) 66%,rgba(255,78,216,.2)); box-shadow:inset 0 1px rgba(255,255,255,.05),0 1rem 3rem rgba(26,20,70,.2); }
.metric.primary::before { content:""; position:absolute; left:-5%; bottom:24%; width:110%; height:.3rem; transform:rotate(-3deg); background:linear-gradient(90deg,transparent,var(--blue),var(--pink),var(--orange),transparent); filter:blur(3px); opacity:.65; }
.metric span { position:relative; z-index:1; color:var(--muted); font-size:.72rem; }
.metric strong { position:relative; z-index:1; font-size:clamp(1.45rem,4vw,2.25rem); letter-spacing:-.055em; }
.positive { color:var(--green)!important; text-shadow:0 0 1.1rem rgba(32,200,117,.13); }
.negative { color:var(--red)!important; text-shadow:0 0 1.1rem rgba(255,85,120,.12); }

.matchday-panel { margin-top:1rem; padding:1.25rem; border:1px solid rgba(106,123,255,.3); border-radius:1.05rem; background:linear-gradient(135deg,rgba(23,30,66,.9),rgba(12,16,38,.92)); box-shadow:inset 0 1px rgba(255,255,255,.035); }
.matchday-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.matchday-header h2 { font-size:1.35rem; }
.matchday-navigation { display:flex; align-items:center; gap:.55rem; }
.matchday-navigation strong { min-width:6.6rem; text-align:center; font-size:.82rem; }
.matchday-arrow { width:2.35rem; height:2.35rem; border:1px solid var(--line); border-radius:50%; background:rgba(7,10,24,.65); color:#ebe6ff; font-weight:800; }
.matchday-arrow:hover:not(:disabled) { border-color:var(--pink); color:var(--pink); }
.matchday-arrow:disabled { cursor:default; opacity:.28; }
.matchday-groups { display:grid; grid-template-columns:repeat(3,1fr); gap:.75rem; }
.matchday-group { min-height:8.5rem; padding:.95rem; border:1px solid var(--line); border-radius:.9rem; background:rgba(7,10,24,.38); }
.matchday-group.up { border-color:rgba(32,200,117,.36); background:linear-gradient(145deg,rgba(32,200,117,.1),rgba(7,10,24,.38)); }
.matchday-group.same { border-color:rgba(255,201,78,.34); background:linear-gradient(145deg,rgba(255,201,78,.09),rgba(7,10,24,.38)); }
.matchday-group.down { border-color:rgba(255,85,120,.38); background:linear-gradient(145deg,rgba(255,85,120,.1),rgba(7,10,24,.38)); }
.matchday-group-title { display:flex; align-items:center; justify-content:space-between; margin-bottom:.65rem; font-size:.68rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.matchday-group.up .matchday-group-title { color:var(--green); }
.matchday-group.same .matchday-group-title { color:#ffc94e; }
.matchday-group.down .matchday-group-title { color:var(--red); }
.matchday-player { display:flex; align-items:center; justify-content:space-between; gap:.7rem; padding:.55rem 0; border-top:1px solid rgba(146,157,255,.12); }
.matchday-player:first-of-type { border-top:0; }
.matchday-player span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.76rem; font-weight:700; }
.matchday-player strong { flex:none; font-size:.72rem; }
.matchday-context { display:block; margin-top:.18rem; color:var(--muted); font-size:.58rem; font-weight:650; }
.matchday-context.returned { color:var(--green); }
.matchday-context.injured { color:var(--red); }
.matchday-context.absent { color:#ffc94e; }
.matchday-empty { color:var(--muted); font-size:.72rem; line-height:1.45; }
.matchday-panel-empty { grid-column:1/-1; padding:1.8rem 1rem; color:var(--muted); text-align:center; }

.section-heading { display:flex; justify-content:space-between; align-items:end; margin:2.8rem 0 1rem; }
.section-heading h2 { font-size:1.7rem; }
.section-heading>span { color:var(--muted); font-size:.76rem; }
.activity-list,.asset-list,.offer-list,.leaderboard { display:grid; gap:.6rem; }
.activity-row,.asset-row,.offer-row,.leader-row { position:relative; overflow:hidden; display:grid; align-items:center; gap:1rem; padding:1.05rem; border:1px solid var(--line); border-radius:.95rem; background:linear-gradient(120deg,rgba(17,23,53,.9),rgba(12,16,38,.88)); transition:.16s ease; }
.activity-row:hover,.asset-row:hover,.offer-row:hover,.leader-row:hover { border-color:rgba(106,123,255,.44); transform:translateY(-1px); background:linear-gradient(120deg,rgba(23,30,66,.94),rgba(14,18,44,.9)); }
.asset-row::after { content:""; position:absolute; inset:auto -10% 35% 50%; height:.18rem; background:linear-gradient(90deg,transparent,rgba(106,123,255,.55),rgba(255,78,216,.4),transparent); opacity:.22; filter:blur(2px); pointer-events:none; }
.activity-row { grid-template-columns:auto 1fr auto; }
.activity-icon,.player-avatar { display:grid; place-items:center; width:2.55rem; height:2.55rem; border:1px solid rgba(106,123,255,.22); border-radius:.75rem; background:linear-gradient(145deg,#252d66,#171d42); color:#cbd1ff; font-weight:850; box-shadow:inset 0 1px rgba(255,255,255,.05); }
.position-badge { font-size:.72rem; letter-spacing:-.02em; }
.position-badge.position-gk { color:#8edcff; border-color:rgba(67,196,255,.55); background:linear-gradient(145deg,rgba(35,113,165,.85),rgba(18,48,91,.95)); }
.position-badge.position-df { color:#8cf0bd; border-color:rgba(32,200,117,.52); background:linear-gradient(145deg,rgba(26,112,78,.86),rgba(14,57,50,.95)); }
.position-badge.position-mf { color:#ffd092; border-color:rgba(255,154,107,.58); background:linear-gradient(145deg,rgba(151,81,47,.88),rgba(79,43,47,.96)); }
.position-badge.position-fw { color:#ff9bb4; border-color:rgba(255,85,120,.62); background:linear-gradient(145deg,rgba(150,45,82,.88),rgba(75,30,67,.96)); }
.position-badge.position-other { color:#cbd1ff; }
.activity-icon { color:var(--pink); }
.row-title { font-weight:760; letter-spacing:-.02em; }
.player-name { vertical-align:middle; }
.favorite-button { position:relative; z-index:3; display:inline-grid; place-items:center; width:1.65rem; height:1.65rem; margin-left:.35rem; padding:0; border:1px solid rgba(255,208,92,.25); border-radius:50%; background:rgba(255,208,92,.06); color:#8e94b2; font-size:1.12rem; line-height:1; vertical-align:middle; cursor:pointer; transition:.16s ease; }
.favorite-button:hover,.favorite-button:focus-visible { border-color:#ffd05c; color:#ffd05c; background:rgba(255,208,92,.12); outline:none; transform:scale(1.06); }
.favorite-button.active { border-color:rgba(255,208,92,.58); color:#ffd05c; background:rgba(255,208,92,.14); box-shadow:0 0 1rem rgba(255,208,92,.12); }
.favorite-button:disabled { opacity:.55; cursor:wait; }
.row-subtitle { margin-top:.24rem; color:var(--muted); font-size:.72rem; line-height:1.45; }
.row-value { text-align:right; font-weight:750; }
.empty { padding:2.6rem 1rem; border:1px dashed rgba(146,157,255,.24); border-radius:.95rem; color:var(--muted); text-align:center; background:rgba(17,23,53,.25); }
.filters { display:grid; grid-template-columns:minmax(14rem,1fr) 13rem 13rem 10rem; gap:.7rem; margin-bottom:.9rem; }
.asset-row { grid-template-columns:auto minmax(0,1fr) auto auto; }
.asset-row.market-owned { border-color:var(--red); box-shadow:inset 0 0 0 1px rgba(255,85,120,.08),0 0 1rem rgba(255,85,120,.08); }
.asset-row.market-owned:hover { border-color:var(--red); }
.asset-main { position:relative; z-index:2; min-width:0; }
.asset-main .row-title { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.player-age { margin-left:.38rem; color:var(--muted); font-size:.67rem; font-weight:650; letter-spacing:0; white-space:nowrap; }
.availability-badge { display:inline-flex; margin-left:.38rem; padding:.18rem .42rem; border-radius:99px; font-size:.56rem; font-weight:850; letter-spacing:.04em; text-transform:uppercase; vertical-align:.12rem; }
.availability-badge.injured { color:#ff8ca7; background:rgba(255,85,120,.13); border:1px solid rgba(255,85,120,.3); }
.availability-badge.doubtful { color:#ffd46d; background:rgba(255,201,78,.11); border:1px solid rgba(255,201,78,.28); }
.availability-badge.suspended { color:#ffb586; background:rgba(255,154,107,.12); border:1px solid rgba(255,154,107,.3); }
.availability-badge.recovered { color:#70e9ac; background:rgba(32,200,117,.12); border:1px solid rgba(32,200,117,.3); }
.inline-link { margin:0; padding:0; border:0; background:transparent; color:inherit; font:inherit; text-decoration:underline; text-decoration-color:rgba(155,164,202,.38); text-underline-offset:.16rem; cursor:pointer; }
.inline-link:hover,.inline-link:focus-visible { color:#ebe6ff; text-decoration-color:var(--pink); outline:none; }
.inline-link.owner-link { color:#c7b8ff; font-weight:700; }
.asset-price { position:relative; z-index:1; text-align:right; }
.asset-price strong { display:block; color:#ebe6ff; font-size:1.15rem; letter-spacing:-.04em; }
.asset-price strong.positive { color:var(--green); }
.asset-price strong.negative { color:var(--red); }
.asset-price strong.same-value { color:#ffd05c; }
.asset-price span { color:var(--muted); font-size:.65rem; }
.market-history { display:flex; justify-content:flex-end; gap:.24rem; margin-top:.42rem; }
.market-change { display:grid; justify-items:center; min-width:2.7rem; padding:.26rem .34rem; border:1px solid currentColor; border-radius:.45rem; background:rgba(255,255,255,.025); line-height:1.05; }
.market-change small { color:inherit; font-size:.48rem; font-weight:750; opacity:.72; }
.market-change b { margin-top:.16rem; color:inherit; font-size:.59rem; white-space:nowrap; }
.market-change.positive { color:var(--green); background:rgba(32,200,117,.07); }
.market-change.negative { color:var(--red); background:rgba(255,85,120,.07); }
.market-change.same-value { color:#ffd05c; background:rgba(255,208,92,.07); }
.row-actions { position:relative; z-index:2; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.42rem; }
.small-button { border:1px solid var(--line); border-radius:.62rem; padding:.56rem .72rem; background:rgba(23,30,66,.78); color:#ebe6ff; font-size:.69rem; font-weight:750; transition:.16s ease; }
.small-button:hover { border-color:var(--blue); background:rgba(106,123,255,.13); }
.small-button.buy { border-color:rgba(255,78,216,.45); color:#ff86e6; background:rgba(255,78,216,.08); }
.small-button.buy:hover { box-shadow:0 0 1.3rem rgba(255,78,216,.14); }
.small-button.danger { color:#ff87a4; }
.summary-card { display:flex; justify-content:space-between; gap:1rem; margin-bottom:.9rem; padding:1.25rem; border-radius:1rem; background:linear-gradient(125deg,rgba(38,45,101,.9),rgba(93,35,105,.58)); border:1px solid rgba(255,78,216,.34); }
.summary-card div { display:grid; gap:.3rem; }
.summary-card span { color:var(--muted); font-size:.68rem; }
.summary-card strong { font-size:1.42rem; letter-spacing:-.04em; }
.segmented { width:fit-content; display:flex; margin-bottom:1rem; padding:.25rem; border:1px solid var(--line); border-radius:.75rem; background:rgba(7,10,24,.55); }
.segmented button { border:0; border-radius:.56rem; padding:.5rem .78rem; color:var(--muted); background:transparent; font-size:.72rem; }
.segmented button.active { background:linear-gradient(110deg,rgba(106,123,255,.25),rgba(255,78,216,.17)); color:#ebe6ff; }
.offer-row { grid-template-columns:minmax(0,1fr) auto auto; }
.offer-price { display:flex; flex-direction:column; align-items:flex-end; }
.offer-price>span { margin-top:.18rem; color:var(--muted); font-size:.72rem; white-space:nowrap; }
.status-pill { width:fit-content; margin-top:.3rem; padding:.24rem .46rem; border-radius:99px; background:var(--panel2); color:var(--muted); font-size:.58rem; text-transform:uppercase; letter-spacing:.07em; }
.status-pill.pending { color:var(--orange); background:rgba(255,154,107,.1); }
.leader-row { grid-template-columns:2.4rem minmax(0,1fr) auto; }
.leader-row.me { border-color:var(--pink); background:linear-gradient(110deg,rgba(106,123,255,.14),rgba(255,78,216,.09)); }
.leader-button { width:100%; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.leader-button:hover { border-color:var(--pink); }
.leader-button:focus-visible { outline:2px solid var(--pink); outline-offset:2px; }
.leader-button .row-value { display:grid; justify-items:end; gap:.25rem; }
.leader-button .row-value span { color:var(--pink); font-size:.62rem; font-weight:700; }
.leader-position { color:var(--muted); font-weight:800; text-align:center; }
.bot-label { margin-left:.4rem; color:var(--blue); font-size:.58rem; letter-spacing:.08em; }
.recognition-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:.7rem; margin-top:1rem; }
.recognition { padding:1rem; border:1px solid var(--line); border-radius:.9rem; background:linear-gradient(145deg,rgba(23,30,66,.7),rgba(12,16,38,.85)); }
.recognition span { color:var(--pink); font-size:.64rem; }
.recognition strong { display:block; margin-top:.42rem; font-size:.88rem; }
.market-more { width:100%; margin-top:.8rem; }
.market-status-banner { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:0 0 1rem; padding:.85rem 1rem; border:1px solid var(--line); border-radius:.85rem; background:rgba(17,23,53,.78); }
.market-status-banner strong { font-size:.8rem; }
.market-status-banner span { color:var(--muted); font-size:.7rem; text-align:right; }
.market-status-banner.open { border-color:rgba(32,200,117,.36); background:rgba(32,200,117,.07); }
.market-status-banner.open strong { color:var(--green); }
.market-status-banner.closed { border-color:rgba(255,85,120,.5); background:rgba(255,85,120,.08); }
.market-status-banner.closed strong { color:var(--red); }
.market-status-banner.closed span { color:#d9d9ec; }
button[data-action]:disabled { cursor:not-allowed; filter:saturate(.45); }
.back-link { display:inline-flex; margin:.2rem 0 0; color:#cbd1ff; font-size:.78rem; font-weight:700; text-decoration:none; }
.back-link:hover { color:var(--pink); }
.public-profile-heading { margin-top:1.4rem; }
.public-profile-heading .muted { margin:.5rem 0 0; font-size:.76rem; }
.public-summary { justify-content:flex-start; }
.public-summary div { min-width:9rem; }
.owner-label { align-self:center; color:var(--muted); font-size:.7rem; }
.favorites-heading { margin-top:2.4rem; }
.favorite-row { border-color:rgba(255,208,92,.2); }
.favorite-row:hover { border-color:rgba(255,208,92,.5); }
.favorites-empty { padding-block:1.8rem; }
.admin-activity-panel { margin-top:2.5rem; }
.admin-activity-filters { display:grid; grid-template-columns:1fr 1.25fr 1fr auto; gap:.65rem; margin-bottom:1rem; }
.admin-activity-filters .secondary-button { white-space:nowrap; }
.admin-activity-list { display:grid; gap:.5rem; }
.admin-activity-row { display:grid; grid-template-columns:2.45rem minmax(0,1fr); gap:.8rem; align-items:center; padding:.82rem 1rem; border:1px solid var(--line); border-radius:.82rem; background:linear-gradient(120deg,rgba(17,23,53,.82),rgba(12,16,38,.76)); }
.admin-activity-icon { display:grid; place-items:center; width:2.25rem; height:2.25rem; border-radius:.7rem; background:rgba(106,123,255,.1); font-size:1rem; }
.admin-activity-row p { margin:0; color:#ebe6ff; font-size:.77rem; line-height:1.45; }
.admin-activity-row time { display:block; margin-top:.2rem; color:var(--muted); font-size:.62rem; }
.admin-activity-more { width:100%; margin-top:.8rem; }
.admin-analytics-panel { margin-top:2.5rem; }
.admin-analytics-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; margin-top:1rem; }
.analytics-card { min-height:9rem; padding:1rem; border:1px solid var(--line); border-radius:.95rem; background:linear-gradient(145deg,rgba(23,30,66,.78),rgba(12,16,38,.9)); }
.analytics-card-head { display:flex; align-items:center; gap:.4rem; color:var(--muted); text-transform:uppercase; letter-spacing:.06em; }
.analytics-dot { width:.55rem; height:.55rem; border-radius:50%; background:#7f87a8; box-shadow:0 0 .8rem currentColor; }
.analytics-card h3 { margin:.75rem 0 .5rem; font-size:.78rem; color:#cbd1ee; }
.analytics-card>strong { display:block; font-size:1.55rem; letter-spacing:-.05em; }
.analytics-card p { margin:.55rem 0 0; color:var(--muted); font-size:.65rem; }
.analytics-card.green { border-color:rgba(32,200,117,.48); background:linear-gradient(145deg,rgba(32,200,117,.12),rgba(12,16,38,.9)); }
.analytics-card.green .analytics-dot { background:var(--green); }
.analytics-card.green>strong { color:var(--green); }
.analytics-card.yellow { border-color:rgba(255,201,78,.48); background:linear-gradient(145deg,rgba(255,201,78,.1),rgba(12,16,38,.9)); }
.analytics-card.yellow .analytics-dot { background:#ffc94e; }
.analytics-card.yellow>strong { color:#ffc94e; }
.analytics-card.red { border-color:rgba(255,85,120,.48); background:linear-gradient(145deg,rgba(255,85,120,.1),rgba(12,16,38,.9)); }
.analytics-card.red .analytics-dot { background:var(--red); }
.analytics-card.red>strong { color:var(--red); }
.analytics-card.unavailable { opacity:.72; }
.admin-analytics-refresh { margin-top:.85rem; }
@media(max-width:760px){.admin-analytics-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.admin-analytics-grid{grid-template-columns:1fr}}

.bottom-nav { position:fixed; z-index:30; left:50%; bottom:max(.8rem,env(safe-area-inset-bottom)); transform:translateX(-50%); width:min(35rem,calc(100% - 1rem)); display:grid; grid-template-columns:repeat(5,1fr); padding:.46rem; border:1px solid var(--line); border-radius:1.1rem; background:rgba(10,14,34,.91); backdrop-filter:blur(22px) saturate(130%); box-shadow:0 1rem 3rem rgba(0,0,0,.45); }
.bottom-nav a { display:grid; justify-items:center; gap:.2rem; padding:.48rem .2rem; border-radius:.7rem; color:var(--muted); text-decoration:none; font-size:.59rem; font-weight:600; }
.bottom-nav b { font-size:1.05rem; line-height:1; }
.bottom-nav a.active { color:#fff; background:linear-gradient(120deg,rgba(106,123,255,.24),rgba(255,78,216,.14)); box-shadow:inset 0 1px rgba(255,255,255,.04); }
dialog { width:min(28rem,calc(100% - 1.5rem)); border:1px solid rgba(255,78,216,.34); border-radius:1.1rem; padding:0; background:linear-gradient(145deg,#171e42,#0d122b); color:#ebe6ff; box-shadow:0 2rem 6rem rgba(0,0,0,.55),0 0 2rem rgba(106,123,255,.08); }
dialog::backdrop { background:rgba(4,6,16,.78); backdrop-filter:blur(7px); }
dialog form { position:relative; display:grid; gap:1rem; padding:1.5rem; }
.dialog-close { position:absolute; right:.8rem; top:.7rem; border:0; background:transparent; color:var(--muted); font-size:1.5rem; }
.dialog-close:hover { color:var(--pink); }
.dialog-actions { display:grid; grid-template-columns:1fr 1.4fr; gap:.6rem; }
.fee-preview { min-height:1.2em; margin:0; color:var(--muted); font-size:.74rem; }
.price-reference { margin:0; padding:.85rem 1rem; border:1px solid rgba(255,78,216,.28); border-radius:.78rem; background:linear-gradient(110deg,rgba(106,123,255,.12),rgba(255,78,216,.09)); color:#fff; font-size:.85rem; font-weight:800; }
.confirm-dialog { overflow:hidden; }
.confirm-dialog::before { content:""; position:absolute; inset:-20% -35%; pointer-events:none; background:radial-gradient(ellipse at 78% 18%,rgba(255,78,216,.24),transparent 35%),radial-gradient(ellipse at 15% 82%,rgba(106,123,255,.2),transparent 38%),linear-gradient(100deg,transparent 36%,rgba(106,123,255,.08) 58%,rgba(255,78,216,.2) 76%,rgba(255,154,107,.12) 88%,transparent 96%); filter:blur(8px); }
.confirm-dialog form { position:relative; z-index:1; }
.confirm-dialog h2 { max-width:85%; font-size:clamp(2rem,8vw,3rem); line-height:.95; letter-spacing:-.065em; }
.confirm-player { margin:.2rem 0 0; color:#fff; font-size:1.15rem; font-weight:800; letter-spacing:-.025em; }
.confirm-summary { display:grid; gap:.6rem; padding:1rem; border:1px solid var(--line); border-radius:.85rem; background:rgba(7,10,24,.5); box-shadow:inset 0 1px rgba(255,255,255,.025); }
.confirm-summary-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.confirm-summary-row span { color:var(--muted); font-size:.75rem; }
.confirm-summary-row strong { color:#ebe6ff; font-size:.9rem; text-align:right; }
.toast { position:fixed; z-index:50; left:50%; bottom:6.2rem; transform:translate(-50%,1rem); max-width:calc(100% - 2rem); padding:.75rem 1rem; border:1px solid rgba(255,78,216,.3); border-radius:.75rem; background:#ebe6ff; color:#0b1026; font-size:.78rem; font-weight:700; box-shadow:0 1rem 3rem rgba(0,0,0,.35); opacity:0; pointer-events:none; transition:.2s ease; }
.toast.show { opacity:1; transform:translate(-50%,0); }
#knowledge-assessment-panel { margin:1.25rem 0 2rem; }
#knowledge-assessment-form fieldset { display:grid; gap:.45rem; margin:1rem 0; padding:1rem; border:1px solid var(--line); border-radius:.8rem; }
#knowledge-assessment-form legend { padding:0 .35rem; color:#fff; font-weight:750; }
#knowledge-assessment-form fieldset label { display:flex; grid-template-columns:none; align-items:center; gap:.65rem; color:var(--muted); font-weight:500; }
#knowledge-assessment-form input[type="radio"] { width:auto; margin:0; }
@media(prefers-reduced-motion:no-preference){.metric.primary::before{animation:market-trace 6s ease-in-out infinite}@keyframes market-trace{0%,100%{transform:translateX(-18%) rotate(-3deg);opacity:.3}50%{transform:translateX(18%) rotate(-3deg);opacity:.75}}}
@media(max-width:760px){.topbar-actions{gap:.6rem}.service-state span{display:none}.access-screen{grid-template-columns:1fr;padding:2.5rem 1rem 5rem}.access-copy h1{font-size:clamp(2.8rem,14vw,4.6rem)}.access-copy::before{right:-1rem;top:-3rem}.rule-strip{gap:1.5rem}.metric-grid{grid-template-columns:1fr 1fr}.metric.primary{grid-column:span 2}.matchday-header{align-items:flex-start;flex-direction:column}.matchday-groups{grid-template-columns:1fr}.matchday-navigation{width:100%;justify-content:space-between}.filters{grid-template-columns:1fr}.asset-row{grid-template-columns:auto minmax(0,1fr) auto}.asset-row .row-actions{grid-column:1/-1;justify-content:flex-start}.offer-row{grid-template-columns:1fr auto}.offer-price{align-items:flex-start}.offer-row .row-actions{grid-column:1/-1;justify-content:flex-start}.recognition-grid{grid-template-columns:1fr 1fr}.admin-activity-filters{grid-template-columns:1fr}.admin-activity-row{padding:.78rem}}
@media(max-width:420px){.brand small,.topbar #account-link{display:none}.app-shell{padding-inline:.85rem}.metric-grid{grid-template-columns:1fr}.metric.primary{grid-column:auto}.summary-card{display:grid;grid-template-columns:1fr 1fr}.recognition-grid{grid-template-columns:1fr}.rule-strip{justify-content:space-between;gap:.6rem}}
