:root {
  --bg: #050505;
  --panel: #0c0c0e;
  --panel-2: #111114;
  --line: #25252a;
  --text: #f2f2f3;
  --muted: #92929b;
  --red: #d5202a;
  --red-2: #ff313d;
  --sidebar-w: 284px;
  --bottom-h: 86px;
}

* { box-sizing: border-box; }
html { background: var(--bg); color-scheme: dark; }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--text);
  background:
    radial-gradient(circle at 78% -12%, rgba(213,32,42,.11), transparent 29%),
    #060606;
  font-family: Inter, system-ui, sans-serif;
}
body.sidebar-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
img { display: block; max-width: 100%; }
code { color: #ddd; background: #17171a; border: 1px solid #2a2a2f; padding: 2px 6px; border-radius: 6px; }

.eyebrow { color: var(--theme, var(--red)); font: 700 13px Barlow Condensed, sans-serif; letter-spacing: .09em; }
.primary-btn {
  width: 100%; border: 0; border-radius: 10px; padding: 14px 18px;
  color: #fff; background: linear-gradient(90deg, var(--theme, var(--red)), color-mix(in srgb, var(--theme, var(--red)) 75%, #101010));
  font: 800 17px Barlow Condensed, sans-serif; letter-spacing: .04em; text-transform: uppercase;
  box-shadow: 0 12px 30px color-mix(in srgb, var(--theme, var(--red)) 18%, transparent);
}
.primary-btn.ghost { background: #151518; color: #777; border: 1px solid #29292e; box-shadow: none; cursor: not-allowed; }
.primary-btn.complete { background: #23724a; }
.outline-btn { border: 1px solid var(--theme, var(--red)); color: var(--theme, var(--red)); background: transparent; border-radius: 9px; padding: 10px 22px; font: 700 13px Barlow Condensed; }

/* standalone: mapa/admin */
.standalone-shell { min-height: 100vh; }
.simple-header {
  height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 18px;
  padding: 0 22px; position: sticky; top: 0; z-index: 70;
  background: rgba(5,5,5,.88); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(255,255,255,.07);
}
.brand { display: flex; gap: 10px; align-items: center; }
.brand-mark { width: 35px; height: 35px; display: grid; place-items: center; border: 1px solid #44444a; border-radius: 50%; }
.brand small { display:block; color:#aaaab2; font-size:8px; letter-spacing:.42em; }
.brand strong { display:block; font:700 25px/1 Barlow Condensed,sans-serif; letter-spacing:.09em; }
.header-link { color:#aaaab2; border:1px solid #2d2d32; border-radius:999px; padding:9px 12px; font-size:10px; font-weight:800; }

.hero-map, .admin-page { width: min(860px, 100%); margin: 0 auto; padding: 34px 18px 70px; }
.hero-copy { max-width: 680px; }
.hero-copy h1, .page-title-block h1 { margin: 6px 0 12px; font: 800 clamp(42px, 8vw, 72px)/.92 Barlow Condensed,sans-serif; letter-spacing: -.015em; }
.hero-copy p, .page-title-block p { max-width: 660px; color:#9c9ca5; line-height:1.65; font-size:14px; }
.nickname-form { margin: 24px 0 30px; max-width: 520px; }
.nickname-form label { display:block; color:#888891; font:700 11px Barlow Condensed; letter-spacing:.08em; margin-bottom:7px; }
.nickname-form > div { display:flex; gap:8px; }
.nickname-form input { flex:1; min-width:0; border:1px solid #2d2d32; background:#101012; color:#fff; border-radius:10px; padding:12px 14px; outline:0; }
.nickname-form button { border:0; background:#d5202a; color:#fff; border-radius:10px; padding:0 18px; font:800 12px Barlow Condensed; }

.map-stage { position:relative; padding-left:50px; }
.map-line { position:absolute; top:24px; bottom:24px; left:20px; width:1px; background:linear-gradient(#d5202a 0 35%, #35353b 35%); }
.character-node { position:relative; margin-bottom:20px; --theme:#d5202a; }
.node-index { position:absolute; left:-50px; top:24px; width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:#08080a; border:1px solid color-mix(in srgb,var(--theme) 70%,#333); color:var(--theme); font:800 12px Barlow Condensed; z-index:2; }
.character-card { overflow:hidden; border-radius:18px; border:1px solid #29292e; background:linear-gradient(145deg,#111114,#080809); box-shadow:0 28px 60px rgba(0,0,0,.3); }
.character-art { position:relative; height:245px; overflow:hidden; background:#0b0b0d; }
.character-art img { width:100%; height:100%; object-fit:cover; object-position:center 18%; filter:saturate(.88) contrast(1.03); }
.character-art:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 42%,#0d0d0f 100%); pointer-events:none; }
.silhouette { height:100%; display:grid; place-items:center; background:radial-gradient(circle at 50% 30%, color-mix(in srgb,var(--theme) 18%,transparent),transparent 36%), linear-gradient(150deg,#222226,#080809); }
.silhouette span { font:800 120px Barlow Condensed; color:rgba(255,255,255,.07); }
.status-badge { position:absolute; z-index:3; top:12px; right:12px; border:1px solid color-mix(in srgb,var(--theme) 65%,#444); background:#08080bdc; border-radius:999px; padding:7px 9px; font-size:9px; font-weight:800; letter-spacing:.06em; }
.character-info { padding:17px; }
.character-info > span { color:var(--theme); font:700 12px Barlow Condensed; letter-spacing:.1em; }
.character-info h2 { margin:3px 0 7px; font:800 36px/.95 Barlow Condensed; text-transform:uppercase; }
.character-info p { margin:0 0 16px; color:#9a9aa3; line-height:1.6; font-size:13px; }
.character-node.locked { opacity:.56; filter:grayscale(.8); }
.image-hint, .admin-tip { margin-top:22px; padding:16px; border:1px dashed #34343a; background:#0d0d10; border-radius:14px; color:#9999a2; font-size:12px; line-height:1.65; }
.image-hint strong, .admin-tip strong { display:block; color:#ddd; font:800 14px Barlow Condensed; margin-bottom:6px; }
.admin-tip p { margin:5px 0; }

/* player layout */
.player-shell { min-height:100vh; --theme:#d5202a; }
.player-sidebar {
  position:fixed; inset:0 auto 0 0; width:var(--sidebar-w); z-index:90;
  border-right:1px solid #29292e; background:linear-gradient(180deg,#080809,#050506);
  transition:width .25s ease, transform .25s ease;
  overflow:visible;
}
.sidebar-inner { height:100%; overflow-y:auto; padding:20px 22px calc(var(--bottom-h) + 30px); scrollbar-width:thin; scrollbar-color:#333 transparent; }
.sidebar-collapse { position:absolute; top:18px; right:-15px; z-index:3; width:30px; height:30px; border-radius:50%; border:1px solid #35353b; background:#0a0a0c; color:#aaa; font-size:22px; line-height:1; }
.side-brand { display:flex; align-items:center; gap:9px; margin-bottom:30px; }
.side-brand small { display:block; color:#888891; font-size:7px; letter-spacing:.42em; }
.side-brand strong { font:700 22px Barlow Condensed; letter-spacing:.08em; }
.side-heading { color:#ddd; font:600 14px Barlow Condensed; letter-spacing:.06em; padding-bottom:15px; border-bottom:1px solid #242429; }
.side-character { display:flex; gap:12px; align-items:center; margin:18px 0; }
.side-symbol { width:48px; height:48px; display:grid; place-items:center; color:var(--theme); border:1px solid color-mix(in srgb,var(--theme) 45%,#333); border-radius:13px; font-size:22px; background:color-mix(in srgb,var(--theme) 8%,#0b0b0c); }
.side-character strong { display:block; color:var(--theme); font:800 28px/.9 Barlow Condensed; text-transform:uppercase; }
.side-character span:last-child { display:block; margin-top:7px; color:#d5d5d9; font:600 16px Barlow Condensed; }
.side-description { color:#93939c; font-size:12px; line-height:1.7; margin:20px 0 26px; }
.side-level { border-top:1px solid #25252a; border-bottom:1px solid #25252a; padding:20px 0; }
.side-level > span { display:block; color:#ddd; font:600 14px Barlow Condensed; }
.side-level > strong { display:block; color:var(--theme); font:800 48px/.9 Barlow Condensed; margin:6px 0 11px; }
.side-xp { height:8px; background:#242429; overflow:hidden; border-radius:99px; }
.side-xp i { display:block; height:100%; background:var(--theme); border-radius:99px; }
.side-level small { display:block; text-align:right; color:#91919a; margin-top:7px; font-size:9px; }
.side-stats { display:flex; flex-direction:column; gap:16px; padding:22px 0; border-bottom:1px solid #25252a; }
.side-stats > div { display:grid; grid-template-columns:1fr auto; gap:6px 8px; align-items:center; }
.side-stats span { font:600 13px Barlow Condensed; color:#ddd; }
.side-stats strong { font:700 18px Barlow Condensed; }
.side-stats i { grid-column:1/-1; display:block; height:6px; background:#29292e; border-radius:99px; overflow:hidden; }
.side-stats b { display:block; height:100%; background:var(--theme); border-radius:99px; }
.side-streak { display:flex; align-items:center; justify-content:space-between; margin:20px 0; border:1px solid #30282b; border-radius:14px; padding:14px 18px; }
.side-streak span { display:block; font:600 12px Barlow Condensed; }
.side-streak strong { display:block; color:var(--theme); font:800 42px/.9 Barlow Condensed; }
.side-streak small { color:#ddd; font:600 10px Barlow Condensed; }
.side-streak .fire { color:var(--theme); font-size:42px; }
.side-section-title { display:flex; justify-content:space-between; margin:22px 0 12px; }
.side-section-title span { font:600 14px Barlow Condensed; }
.side-section-title small { color:var(--theme); font-size:8px; }
.achievement { display:flex; gap:10px; align-items:center; margin-bottom:12px; }
.achievement > b { width:36px; height:36px; display:grid; place-items:center; border:1px solid #3a3a40; border-radius:50%; background:#121215; font-size:14px; }
.achievement strong { display:block; font-size:10px; }
.achievement small { display:block; color:#777780; margin-top:4px; font-size:8px; }
.change-character, .admin-shortcut { display:block; margin-top:18px; border:1px solid #34343a; border-radius:9px; padding:10px; text-align:center; color:#b0b0b8; font:700 10px Barlow Condensed; }
.admin-shortcut { margin-top:7px; border-color:transparent; color:#676770; }

.player-main { margin-left:var(--sidebar-w); min-height:100vh; padding-bottom:calc(var(--bottom-h) + 18px); transition:margin-left .25s ease; }
.player-shell.sidebar-collapsed .player-sidebar { width:72px; }
.player-shell.sidebar-collapsed .sidebar-inner { padding:18px 12px calc(var(--bottom-h) + 20px); overflow:hidden; }
.player-shell.sidebar-collapsed .side-brand > div,
.player-shell.sidebar-collapsed .side-heading,
.player-shell.sidebar-collapsed .side-character > div,
.player-shell.sidebar-collapsed .side-description,
.player-shell.sidebar-collapsed .side-level,
.player-shell.sidebar-collapsed .side-vitals,
.player-shell.sidebar-collapsed .side-stats,
.player-shell.sidebar-collapsed .side-streak,
.player-shell.sidebar-collapsed .side-achievements,
.player-shell.sidebar-collapsed .side-arena-links,
.player-shell.sidebar-collapsed .change-character,
.player-shell.sidebar-collapsed .admin-shortcut { display:none; }
.player-shell.sidebar-collapsed .side-brand { justify-content:center; }
.player-shell.sidebar-collapsed .side-character { justify-content:center; }
.player-shell.sidebar-collapsed .side-symbol { width:42px; height:42px; }
.player-shell.sidebar-collapsed .sidebar-collapse { transform:rotate(180deg); }
.player-shell.sidebar-collapsed .player-main { margin-left:72px; }

.mobile-sidebar-button { display:none; }
.sidebar-backdrop { display:none; }

.game-bottom-nav {
  position:fixed; z-index:100; left:var(--sidebar-w); right:0; bottom:0; height:var(--bottom-h);
  display:grid; grid-template-columns:repeat(5,1fr); align-items:end; padding:8px max(10px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom));
  background:rgba(7,7,8,.94); border-top:1px solid #2a2a2f; backdrop-filter:blur(18px); transition:left .25s ease;
}
.player-shell.sidebar-collapsed .game-bottom-nav { left:72px; }
.game-bottom-nav a { min-width:0; height:66px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:5px; color:#92929a; border-radius:14px; }
.game-bottom-nav a span { font-size:25px; line-height:1; }
.game-bottom-nav a small { font:600 10px Barlow Condensed; white-space:nowrap; }
.game-bottom-nav a.active { color:var(--theme); }
.game-bottom-nav .feed-main { width:82px; height:82px; justify-self:center; transform:translateY(-13px); border:1px solid #3b3b41; border-radius:50%; background:#09090b; box-shadow:0 0 0 5px #070708; }
.game-bottom-nav .feed-main span { width:58px; height:58px; display:grid; place-items:center; border:2px solid var(--theme); border-radius:50%; color:var(--theme); font-size:30px; }
.game-bottom-nav .feed-main small { position:absolute; bottom:-4px; color:#bdbdc3; }

/* dashboard inspired by reference */
.character-dashboard { min-height:100vh; }
.dashboard-hero { min-height:670px; position:relative; overflow:hidden; background:#101012; }
.hero-image-wrap { position:absolute; inset:0; }
.hero-image-wrap img { width:100%; height:100%; object-fit:cover; object-position:center top; filter:grayscale(.78) contrast(1.09); }
.ink-silhouette { width:100%; height:100%; display:grid; place-items:center; background:radial-gradient(circle at 54% 25%, #333338 0, #1a1a1d 25%, #080809 72%); }
.ink-silhouette span { font:800 min(55vw,420px) Barlow Condensed; color:#020203; text-shadow:0 0 1px #333; }
.dashboard-hero-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.12) 35%,rgba(5,5,5,.92) 100%), linear-gradient(90deg,rgba(0,0,0,.22),transparent 45%); }
.floating-mission { position:absolute; z-index:2; left:7%; right:7%; bottom:30px; max-width:650px; padding:22px 26px; border:1px solid color-mix(in srgb,var(--theme) 45%,#34343a); border-radius:15px; background:rgba(9,9,10,.78); backdrop-filter:blur(8px); }
.floating-mission h1 { margin:5px 0 0; font:800 clamp(38px,6vw,56px)/1 Barlow Condensed; }
.floating-mission > strong { display:block; color:var(--theme); font:800 26px Barlow Condensed; margin:4px 0; }
.floating-mission > small { display:block; color:#d1d1d5; font:500 12px Barlow Condensed; margin-bottom:14px; }

.journey-strip, .dark-card { border:1px solid #29292e; background:linear-gradient(145deg,#0f0f11,#09090b); border-radius:14px; }
.journey-strip { margin:16px 22px; padding:18px 22px; }
.section-head > div { display:flex; justify-content:space-between; gap:18px; align-items:center; }
.section-head span { font:600 16px Barlow Condensed; }
.section-head small { color:var(--theme); font:600 10px Barlow Condensed; }
.journey-nodes { display:flex; align-items:center; margin:19px 0 15px; }
.journey-nodes span { width:38px; height:38px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; border:1px solid #4a4a50; background:#111114; font-size:12px; }
.journey-nodes span.done, .journey-nodes span.active { border-color:var(--theme); color:#fff; box-shadow:0 0 0 4px color-mix(in srgb,var(--theme) 9%,transparent); }
.journey-nodes span.done { background:color-mix(in srgb,var(--theme) 35%,#111); }
.journey-nodes i { flex:1; height:2px; background:#38383e; }
.journey-progress { display:flex; align-items:center; gap:20px; color:#c4c4ca; font:500 11px Barlow Condensed; }
.journey-progress i { flex:1; height:6px; background:#2d2d32; border-radius:99px; overflow:hidden; }
.journey-progress b { display:block; width:32%; height:100%; background:var(--theme); }
.dashboard-grid { display:grid; grid-template-columns:1fr 1.45fr; gap:12px; padding:0 22px 28px; }
.dark-card { padding:20px; }
.dark-card h2 { margin:7px 0 4px; font:700 25px Barlow Condensed; }
.dark-card p { color:#9999a1; margin:0; font-size:12px; }
.position { display:flex; gap:13px; align-items:center; border-top:1px solid #2a2a2f; margin:18px 0; padding-top:18px; }
.position > span { width:58px; height:58px; display:grid; place-items:center; border:1px solid #414147; border-radius:50%; font-size:28px; }
.position small, .position strong, .position em { display:block; }
.position small { font-size:9px; color:#bbb; }.position strong{color:var(--theme);font:800 34px Barlow Condensed}.position em{font-style:normal;color:#bbb;font-size:9px}
.card-title-row { display:flex; justify-content:space-between; }.card-title-row small{color:var(--theme);font-size:8px}
.ranking-card ol { padding:0; margin:12px 0 0; list-style:none; }
.ranking-card li { display:grid; grid-template-columns:18px 31px 1fr auto; gap:8px; align-items:center; padding:8px 0; border-bottom:1px solid #232328; font-size:11px; }
.ranking-card li:last-child{border-bottom:0}.ranking-card li.me strong,.ranking-card li.me em{color:var(--theme)}
.rank-avatar { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; border:1px solid #55555c; background:#18181b; font:700 11px Barlow Condensed; }
.ranking-card li b { font:700 13px Barlow Condensed; }.ranking-card li strong{font-weight:500}.ranking-card li em{font-style:normal;color:#b0b0b8;font-size:9px}

/* Feed / content pages */
.feed-page, .content-page { width:min(860px,100%); margin:0 auto; padding:34px 20px 36px; }
.page-title-block { margin-bottom:20px; }
.feed-page .page-title-block h1, .content-page .page-title-block h1, .admin-page .page-title-block h1 { font-size:clamp(46px,7vw,68px); }
.composer, .post-card, .profile-main-card, .mission-item, .journey-stage, .admin-form, .admin-list { border:1px solid #29292f; background:linear-gradient(145deg,#101012,#09090b); border-radius:15px; }
.composer { padding:15px; margin-bottom:14px; }
.composer-user { display:flex; align-items:center; gap:9px; margin-bottom:9px; }
.composer-user img, .composer-user > span { width:37px; height:37px; border-radius:50%; object-fit:cover; display:grid; place-items:center; background:#222227; border:1px solid var(--theme); font-weight:800; }
.composer-user strong { font-size:11px; }
.composer textarea { width:100%; min-height:105px; border:0; outline:0; background:transparent; color:#fff; resize:vertical; line-height:1.5; }
.composer-actions { display:flex; justify-content:space-between; align-items:center; gap:10px; border-top:1px solid #27272c; padding-top:11px; }
.composer-actions .primary-btn { width:auto; padding:10px 18px; }
.file-pill { position:relative; overflow:hidden; border:1px solid #36363c; border-radius:999px; padding:9px 11px; color:#aaaab2; font-size:9px; font-weight:700; }
.file-pill input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.feed-list { display:flex; flex-direction:column; gap:12px; }
.post-card { padding:15px; scroll-margin-top:20px; }
.post-head { display:flex; align-items:center; gap:9px; }
.avatar-sm { width:38px; height:38px; border-radius:50%; display:grid; place-items:center; background:#242429; border:1px solid #3d3d43; font-weight:800; }
.post-head strong,.post-head small{display:block}.post-head strong{font-size:11px}.post-head small{font-size:8px;color:#777780;margin-top:3px}
.post-menu { margin-left:auto; border:0; background:transparent; color:#777; }
.post-card > p { color:#d0d0d4; font-size:13px; line-height:1.6; }
.post-image { width:100%; max-height:520px; object-fit:cover; border-radius:12px; border:1px solid #2b2b30; margin-top:10px; }
.post-actions { display:flex; gap:8px; border-top:1px solid #242429; margin-top:12px; padding-top:9px; }
.post-actions button { border:0; background:transparent; color:#909099; font-size:9px; padding:6px 3px; }
.comment-list { margin:8px 0 0; padding:10px 0 2px; border-top:1px solid #202025; display:flex; flex-direction:column; gap:7px; }
.comment { display:flex; gap:7px; font-size:10px; line-height:1.45; }.comment b{color:var(--theme)}.comment span{color:#bcbcc2}
.comment-form { display:flex; gap:7px; margin-top:10px; }
.comment-form input { flex:1; min-width:0; border:1px solid #2e2e34; background:#141417; color:#fff; border-radius:9px; padding:9px 10px; outline:0; font-size:10px; }
.comment-form button { border:1px solid #38383e; background:#18181b; color:#ddd; border-radius:9px; padding:0 11px; font:700 9px Barlow Condensed; }

.vertical-journey { display:flex; flex-direction:column; gap:10px; }
.journey-stage { display:grid; grid-template-columns:52px 1fr 40px; gap:13px; align-items:center; padding:16px; position:relative; overflow:hidden; }
.journey-stage:before { content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:#333; }
.journey-stage.active:before,.journey-stage.done:before { background:var(--theme); }
.journey-stage.locked { opacity:.48; }
.stage-number { width:46px; height:46px; display:grid; place-items:center; border:1px solid #44444b; border-radius:50%; font:800 13px Barlow Condensed; }
.journey-stage small { color:var(--theme); font:700 9px Barlow Condensed; }.journey-stage h2{margin:2px 0;font:800 26px Barlow Condensed}.journey-stage p{margin:0;color:#8d8d96;font-size:10px}.journey-stage>b{text-align:center}

.mission-list { display:flex; flex-direction:column; gap:10px; }
.mission-item { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:17px; }
.mission-item.featured { border-color:color-mix(in srgb,var(--theme) 55%,#333); }
.mission-item.locked { opacity:.45; }
.mission-item small { color:var(--theme); font:700 9px Barlow Condensed; }.mission-item h2{margin:2px 0;font:800 27px Barlow Condensed}.mission-item p{margin:0;color:#888891;font-size:10px}
.mission-reward { text-align:right; }.mission-reward strong{display:block;color:var(--theme);font:800 18px Barlow Condensed;margin-bottom:6px}.mission-reward button{border:1px solid #39393f;background:#17171a;color:#fff;border-radius:8px;padding:8px 12px;font:700 9px Barlow Condensed}

.profile-main-card { padding:18px; }
.profile-identity { display:flex; gap:13px; align-items:center; }
.profile-identity img,.profile-identity>span { width:72px;height:72px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:#1b1b1f;border:2px solid var(--theme);font:800 27px Barlow Condensed; }
.profile-identity small{color:var(--theme);font:700 9px Barlow Condensed}.profile-identity h2{margin:2px 0;font:800 29px Barlow Condensed}.profile-identity p{margin:0;color:#898991;font-size:10px}
.avatar-upload { display:flex; gap:8px; margin-top:16px; }.avatar-upload label{flex:1;position:relative;overflow:hidden;border:1px dashed #39393f;border-radius:9px;padding:10px;color:#96969f;text-align:center;font:700 9px Barlow Condensed}.avatar-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.avatar-upload button{border:1px solid var(--theme);background:transparent;color:var(--theme);border-radius:9px;padding:0 15px;font:700 9px Barlow Condensed}
.profile-metrics { display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:10px}.profile-metrics article{border:1px solid #29292f;background:#0f0f12;border-radius:12px;padding:14px}.profile-metrics small{display:block;color:#81818a;font:700 8px Barlow Condensed}.profile-metrics strong{display:block;margin-top:5px;font:800 22px Barlow Condensed}.change-character.big{margin-top:12px;padding:13px;color:var(--theme);border-color:color-mix(in srgb,var(--theme) 45%,#333)}

/* admin */
.admin-form { padding:15px; margin:16px 0 14px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:14px; }
.form-grid label { display:flex; flex-direction:column; gap:6px; color:#9999a2; font-size:9px; font-weight:700; text-transform:uppercase; }
.form-grid label.full { grid-column:1/-1; }.form-grid label.check { grid-column:1/-1; flex-direction:row; align-items:center; }
.form-grid input:not([type=checkbox]):not([type=color]),.form-grid textarea { width:100%;border:1px solid #2d2d32;background:#151518;color:#fff;border-radius:9px;padding:10px;outline:0}.form-grid textarea{min-height:80px;resize:vertical}.form-grid input[type=color]{width:100%;height:40px;border:0;background:transparent}
.admin-list{overflow:hidden}.admin-list article{display:flex;align-items:center;gap:9px;padding:11px;border-bottom:1px solid #242429}.admin-list article:last-child{border-bottom:0}.admin-thumb{width:48px;height:48px;flex:0 0 auto;border-radius:10px;overflow:hidden;display:grid;place-items:center;background:#151518;border:1px solid color-mix(in srgb,var(--theme) 50%,#333);font:800 20px Barlow Condensed}.admin-thumb img{width:100%;height:100%;object-fit:cover}.grow{flex:1;min-width:0}.grow strong,.grow small{display:block}.grow strong{font-size:11px}.grow small{color:#777780;font-size:8px;margin-top:3px}.status-dot{font-size:7px;font-weight:800;color:#777}.status-dot.on{color:#53c77d}.mini-btn{border:1px solid #35353b;background:#17171a;color:#bbb;border-radius:8px;padding:7px;font-size:8px}

.flash-stack { position:fixed; top:18px; left:50%; transform:translateX(-50%); z-index:150; width:min(430px,calc(100% - 32px)); }
.flash { padding:11px 14px; border:1px solid #3b3b41; border-radius:10px; background:#161619; box-shadow:0 12px 35px #0008; font-size:11px; transition:.3s; }.flash.ok{border-color:#2f7450}.flash.warn{border-color:#8b5532}.flash.hide{opacity:0;transform:translateY(-8px);pointer-events:none}

@media (min-width: 700px) {
  .character-card { display:grid; grid-template-columns:42% 58%; min-height:270px; }
  .character-art { height:100%; min-height:270px; }.character-info{display:flex;flex-direction:column;justify-content:center;padding:25px}.character-info form{margin-top:auto}
}

@media (max-width: 900px) {
  .player-sidebar { transform:translateX(-102%); width:min(86vw,300px); box-shadow:20px 0 60px #000a; }
  .player-shell.sidebar-mobile-open .player-sidebar { transform:translateX(0); }
  .sidebar-collapse { right:10px; top:18px; }
  .player-shell.sidebar-collapsed .player-sidebar { width:min(86vw,300px); }
  .player-shell.sidebar-collapsed .sidebar-inner { padding:20px 22px calc(var(--bottom-h) + 30px); overflow-y:auto; }
  .player-shell.sidebar-collapsed .side-brand > div,
  .player-shell.sidebar-collapsed .side-heading,
  .player-shell.sidebar-collapsed .side-character > div,
  .player-shell.sidebar-collapsed .side-description,
  .player-shell.sidebar-collapsed .side-level,
  .player-shell.sidebar-collapsed .side-vitals,
  .player-shell.sidebar-collapsed .side-stats,
  .player-shell.sidebar-collapsed .side-streak,
  .player-shell.sidebar-collapsed .side-achievements,
  .player-shell.sidebar-collapsed .side-arena-links,
  .player-shell.sidebar-collapsed .change-character,
  .player-shell.sidebar-collapsed .admin-shortcut { display:initial; }
  .player-shell.sidebar-collapsed .side-character,.player-shell.sidebar-collapsed .side-brand{justify-content:flex-start}.player-shell.sidebar-collapsed .side-streak{display:flex}
  .player-main,.player-shell.sidebar-collapsed .player-main { margin-left:0; }
  .game-bottom-nav,.player-shell.sidebar-collapsed .game-bottom-nav { left:0; }
  .mobile-sidebar-button { display:grid; place-items:center; position:fixed; z-index:80; left:13px; top:13px; width:40px; height:40px; border-radius:10px; border:1px solid #34343a; background:rgba(8,8,10,.88); color:#ddd; backdrop-filter:blur(12px); }
  .sidebar-backdrop { display:block; position:fixed; inset:0; z-index:85; background:#000a; opacity:0; pointer-events:none; transition:.25s; }
  .player-shell.sidebar-mobile-open .sidebar-backdrop { opacity:1; pointer-events:auto; }
  .dashboard-hero { min-height:600px; }
}

@media (max-width: 620px) {
  :root { --bottom-h:78px; }
  .simple-header{height:64px;padding:0 14px}.brand strong{font-size:22px}
  .hero-map,.admin-page{padding:28px 14px 60px}.hero-copy h1{font-size:45px}.map-stage{padding-left:42px}.map-line{left:15px}.node-index{left:-42px;width:32px;height:32px;top:20px}
  .character-art{height:220px}.character-info h2{font-size:32px}
  .dashboard-hero{min-height:540px}.floating-mission{left:14px;right:14px;bottom:18px;padding:18px}.floating-mission h1{font-size:40px}
  .journey-strip{margin:10px;padding:14px}.journey-nodes span{width:29px;height:29px}.journey-progress{gap:9px;font-size:9px}.section-head>div{align-items:flex-start;flex-direction:column;gap:2px}
  .dashboard-grid{grid-template-columns:1fr;padding:0 10px 22px}.dark-card{padding:16px}
  .feed-page,.content-page{padding:70px 12px 28px}.page-title-block h1{font-size:48px}.page-title-block p{font-size:12px}
  .game-bottom-nav{padding-left:3px;padding-right:3px}.game-bottom-nav a{height:58px}.game-bottom-nav a span{font-size:21px}.game-bottom-nav a small{font-size:8px}.game-bottom-nav .feed-main{width:70px;height:70px}.game-bottom-nav .feed-main span{width:50px;height:50px;font-size:25px}.game-bottom-nav .feed-main small{font-size:7px}
  .mission-item{padding:14px}.mission-item h2{font-size:23px}.mission-reward strong{font-size:16px}
  .profile-metrics{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid label.full,.form-grid label.check{grid-column:auto}.admin-list article{flex-wrap:wrap}.status-dot{margin-left:auto}
}

/* =========================================================
   MVP 0.5 — biblioteca modular de imagens por personagem
   ========================================================= */
.side-symbol{overflow:hidden;padding:0}
.side-symbol img{width:100%;height:100%;object-fit:cover;object-position:center 24%;filter:contrast(1.08) saturate(.9)}

.player-main{position:relative;isolation:isolate}
.player-main::before{
  content:"";
  position:fixed;
  inset:0 0 var(--bottom-h) var(--sidebar-w);
  z-index:-1;
  pointer-events:none;
  background-image:linear-gradient(180deg,rgba(5,5,5,.96),rgba(5,5,5,.88)),var(--character-bg,none);
  background-size:cover;
  background-position:center;
  opacity:.42;
  transition:left .25s ease;
}
.player-shell.sidebar-collapsed .player-main::before{left:72px}

.dashboard-hero{
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.hero-image-wrap img{object-position:center 45%}

.asset-upload-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.asset-upload-grid label{
  min-height:92px;
  border:1px dashed #39393f;
  border-radius:10px;
  padding:12px;
  background:#111114;
  position:relative;
  overflow:hidden;
}
.asset-upload-grid label span{display:block;pointer-events:none}
.asset-upload-grid label b{display:block;color:#eee;font:800 13px Barlow Condensed;letter-spacing:.08em}
.asset-upload-grid label small{display:block;margin-top:3px;color:#777780;font-size:8px;text-transform:none;letter-spacing:0}
.asset-upload-grid input{margin-top:10px;width:100%;font-size:9px;color:#8f8f97}
.folder-path{display:inline-block;margin-top:6px;font-size:7px;white-space:normal}
.asset-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}
.asset-badges span{border:1px solid #34343a;border-radius:999px;padding:3px 6px;color:#5f5f67;font:700 7px Barlow Condensed;letter-spacing:.05em}
.asset-badges span.ready{color:#80d39d;border-color:#315a41;background:#0d1d13}
.character-assets-list article{align-items:flex-start}

@media(max-width:900px){
  .player-main::before,.player-shell.sidebar-collapsed .player-main::before{left:0}
}
@media(max-width:620px){
  .asset-upload-grid{grid-template-columns:1fr}
}

/* =====================================================
   AUTH / CONTA / PLANOS / ADMIN - MVP 0.6
   ===================================================== */
.header-actions{display:flex;align-items:center;gap:8px}.header-actions form{margin:0}.header-button{background:transparent;cursor:pointer}.admin-only{border-color:rgba(213,32,42,.45);color:#ef6a72}.admin-visible{color:var(--theme);border-color:color-mix(in srgb,var(--theme) 40%,#333)}
.side-logout{margin-top:7px}.side-logout button{width:100%;border:0;background:transparent;color:#696972;padding:8px;font:700 10px Barlow Condensed;cursor:pointer}
.account-chip>div{align-items:center}.account-chip strong{flex:1;padding:12px 14px;border:1px solid #2d2d32;background:#101012;border-radius:10px;font:800 17px Barlow Condensed}.account-chip a{padding:12px 14px;border:1px solid rgba(213,32,42,.45);border-radius:10px;color:#e6535b;font:800 10px Barlow Condensed;white-space:nowrap}

.auth-page{width:min(1120px,calc(100% - 28px));min-height:calc(100vh - 110px);margin:28px auto 50px;display:grid;grid-template-columns:1.08fr .92fr;border:1px solid #26262b;border-radius:24px;overflow:hidden;background:#09090b;box-shadow:0 40px 100px #0008}.auth-visual{position:relative;min-height:640px;padding:58px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:radial-gradient(circle at 75% 30%,rgba(213,32,42,.2),transparent 26%),linear-gradient(145deg,#111114,#050506 70%)}.auth-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.25),transparent),repeating-linear-gradient(135deg,transparent 0 34px,rgba(255,255,255,.012) 35px 36px)}.auth-visual img{position:absolute;top:48px;left:48px;width:190px;height:190px;object-fit:contain;opacity:.95}.auth-visual>span,.auth-visual h1,.auth-visual p,.auth-points{position:relative;z-index:1}.auth-visual>span{color:#d5202a;font:800 12px Barlow Condensed;letter-spacing:.25em}.auth-visual h1{max-width:570px;margin:10px 0 14px;font:800 clamp(46px,6vw,82px)/.88 Barlow Condensed}.auth-visual p{color:#9b9ba4;max-width:480px;line-height:1.6}.auth-points{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.auth-points span{border:1px solid #303036;background:#101013;padding:9px 12px;border-radius:999px;color:#c7c7cd;font-size:10px;font-weight:700}.auth-card{padding:58px 48px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,#0c0c0f,#08080a)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #28282d;margin-bottom:38px}.auth-tabs a{padding:13px 5px;text-align:center;color:#676770;font:800 12px Barlow Condensed;letter-spacing:.09em;border-bottom:2px solid transparent}.auth-tabs a.active{color:#fff;border-color:#d5202a}.auth-card h2{margin:8px 0 8px;font:800 38px Barlow Condensed}.auth-card>p{margin:0 0 26px;color:#8f8f98;font-size:12px;line-height:1.6}.auth-form{display:flex;flex-direction:column;gap:13px}.auth-form label{display:flex;flex-direction:column;gap:7px;color:#9a9aa3;font:800 9px Barlow Condensed;letter-spacing:.08em}.auth-form input{width:100%;border:1px solid #2e2e34;background:#121215;color:#fff;border-radius:11px;padding:13px 14px;outline:none}.auth-form input:focus{border-color:#a9252d;box-shadow:0 0 0 3px rgba(213,32,42,.08)}.auth-form label small{color:#66666f;font:400 9px Inter}.auth-form .primary-btn{margin-top:6px}.auth-help{display:block;margin-top:18px;color:#777780}.auth-help a{color:#ef5962}.setup-page .auth-visual{background:radial-gradient(circle at 70% 35%,rgba(213,32,42,.22),transparent 30%),#070708}

.account-page,.plans-page{width:min(980px,calc(100% - 28px));margin:0 auto;padding:45px 0 80px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.account-card,.plan-card,.payment-note,.plan-current{border:1px solid #2a2a2f;background:linear-gradient(145deg,#111114,#0a0a0c);border-radius:18px;padding:24px}.account-card>small,.plan-card>span{color:#d5202a;font:800 10px Barlow Condensed;letter-spacing:.1em}.account-card h2{margin:5px 0 2px;font:800 36px Barlow Condensed}.account-card>p{color:#85858e;margin:0 0 22px;font-size:11px}.account-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #242429;font-size:10px}.account-line span{color:#81818a}.account-line strong{font-size:10px}.days-left{display:flex;align-items:baseline;gap:10px;margin:14px 0 22px}.days-left strong{color:#d5202a;font:800 70px/.8 Barlow Condensed}.days-left span{color:#aaaab2;font:700 12px Barlow Condensed}.inline-btn{display:inline-block;width:auto;margin-top:14px}.account-actions{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.account-actions a{border:1px solid #303036;border-radius:10px;padding:11px 14px;color:#9999a2;font:800 10px Barlow Condensed}.plan-current{margin:22px 0 12px;color:#9b9ba4}.plan-current strong{color:#fff}.plan-current b{color:#d5202a}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.plan-card h2{margin:7px 0 6px;font:800 28px Barlow Condensed}.plan-card>strong{display:block;font:800 34px Barlow Condensed}.plan-card>p{min-height:48px;color:#878790;font-size:10px;line-height:1.55}.payment-note{margin-top:14px;border-style:dashed;color:#878790;font-size:11px;line-height:1.6}.payment-note strong{display:block;color:#ddd;font:800 14px Barlow Condensed;margin-bottom:4px}.payment-note p{margin:0}

.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0}.admin-stats article{border:1px solid #29292f;background:#0f0f12;border-radius:14px;padding:17px}.admin-stats small{display:block;color:#777780;font:700 8px Barlow Condensed}.admin-stats strong{display:block;color:#d5202a;font:800 36px Barlow Condensed;margin-top:5px}.admin-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.admin-modules a{min-height:160px;border:1px solid #29292f;background:linear-gradient(145deg,#111114,#09090b);border-radius:16px;padding:20px;display:flex;flex-direction:column;justify-content:flex-end}.admin-modules a>span{color:#d5202a;font:800 12px Barlow Condensed}.admin-modules strong{font:800 23px Barlow Condensed;margin:5px 0}.admin-modules small{color:#85858e;line-height:1.5}.users-table{display:flex;flex-direction:column;gap:9px;margin-top:22px}.user-row{border:1px solid #29292f;background:#0f0f12;border-radius:14px;padding:14px}.user-main{display:flex;align-items:center;gap:10px}.user-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#19191d;border:1px solid #393940;color:#d5202a;font:800 16px Barlow Condensed}.user-main strong,.user-main small{display:block}.user-main small{color:#74747d;font-size:9px;margin-top:3px}.user-meta{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:12px 0}.user-meta span{border-top:1px solid #242429;padding-top:8px}.user-meta small,.user-meta b{display:block}.user-meta small{color:#6e6e77;font:700 7px Barlow Condensed}.user-meta b{font:700 10px Barlow Condensed;margin-top:3px}.user-actions{display:flex;gap:7px;flex-wrap:wrap}.user-actions form{display:flex;gap:5px}.user-actions input,.user-actions select,.user-actions button{border:1px solid #323238;background:#17171a;color:#ddd;border-radius:8px;padding:8px;font:700 8px Barlow Condensed}.user-actions input{width:70px}.error-page{min-height:70vh;display:grid;place-items:center;align-content:center;text-align:center;padding:30px}.error-page>span{color:#d5202a;font:800 90px/.9 Barlow Condensed}.error-page h1{margin:8px 0;font:800 46px Barlow Condensed}.error-page p{color:#85858e}

@media(max-width:800px){.auth-page{grid-template-columns:1fr}.auth-visual{min-height:330px;padding:34px}.auth-visual img{width:115px;height:115px;top:22px;left:26px}.auth-visual h1{font-size:52px}.auth-card{padding:36px 26px}.account-grid,.plans-grid,.admin-modules{grid-template-columns:1fr}.admin-stats{grid-template-columns:1fr 1fr}.user-meta{grid-template-columns:1fr 1fr 1fr}.account-chip>div{align-items:stretch;flex-direction:column}.header-actions{gap:4px}.simple-header{padding-right:10px}.header-link{padding:8px 9px}}
@media(max-width:520px){.auth-page{width:calc(100% - 16px);margin:8px auto 30px}.auth-visual{min-height:280px;padding:24px}.auth-visual h1{font-size:43px}.auth-card{padding:28px 18px}.admin-stats{grid-template-columns:1fr 1fr}.user-meta{grid-template-columns:1fr 1fr}.account-actions{flex-direction:column}.days-left strong{font-size:58px}}

/* Security/account UX additions — MVP 0.7 */
.auth-form .remember-row{display:flex;flex-direction:row;align-items:center;gap:9px;text-transform:none;letter-spacing:0;font-family:Inter,sans-serif;font-size:10px;color:#92929b}.auth-form .remember-row input{width:16px;height:16px;flex:0 0 auto;accent-color:#d5202a;padding:0}.auth-form .remember-row span{line-height:1.4}.error-page{width:min(620px,calc(100% - 28px));margin:80px auto;padding:42px;border:1px solid #2b2b31;background:#0c0c0f;border-radius:22px;text-align:center}.error-page h1{margin:8px 0 0;color:#d5202a;font:800 90px/.9 Barlow Condensed}.error-page h2{margin:8px 0;font:800 34px Barlow Condensed}.error-page p{color:#92929b;margin:0 auto 24px;max-width:420px;line-height:1.6}.error-page .primary-btn{display:inline-flex;width:auto}.audit-list{display:flex;flex-direction:column;gap:8px}.audit-row{display:grid;grid-template-columns:1.1fr 1fr 1.6fr;gap:14px;padding:13px 15px;border:1px solid #29292f;background:#0f0f12;border-radius:12px}.audit-row div{min-width:0}.audit-row strong,.audit-row span,.audit-row small{display:block}.audit-row strong{color:#e9e9ec;font:800 13px Barlow Condensed;letter-spacing:.04em}.audit-row span{font-size:10px;color:#c7c7ce}.audit-row small{margin-top:4px;color:#74747d;font-size:8px;overflow-wrap:anywhere}@media(max-width:700px){.audit-row{grid-template-columns:1fr}.error-page{margin:30px auto;padding:28px 18px}}
@media(min-width:1000px){.admin-modules{grid-template-columns:repeat(4,1fr)}}

/* =====================================================
   MVP 0.8 · Eventos, notificações e missões por personagem
   ===================================================== */
.notification-center{position:fixed;z-index:84;top:16px;right:18px}
.notification-center>summary{list-style:none;width:46px;height:46px;border:1px solid #34343a;border-radius:14px;background:rgba(8,8,10,.9);backdrop-filter:blur(14px);display:grid;place-items:center;cursor:pointer;position:relative;box-shadow:0 10px 32px #0008}
.notification-center>summary::-webkit-details-marker{display:none}.notification-bell{font-size:19px;filter:grayscale(1);line-height:1}.notification-center>summary>b{position:absolute;right:-5px;top:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--theme,#d5202a);color:#fff;display:grid;place-items:center;font:800 9px Inter,sans-serif;border:2px solid #08080a}
.notification-popover{position:absolute;right:0;top:55px;width:min(380px,calc(100vw - 28px));border:1px solid #303037;border-radius:16px;background:rgba(10,10,12,.98);box-shadow:0 28px 80px #000c;overflow:hidden}
.notification-popover-head{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid #25252b}.notification-popover-head small,.notification-popover-head strong{display:block}.notification-popover-head small{color:var(--theme,#d5202a);font:800 8px Barlow Condensed;letter-spacing:.12em}.notification-popover-head strong{font:800 18px Barlow Condensed}.notification-popover-head>a{color:#9999a2;font:700 9px Barlow Condensed}
.notification-preview-list{max-height:370px;overflow:auto}.notification-preview-item{display:flex;gap:10px;padding:12px 14px;border-bottom:1px solid #202025}.notification-preview-item>span{color:#5d5d65;font-size:10px;margin-top:3px}.notification-preview-item.unread>span{color:var(--theme,#d5202a)}.notification-preview-item strong,.notification-preview-item small{display:block}.notification-preview-item strong{font-size:10px;letter-spacing:.02em}.notification-preview-item small{color:#7f7f88;font-size:9px;line-height:1.5;margin-top:3px;max-height:2.9em;overflow:hidden}.notification-preview-item.unread{background:linear-gradient(90deg,color-mix(in srgb,var(--theme,#d5202a) 8%,transparent),transparent)}
.notification-empty{margin:0;padding:22px;color:#777780;text-align:center;font-size:10px}.notification-read-all{width:100%;border:0;border-top:1px solid #25252b;background:#111114;color:#aaaab2;padding:11px;font:800 9px Barlow Condensed;letter-spacing:.05em}
.notification-header-link{position:relative}.notification-header-link b{position:absolute;right:-5px;top:-7px;min-width:17px;height:17px;display:grid;place-items:center;border-radius:99px;background:#d5202a;color:#fff;font-size:8px}

.notification-page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 12px;color:#85858e;font-size:10px}.notification-page-toolbar form{margin:0}.notification-page-list{display:flex;flex-direction:column;gap:9px}.notification-card{display:grid;grid-template-columns:120px 1fr auto;gap:14px;align-items:center;border:1px solid #29292f;background:#0e0e11;border-radius:14px;padding:15px;position:relative;overflow:hidden}.notification-card.unread{border-color:color-mix(in srgb,var(--theme,#d5202a) 45%,#34343a);background:linear-gradient(100deg,color-mix(in srgb,var(--theme,#d5202a) 8%,#0e0e11),#0e0e11 45%)}.notification-card.unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--theme,#d5202a)}.notification-kind{color:var(--theme,#d5202a);font:800 9px Barlow Condensed;letter-spacing:.1em}.notification-card-copy h2{margin:0 0 4px;font:800 19px Barlow Condensed}.notification-card-copy p{margin:0;color:#a0a0a8;font-size:10px;line-height:1.55}.notification-card-copy small{display:block;color:#606069;font-size:8px;margin-top:6px}.notification-card>a{color:var(--theme,#d5202a);font:800 9px Barlow Condensed}.standalone-notifications{max-width:900px}

.empty-state{border:1px dashed #34343b;border-radius:14px;padding:30px;text-align:center;color:#777780;background:#0c0c0f}.empty-state strong{display:block;color:#bdbdc4;font:800 18px Barlow Condensed}.empty-state p{margin:6px 0 0;font-size:10px}

.player-events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.player-event-card{border:1px solid #2b2b31;background:linear-gradient(145deg,#111114,#09090b);border-radius:16px;padding:18px;position:relative;overflow:hidden}.player-event-card.current{border-color:color-mix(in srgb,var(--theme) 48%,#333)}.player-event-card.current:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--theme)}.event-status-row{display:flex;justify-content:space-between;gap:10px}.event-status-row span{color:var(--theme);font:800 9px Barlow Condensed;letter-spacing:.08em}.event-status-row small{color:#74747d;font:700 8px Barlow Condensed}.player-event-card h2{margin:7px 0 7px;font:800 30px Barlow Condensed}.player-event-card>p{color:#8e8e97;font-size:11px;line-height:1.65;min-height:3.2em}.event-mission-box{border:1px solid #29292f;background:#0a0a0c;border-radius:11px;padding:11px;margin:14px 0}.event-mission-box small,.event-mission-box strong{display:block}.event-mission-box small{color:#6e6e77;font:700 8px Barlow Condensed}.event-mission-box strong{margin-top:3px;color:#ddd;font:800 17px Barlow Condensed}.event-progress>div,.event-mini-progress>div{display:flex;justify-content:space-between;align-items:center;font:700 9px Barlow Condensed}.event-progress>div span,.event-mini-progress>div span{color:#777780}.event-progress i,.event-mini-progress i{display:block;height:6px;border-radius:99px;background:#29292f;overflow:hidden;margin-top:7px}.event-progress i u,.event-mini-progress i u{display:block;height:100%;background:var(--theme);border-radius:99px;text-decoration:none}.player-event-card footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #25252a;margin-top:14px;padding-top:10px;color:#74747d;font-size:8px}.player-event-card footer b{color:#c5c5ca}.event-mini-progress{margin:15px 0}.inline-action{display:inline-block;margin-top:12px}.ghost-link{display:block;text-align:center}

.compact-stats{grid-template-columns:repeat(3,1fr);max-width:650px}.form-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:5px 0 12px;border-bottom:1px solid #25252a;margin-bottom:12px}.form-section-title span{font:800 18px Barlow Condensed}.form-section-title small{color:#777780;font-size:8px;line-height:1.4}.form-grid select,.mission-inline-grid select{width:100%;border:1px solid #2d2d32;background:#151518;color:#fff;border-radius:9px;padding:10px;outline:0}.admin-event-list{display:flex;flex-direction:column;gap:9px;margin-top:20px}.admin-event-row{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:14px;border:1px solid #29292f;background:#0f0f12;border-radius:14px;padding:14px}.admin-event-row.inactive{opacity:.5}.admin-event-date{border-right:1px solid #25252a;padding-right:12px}.admin-event-date small,.admin-event-date strong{display:block}.admin-event-date small{color:#66666f;font:700 8px Barlow Condensed}.admin-event-date strong{font:800 15px Barlow Condensed;margin-top:4px}.admin-event-row h2{margin:2px 0;font:800 24px Barlow Condensed}.admin-event-row p{margin:0;color:#85858e;font-size:9px}.admin-event-actions{display:flex;gap:6px}.admin-event-actions form{margin:0}.mini-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.mini-btn.danger{border-color:#6a242a;color:#e8676f}.mission-link{border-color:color-mix(in srgb,var(--theme,#d5202a) 45%,#333);color:#d8d8dd}.character-admin-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.character-admin-actions form{margin:0}

.character-mission-bootstrap{margin-top:7px;padding:14px;border:1px solid #2a2a30;border-radius:12px;background:#0d0d0f}.mission-bootstrap-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:9px}.mission-bootstrap-grid label{display:flex;flex-direction:column;gap:6px;color:#9999a2;font-size:9px;font-weight:700;text-transform:uppercase}.mission-bootstrap-grid input,.mission-bootstrap-grid textarea{width:100%;border:1px solid #2d2d32;background:#151518;color:#fff;border-radius:9px;padding:10px;outline:0}.mission-bootstrap-grid textarea{min-height:70px}.mission-bootstrap-grid .full{grid-column:1/-1}

.mission-admin-list{display:flex;flex-direction:column;gap:11px;margin-top:20px}.mission-admin-card{border:1px solid #29292f;background:linear-gradient(145deg,#101012,#09090b);border-radius:15px;padding:15px}.mission-admin-card.inactive{opacity:.55}.mission-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:11px}.mission-admin-head span{color:var(--theme);font:800 8px Barlow Condensed;letter-spacing:.08em}.mission-admin-head h2{margin:2px 0;font:800 24px Barlow Condensed}.mission-admin-head>strong{color:var(--theme);font:800 19px Barlow Condensed}.mission-inline-grid{display:grid;grid-template-columns:2fr 1fr 1fr 90px 90px 90px 80px;gap:7px}.mission-inline-grid label{display:flex;flex-direction:column;gap:5px;color:#777780;font-size:7px;font-weight:800;text-transform:uppercase}.mission-inline-grid input,.mission-inline-grid textarea{border:1px solid #2d2d32;background:#151518;color:#fff;border-radius:8px;padding:8px;min-width:0}.mission-inline-grid .check{align-items:flex-start;justify-content:flex-end}.mission-inline-grid .full{grid-column:1/-1}.mission-inline-grid textarea{min-height:58px;resize:vertical}.mission-save{margin-top:9px;border-color:color-mix(in srgb,var(--theme) 45%,#333);color:#ddd}.mission-admin-actions{display:flex;justify-content:flex-end;gap:7px;border-top:1px solid #25252a;margin-top:10px;padding-top:10px}.mission-admin-actions form{margin:0}

.notification-admin-history{margin-top:22px}.notification-admin-history>article{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;border:1px solid #29292f;background:#0f0f12;border-radius:13px;padding:13px;margin-bottom:8px}.notification-admin-history strong,.notification-admin-history small{display:block}.notification-admin-history strong{font:800 17px Barlow Condensed;margin:3px 0}.notification-admin-history small{color:#7d7d86;font-size:9px;line-height:1.5}.notification-history-meta{text-align:right}.notification-history-meta b{display:block;color:#d5202a;font:800 24px Barlow Condensed}.notification-history-meta small{font-size:7px}.notification-history-meta span{display:block;color:#74747d;font-size:8px;margin-top:4px}

.mission-item.done{opacity:.7}.mission-item.done .mission-reward button{color:#71c391;border-color:#2b6645}.mission-reward form{margin:0}

@media(max-width:900px){.notification-center{top:13px;right:13px}.notification-center>summary{width:40px;height:40px;border-radius:10px}.player-events-grid{grid-template-columns:1fr}.mission-inline-grid{grid-template-columns:1fr 1fr 1fr}.mission-inline-grid .full{grid-column:1/-1}.admin-event-row{grid-template-columns:1fr}.admin-event-date{border-right:0;border-bottom:1px solid #25252a;padding:0 0 9px}.admin-event-actions{justify-content:flex-start}.mission-bootstrap-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.notification-popover{right:0;top:48px}.notification-card{grid-template-columns:1fr;gap:7px}.notification-card>a{justify-self:start}.notification-page-toolbar{align-items:flex-start;flex-direction:column}.player-event-card h2{font-size:25px}.compact-stats{grid-template-columns:1fr 1fr}.mission-inline-grid,.mission-bootstrap-grid{grid-template-columns:1fr}.mission-inline-grid .full,.mission-bootstrap-grid .full{grid-column:auto}.notification-admin-history>article{grid-template-columns:1fr}.notification-history-meta{text-align:left}.form-section-title{align-items:flex-start;flex-direction:column}}

/* MVP 0.9 - hierarquia administrativa */
.admin-role-banner{margin:18px 0;padding:15px 18px;border:1px solid #34343a;border-radius:14px;background:linear-gradient(135deg,#111114,#09090b);display:grid;gap:3px}.admin-role-banner span{color:#d5202a;font:800 11px Barlow Condensed;letter-spacing:.12em}.admin-role-banner strong{font:800 22px Barlow Condensed}.admin-role-banner small{color:#85858e;line-height:1.5}.admin-role-banner.root{border-color:#6c352f;box-shadow:inset 3px 0 0 #d5202a}.superadmin-tip{border-color:#5c3436}.user-row.superadmin-user{border-color:#4b3033}.role-badge{display:inline-block}.role-superadmin{color:#ff5963}.role-admin{color:#e1b54a}.role-user{color:#a5a5ad}.you-badge{display:inline-block;margin-left:6px;padding:2px 6px;border:1px solid #45454c;border-radius:999px;color:#8f8f98;font:700 7px Barlow Condensed;font-style:normal;vertical-align:middle}.user-actions .role-form{flex:1 1 430px}.user-actions .role-form select{min-width:110px}.user-actions .role-form .reauth-password{width:min(220px,100%);flex:1 1 180px;font-family:Inter,sans-serif;font-weight:500}.user-actions button:disabled,.user-actions select:disabled,.user-actions input:disabled{opacity:.38;cursor:not-allowed}
@media(max-width:700px){.user-actions .role-form{flex:1 1 100%;display:grid;grid-template-columns:1fr}.user-actions .role-form .reauth-password{width:100%}.user-actions .role-form select{width:100%}}

/* =========================================================
   MVP 1.0 · JORNADAS 6 x 30
   ========================================================= */
.primary-btn:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}
.journey-season-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}
.journey-season-card{min-height:138px;border:1px solid #29292f;background:linear-gradient(145deg,#111114,#09090b);border-radius:15px;padding:16px;display:flex;flex-direction:column;gap:9px;position:relative;overflow:hidden}
.journey-season-card:after{content:"";position:absolute;inset:auto -20% -60% 35%;height:120px;background:radial-gradient(circle,color-mix(in srgb,var(--theme) 16%,transparent),transparent 66%);pointer-events:none}
.journey-season-card.active{border-color:color-mix(in srgb,var(--theme) 68%,#333);box-shadow:0 12px 36px color-mix(in srgb,var(--theme) 11%,transparent)}
.journey-season-card.completed{border-color:#2f6d4a}.journey-season-card.locked{opacity:.45;cursor:default}.journey-season-card.empty{justify-content:center}
.journey-season-top{display:flex;justify-content:space-between;align-items:center}.journey-season-top span{color:var(--theme);font:800 9px Barlow Condensed;letter-spacing:.11em}.journey-season-top b{font-size:14px}
.journey-season-card>strong{font:800 23px/1 Barlow Condensed;text-transform:uppercase}.journey-season-card>small,.journey-season-card>em{color:#76767f;font-size:8px;font-style:normal}
.journey-season-card>em{color:#d79c47}
.journey-season-progress{margin-top:auto;display:flex;align-items:center;gap:8px}.journey-season-progress i{height:5px;background:#28282d;border-radius:99px;overflow:hidden;flex:1}.journey-season-progress i b{display:block;height:100%;background:var(--theme)}.journey-season-progress small{font-size:8px;color:#8d8d95;white-space:nowrap}
.journey-days-panel{margin-top:16px}.journey-days-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;border-bottom:1px solid #29292f;padding:0 3px 14px}.journey-days-heading span{color:var(--theme);font:800 9px Barlow Condensed;letter-spacing:.1em}.journey-days-heading h2{margin:3px 0 0;font:800 34px Barlow Condensed;text-transform:uppercase}.journey-days-heading>small{color:#777780;font:700 9px Barlow Condensed}
.journey-daily-lock{margin:12px 0;border:1px solid #2f6548;background:#102019;border-radius:12px;padding:12px 14px;display:flex;gap:9px;align-items:center;justify-content:space-between}.journey-daily-lock b{color:#68d395;font:800 11px Barlow Condensed}.journey-daily-lock span{color:#a7b8ae;font-size:9px}
.journey-day-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}.journey-day-card{display:grid;grid-template-columns:76px 1fr;border:1px solid #29292f;background:linear-gradient(145deg,#101012,#09090b);border-radius:15px;overflow:hidden}.journey-day-card.locked{opacity:.46}.journey-day-card.current{border-color:color-mix(in srgb,var(--theme) 62%,#333);box-shadow:0 12px 35px color-mix(in srgb,var(--theme) 9%,transparent)}.journey-day-card.completed{border-color:#2d5841}
.journey-day-index{display:grid;place-items:center;align-content:center;background:#0b0b0d;border-right:1px solid #29292f}.journey-day-index span{color:#777780;font:700 8px Barlow Condensed}.journey-day-index strong{color:var(--theme);font:800 34px/.95 Barlow Condensed}.journey-day-card.completed .journey-day-index strong{color:#5fc58a}
.journey-day-body{padding:14px}.journey-day-copy small{color:var(--theme);font:800 8px Barlow Condensed;letter-spacing:.08em}.journey-day-copy h3{margin:3px 0 10px;font:700 17px Barlow Condensed;color:#e7e7ea}
.journey-exercises{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:9px 0 12px}.journey-exercises>div{min-height:76px;border:1px solid #28282e;background:#121215;border-radius:10px;padding:9px;display:grid;grid-template-columns:24px 1fr auto;gap:7px;align-items:start}.journey-exercises>div>b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--theme) 13%,#171719);color:var(--theme);font:800 9px Barlow Condensed}.journey-exercises span strong,.journey-exercises span small{display:block}.journey-exercises span strong{font-size:10px}.journey-exercises span small{color:#777780;font-size:8px;line-height:1.45;margin-top:3px}.journey-exercises em{color:var(--theme);font:800 8px Barlow Condensed;font-style:normal;white-space:nowrap}
.journey-completed-note{border-top:1px solid #242429;padding-top:9px;color:#65c98e;font-size:9px}
.journey-empty{margin-top:22px}

.journey-admin-character-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}.journey-admin-character-grid>article{border:1px solid #29292f;background:linear-gradient(145deg,#111114,#09090b);border-radius:16px;padding:16px}.journey-admin-character-head{display:flex;gap:10px;align-items:center}.journey-admin-character-head small{color:var(--theme);font:800 8px Barlow Condensed}.journey-admin-character-head h2{margin:2px 0;font:800 26px Barlow Condensed}.journey-admin-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0}.journey-admin-metrics span{border:1px solid #26262b;background:#0c0c0e;border-radius:9px;padding:8px;color:#7f7f88;font-size:8px}.journey-admin-metrics b{display:block;color:#ddd;font:800 18px Barlow Condensed;margin-bottom:2px}.journey-admin-progress{margin-bottom:12px}.journey-admin-progress i,.journey-import-meter i{display:block;height:6px;border-radius:99px;overflow:hidden;background:#2a2a2f}.journey-admin-progress b,.journey-import-meter i b{display:block;height:100%;background:var(--theme)}
.journey-admin-character-grid .primary-btn{display:block;text-align:center;font-size:11px;padding:11px}
.journey-import-actions{display:flex;gap:8px;align-items:center;margin:18px 0}.csv-download-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--theme) 55%,#333);background:#111114;color:#fff;border-radius:9px;padding:10px 14px;font:800 10px Barlow Condensed}.csv-schema-card{border:1px dashed #38383e;background:#0d0d10;border-radius:14px;padding:15px;margin-bottom:12px}.csv-schema-card strong{display:block;color:var(--theme);font:800 10px Barlow Condensed;margin-bottom:8px}.csv-schema-card code{display:block;white-space:normal;word-break:break-word;line-height:1.6}.csv-schema-card p{margin:8px 0 0;color:#8f8f98;font-size:9px;line-height:1.6}
.csv-drop-label{border:1px dashed #3b3b42;border-radius:12px;padding:14px;background:#111114}.csv-drop-label input{margin-top:5px}.csv-drop-label small{color:#707078;text-transform:none}.danger-check{color:#cf8d70!important}
.journey-import-summary{display:flex;flex-direction:column;gap:11px;margin-top:20px}.journey-import-summary>article{border:1px solid #29292f;background:linear-gradient(145deg,#101012,#09090b);border-radius:15px;padding:15px}.journey-import-title{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.journey-import-title span{color:var(--theme);font:800 9px Barlow Condensed}.journey-import-title h2{margin:0;font:800 24px Barlow Condensed;text-transform:uppercase}.journey-import-title>b{color:#aaaab2;font:800 10px Barlow Condensed}.journey-import-meter{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;margin:10px 0}.journey-import-meter small{color:#777780;font-size:8px}.journey-import-summary details{border-top:1px solid #242429;padding-top:10px}.journey-import-summary summary{cursor:pointer;color:#aaaab2;font:800 9px Barlow Condensed}.journey-import-days{display:flex;flex-direction:column;gap:6px;margin-top:9px}.journey-import-day{display:grid;grid-template-columns:210px 1fr;gap:10px;border:1px solid #25252a;background:#0c0c0e;border-radius:10px;padding:10px}.journey-import-day>div b,.journey-import-day>div span{display:block}.journey-import-day>div b{color:var(--theme);font:800 9px Barlow Condensed}.journey-import-day>div span{color:#92929b;font-size:8px;margin-top:3px}.journey-import-day ol{margin:0;padding-left:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.journey-import-day li{padding-left:2px;color:#aaa}.journey-import-day li strong,.journey-import-day li small{display:block}.journey-import-day li strong{font-size:9px}.journey-import-day li small{color:#6f6f78;font-size:7px;margin-top:2px}.journey-link{border-color:#3e3446!important}

@media(max-width:900px){.journey-season-grid{grid-template-columns:repeat(2,1fr)}.journey-exercises{grid-template-columns:1fr}.journey-admin-character-grid{grid-template-columns:1fr}.journey-import-day{grid-template-columns:1fr}.journey-import-day ol{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:620px){.journey-season-grid{grid-template-columns:1fr 1fr}.journey-season-card{min-height:120px;padding:12px}.journey-season-card>strong{font-size:19px}.journey-days-heading{align-items:flex-start;flex-direction:column}.journey-day-card{grid-template-columns:58px 1fr}.journey-day-index strong{font-size:28px}.journey-exercises>div{grid-template-columns:22px 1fr}.journey-exercises em{grid-column:2}.journey-admin-metrics{grid-template-columns:1fr 1fr 1fr}.journey-import-actions{align-items:stretch;flex-direction:column}.csv-download-btn{width:100%}.journey-import-title{grid-template-columns:1fr}.journey-import-meter{grid-template-columns:1fr}.journey-import-day ol{grid-template-columns:1fr}.journey-import-form .form-grid{grid-template-columns:1fr}}

/* =========================================================
   MVP 1.1 · RPG / Arena / Guildas / Bosses / Games
   ========================================================= */
.side-vitals{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 0}.side-vitals>div{padding:10px;border:1px solid #29292f;border-radius:10px;background:#0e0e11}.side-vitals span{display:block;color:#777780;font:700 8px Barlow Condensed;letter-spacing:.08em}.side-vitals strong{display:block;margin-top:3px;font:800 16px Barlow Condensed;color:#eee}.side-arena-links{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:15px 0}.side-arena-links a{display:flex;gap:6px;align-items:center;border:1px solid #29292f;background:#0e0e11;border-radius:9px;padding:8px;color:#aaa;font:700 9px Barlow Condensed}.side-arena-links a:hover{border-color:var(--theme);color:#fff}
.rpg-dashboard-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:0 18px 12px}.rpg-dashboard-strip article{border:1px solid #29292f;background:linear-gradient(145deg,#111114,#0a0a0c);border-radius:13px;padding:14px}.rpg-dashboard-strip small,.rpg-dashboard-strip span{display:block;color:#85858e;font:700 8px Barlow Condensed}.rpg-dashboard-strip strong{display:block;color:#fff;font:800 27px Barlow Condensed;margin:3px 0}.arena-hub{margin:0 18px 12px;border:1px solid #29292f;background:#0c0c0f;border-radius:14px;padding:14px}.arena-hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.arena-hub-grid a{display:flex;flex-direction:column;min-height:105px;padding:13px;border:1px solid #28282d;border-radius:12px;background:linear-gradient(155deg,#141417,#09090b)}.arena-hub-grid a:hover{border-color:color-mix(in srgb,var(--theme) 60%,#333);transform:translateY(-1px)}.arena-hub-grid b{font-size:23px}.arena-hub-grid strong{margin-top:auto;font:800 17px Barlow Condensed}.arena-hub-grid small{color:#777780;font-size:8px;margin-top:3px;line-height:1.4}
.rpg-identity-card{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.rpg-identity-card .avatar-upload{grid-column:1/-1}.power-badge{text-align:right;border-left:1px solid #29292f;padding-left:20px}.power-badge small,.power-badge span{display:block;color:#85858e;font:700 8px Barlow Condensed}.power-badge strong{display:block;color:var(--theme);font:800 35px Barlow Condensed}.rpg-vitals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:10px 0}.rpg-vitals-grid article,.attribute-panel{border:1px solid #29292f;background:#0f0f12;border-radius:12px;padding:14px}.rpg-vitals-grid small,.rpg-vitals-grid span{display:block;color:#85858e;font:700 8px Barlow Condensed}.rpg-vitals-grid strong{display:block;margin:4px 0;font:800 24px Barlow Condensed}.rpg-progress{height:7px;background:#27272d;border-radius:99px;overflow:hidden;margin:7px 0}.rpg-progress i{display:block;height:100%;background:var(--theme);border-radius:99px}.rpg-progress.hp i{background:linear-gradient(90deg,#a8121b,#e12833)}.attribute-panel{margin:10px 0}.attribute-panel h2{margin:3px 0;font:800 25px Barlow Condensed}.attribute-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px}.attribute-grid article{padding:12px;border:1px solid #29292f;border-radius:11px;background:#0b0b0e}.attribute-grid article>div:first-child{display:flex;justify-content:space-between;align-items:end}.attribute-grid small{color:#8b8b94;font:700 9px Barlow Condensed}.attribute-grid strong{font:800 27px Barlow Condensed}.attribute-grid p{min-height:28px;color:#75757e;font-size:8px;line-height:1.5}.attribute-grid button{width:100%;border:1px solid var(--theme);background:transparent;color:var(--theme);border-radius:8px;padding:7px;font:700 8px Barlow Condensed}.history-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.history-row{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #232328}.history-row:last-child{border-bottom:0}.history-row strong{color:var(--theme);font:800 11px Barlow Condensed}.history-row span{color:#b2b2b9;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-row small{color:#666670;font-size:7px}.profile-links,.arena-shortcuts,.feed-game-links{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.profile-links a,.arena-shortcuts a,.feed-game-links a{border:1px solid #303036;background:#111114;border-radius:999px;padding:9px 12px;color:#aaa;font:700 9px Barlow Condensed}.profile-links a:hover,.arena-shortcuts a:hover,.feed-game-links a:hover{border-color:var(--theme);color:#fff}
.boss-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.boss-card{border:1px solid #2d2d33;background:radial-gradient(circle at 80% 0,color-mix(in srgb,var(--theme) 12%,transparent),transparent 35%),#0d0d10;border-radius:16px;padding:18px;overflow:hidden}.boss-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.boss-head span{color:var(--theme);font:700 9px Barlow Condensed}.boss-head h2{margin:2px 0;font:800 30px Barlow Condensed}.boss-head>strong{font:800 26px Barlow Condensed;color:var(--theme)}.boss-card>p{color:#8b8b94;font-size:10px;line-height:1.6}.boss-hp-label{display:flex;justify-content:space-between;margin-top:17px;font:700 9px Barlow Condensed}.boss-hp{height:12px;background:#25252b;border-radius:99px;overflow:hidden;margin:6px 0 12px}.boss-hp i{display:block;height:100%;background:linear-gradient(90deg,#7c1018,var(--theme));border-radius:99px}.boss-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.boss-meta span{padding:8px;background:#141417;border-radius:8px;color:#777780;font-size:7px}.boss-meta b{display:block;color:#eee;margin-top:3px;font:800 12px Barlow Condensed}.boss-ranking{margin-top:14px;border-top:1px solid #29292f;padding-top:10px}.boss-ranking>small{color:#777780;font:700 8px Barlow Condensed}.boss-ranking>div{display:grid;grid-template-columns:28px 1fr auto;gap:7px;padding:6px 0;font-size:9px}.boss-ranking>div b{color:var(--theme)}.boss-ranking>div strong{font-family:Barlow Condensed}.boss-ranking p{color:#73737c;font-size:9px}.empty-arena{grid-column:1/-1;border:1px dashed #34343a;background:#0e0e11;border-radius:14px;padding:30px;text-align:center}.empty-arena strong{font:800 23px Barlow Condensed}.empty-arena p{color:#82828b;font-size:10px}.defeated-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.defeated-grid article{display:flex;justify-content:space-between;border:1px solid #29292f;border-radius:10px;padding:10px;background:#0e0e11;font-size:9px}.defeated-grid span{color:var(--theme);font-weight:800}
.guild-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #2d2d33;border-radius:16px;padding:20px;background:radial-gradient(circle at 85% 20%,color-mix(in srgb,var(--theme) 18%,transparent),transparent 35%),#0d0d10}.guild-hero>div>span{color:var(--theme);font:800 13px Barlow Condensed}.guild-hero h2{margin:2px 0;font:800 36px Barlow Condensed}.guild-hero p{margin:0;color:#85858e;font-size:10px}.guild-level{text-align:right}.guild-level small,.guild-level span{display:block;color:#85858e;font:700 8px Barlow Condensed}.guild-level strong{display:block;color:var(--theme);font:800 43px Barlow Condensed}.guild-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:10px 0}.guild-info-grid article{border:1px solid #29292f;background:#0f0f12;border-radius:11px;padding:13px}.guild-info-grid small{display:block;color:#777780;font:700 8px Barlow Condensed}.guild-info-grid strong{display:block;margin-top:4px;font:800 20px Barlow Condensed}.guild-members{margin-bottom:10px}.guild-member{display:grid;grid-template-columns:70px 1fr auto auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #25252a}.guild-member>b{color:var(--theme);font:800 8px Barlow Condensed}.guild-member>span{font-size:10px;font-weight:700}.guild-member>small{color:#777780;font-size:8px}.guild-member button,.danger-zone button{border:1px solid #5d292c;background:transparent;color:#d86a70;border-radius:8px;padding:6px 8px;font:700 8px Barlow Condensed}.guild-entry-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:10px}.guild-form label{display:flex;flex-direction:column;gap:5px;color:#85858e;font:700 8px Barlow Condensed;margin:10px 0}.guild-form input,.guild-form textarea,.challenge-create input,.challenge-create select,.challenge-create textarea,.boss-admin-form select{border:1px solid #2e2e34;background:#141417;color:#fff;border-radius:9px;padding:10px;outline:0}.guild-form textarea,.challenge-create textarea{min-height:80px;resize:vertical}.guild-form p{color:#777780;font-size:9px}.danger-zone{margin-top:10px;text-align:right}
.challenge-create{margin-bottom:12px}.challenge-create>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.challenge-create label{display:flex;flex-direction:column;gap:5px;color:#85858e;font:700 8px Barlow Condensed;margin-bottom:9px}.challenge-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.challenge-card{position:relative;border:1px solid #29292f;background:#0e0e11;border-radius:14px;padding:15px}.challenge-card.active{border-color:color-mix(in srgb,var(--theme) 40%,#333)}.challenge-head{display:flex;justify-content:space-between;gap:8px}.challenge-head small{color:var(--theme);font:700 8px Barlow Condensed}.challenge-head h2{margin:2px 0;font:800 25px Barlow Condensed}.challenge-head>strong{color:#888;font:800 10px Barlow Condensed}.challenge-card>p{color:#82828b;font-size:9px;min-height:25px}.duel-grid{display:grid;grid-template-columns:1fr 28px 1fr;gap:8px;align-items:center;text-align:center;margin:12px 0}.duel-grid>div{border:1px solid #29292f;border-radius:10px;padding:10px}.duel-grid span{display:block;color:#aaa;font-size:9px}.duel-grid strong{display:block;margin-top:4px;font:800 27px Barlow Condensed;color:var(--theme)}.duel-grid>b{color:#666;font:800 12px Barlow Condensed}.challenge-actions{display:flex;gap:7px}.challenge-actions button{flex:1;border:1px solid #333;background:#151518;color:#ddd;border-radius:8px;padding:8px;font:700 9px Barlow Condensed}.challenge-actions button:first-of-type{border-color:var(--theme);color:var(--theme)}.challenge-result{text-align:center;color:var(--theme);font:800 12px Barlow Condensed;padding:8px}.challenge-deadline{display:block;text-align:right;color:#666;font-size:7px;margin-top:8px}
.coin-wallet{display:inline-flex;align-items:center;gap:7px;margin-bottom:12px;padding:9px 13px;border:1px solid #3b3430;border-radius:999px;background:#15110c;color:#d7ad36}.coin-wallet strong{font:800 20px Barlow Condensed}.coin-wallet span{font:700 8px Barlow Condensed}.games-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:11px}.game-card{border:1px solid #29292f;background:#0e0e11;border-radius:16px;padding:18px}.game-icon{font-size:33px}.game-card>small{display:block;color:var(--theme);font:700 8px Barlow Condensed;margin-top:8px}.game-card h2{margin:2px 0;font:800 30px Barlow Condensed}.game-card p{color:#85858e;font-size:10px;line-height:1.6;min-height:48px}.game-stat{margin:12px 0;padding:8px;background:#151518;border-radius:8px;color:#85858e;font-size:8px}.reflex-box{height:100px;display:grid;place-items:center;align-content:center;border:1px dashed #3a3a40;border-radius:10px;background:#111114;margin:10px 0;cursor:pointer;user-select:none}.reflex-box strong{font:800 16px Barlow Condensed}.reflex-box small{color:#666;font-size:8px}.reflex-box.ready{background:#17452c;border-color:#47bd75}.reflex-box.ready strong{color:#75e39b}.game-card form{display:grid;gap:7px}
.boss-admin-form select{width:100%}.boss-admin-list{margin-top:12px}
.empty-copy{color:#74747d;font-size:9px}.section-heading-mini{margin:18px 0 8px;color:#aaa;font:800 10px Barlow Condensed;letter-spacing:.08em}
@media(max-width:900px){.rpg-dashboard-strip,.arena-hub-grid,.attribute-grid{grid-template-columns:repeat(2,1fr)}.boss-list,.history-grid,.challenge-list,.games-grid{grid-template-columns:1fr}.guild-entry-grid{grid-template-columns:1fr}.side-vitals,.side-arena-links{display:grid!important}.player-shell.sidebar-collapsed .side-vitals,.player-shell.sidebar-collapsed .side-arena-links{display:grid!important}}
@media(max-width:620px){.rpg-dashboard-strip{grid-template-columns:1fr 1fr;padding:0 10px 10px}.arena-hub{margin:0 10px 10px}.arena-hub-grid{grid-template-columns:1fr 1fr}.rpg-vitals-grid,.attribute-grid,.guild-info-grid{grid-template-columns:1fr 1fr}.rpg-identity-card{grid-template-columns:1fr}.power-badge{text-align:left;border-left:0;border-top:1px solid #29292f;padding:12px 0 0}.boss-meta{grid-template-columns:1fr 1fr}.guild-hero{align-items:flex-start}.guild-member{grid-template-columns:60px 1fr;}.guild-member>small,.guild-member>form{grid-column:2}.challenge-create>div{grid-template-columns:1fr}.profile-links,.arena-shortcuts,.feed-game-links{gap:5px}.profile-links a,.arena-shortcuts a,.feed-game-links a{padding:8px 10px;font-size:8px}}
.feed-game-links form{display:inline-flex}.feed-game-links button{border:1px solid #303036;background:#111114;border-radius:999px;padding:9px 12px;color:#aaa;font:700 9px Barlow Condensed;cursor:pointer}.feed-game-links button:hover{border-color:var(--theme);color:#fff}
.guild-chat{margin-top:10px}.guild-chat>form{display:flex;gap:7px;margin:10px 0}.guild-chat input{flex:1;min-width:0;border:1px solid #2e2e34;background:#141417;color:#fff;border-radius:9px;padding:10px;outline:0}.guild-chat button{border:1px solid var(--theme);background:transparent;color:var(--theme);border-radius:9px;padding:0 14px;font:700 9px Barlow Condensed}.guild-chat-list{display:flex;flex-direction:column;gap:7px}.guild-chat-list>div{display:grid;grid-template-columns:auto 1fr auto;gap:8px;padding:8px;border:1px solid #242429;border-radius:9px;background:#0b0b0d}.guild-chat-list b{color:var(--theme);font-size:9px}.guild-chat-list span{font-size:9px;color:#bbb}.guild-chat-list small{font-size:7px;color:#666}
@media(max-width:620px){.guild-chat-list>div{grid-template-columns:1fr}.guild-chat-list small{text-align:right}}

/* =========================================================
   MVP 1.2 · CALIST ARENA VISUAL UPDATE
   ========================================================= */
.game-bottom-nav .feed-main .feed-helmet{overflow:hidden;padding:8px;background:radial-gradient(circle,#17171a 0,#09090b 70%)}
.game-bottom-nav .feed-main .feed-helmet img{width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--theme) 45%,transparent))}
.side-arena-links{grid-template-columns:1fr 1fr}
.side-arena-links a img{width:17px;height:17px;object-fit:contain;flex:0 0 auto}
.side-arena-links .side-arena-main{grid-column:1/-1;border-color:color-mix(in srgb,var(--theme) 45%,#333);background:linear-gradient(135deg,color-mix(in srgb,var(--theme) 10%,#0d0d10),#0c0c0f)}

.arena-call-strip .arena-call-card{position:relative;overflow:hidden;min-height:105px;border:1px solid color-mix(in srgb,var(--theme) 75%,#3a2022);border-radius:13px;padding:14px 16px;display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;background:linear-gradient(90deg,rgba(10,7,8,.4),rgba(10,7,8,.88)),var(--arena-bg,url('/static/images/arena/coliseum.png')) center/cover no-repeat;box-shadow:inset 0 0 55px rgba(208,28,38,.12),0 0 24px rgba(208,28,38,.08)}
.arena-call-strip .arena-call-card:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgba(214,32,42,.1),transparent 45%,rgba(255,42,49,.08));pointer-events:none}
.arena-call-card>img{width:40px;height:40px;z-index:1;filter:drop-shadow(0 0 12px rgba(255,40,48,.45))}
.arena-call-card>div{z-index:1;min-width:0}.arena-call-card small{color:#b8b8bf!important;letter-spacing:.12em}.arena-call-card strong{font-size:23px!important;line-height:.96!important;color:#fff!important;text-shadow:0 0 16px rgba(255,40,48,.3)}.arena-call-card span{font-size:8px!important;line-height:1.35;margin-top:5px}.arena-call-card>b{grid-column:1/-1;z-index:1;border:1px solid color-mix(in srgb,var(--theme) 55%,#402023);color:#fff;background:rgba(154,18,26,.28);border-radius:8px;padding:7px 10px;text-align:center;font:800 10px Barlow Condensed;letter-spacing:.08em}
.rpg-stat-card i{display:block;height:4px;margin-top:10px;border-radius:99px;background:#24242a;overflow:hidden}.rpg-stat-card i u{display:block;height:100%;background:linear-gradient(90deg,var(--theme),#ff4a53);text-decoration:none;border-radius:99px}

.arena-hub-featured{overflow:hidden}.arena-preview-row{display:grid;grid-template-columns:minmax(260px,.8fr) 1.2fr;gap:10px;margin-top:12px}.arena-coliseum-preview{min-height:180px;border:1px solid #3a2426;border-radius:12px;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,rgba(5,5,6,.08),rgba(5,5,6,.9)),var(--arena-bg,url('/static/images/arena/coliseum.png')) center/cover no-repeat;position:relative;overflow:hidden}.arena-coliseum-preview:before{content:"CALIST ARENA";position:absolute;left:18px;top:14px;color:#fff;font:800 clamp(24px,3.2vw,42px)/1 Barlow Condensed;letter-spacing:.03em;text-shadow:0 2px 18px #000,0 0 20px rgba(216,31,40,.18)}.arena-coliseum-preview span{color:#b4b4ba;font:700 8px Barlow Condensed;letter-spacing:.1em}.arena-coliseum-preview strong{margin-top:6px;color:#fff;font:800 15px Barlow Condensed}.arena-hub-featured .arena-hub-grid{grid-template-columns:repeat(2,1fr);margin-top:0}.arena-hub-featured .arena-hub-grid a{min-height:84px;padding:11px}.arena-hub-featured .arena-hub-grid img{width:25px;height:25px;object-fit:contain}.arena-hub-featured .arena-hub-grid strong{margin-top:8px}

.calist-arena-page{min-height:100vh;padding:18px 18px 30px;background:radial-gradient(circle at 50% 0,rgba(150,20,28,.09),transparent 36%)}
.arena-hero-card{min-height:430px;position:relative;overflow:hidden;border:1px solid #3a2528;border-radius:18px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(90deg,rgba(4,4,5,.88),rgba(4,4,5,.28) 55%,rgba(4,4,5,.62)),linear-gradient(0deg,rgba(4,4,5,.86),transparent 60%),var(--arena-bg,url('/static/images/arena/coliseum.png')) center/cover no-repeat;box-shadow:inset 0 -90px 100px #050506,0 30px 70px rgba(0,0,0,.32)}
.arena-hero-card:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 68% 70%,rgba(220,32,42,.14),transparent 24%);pointer-events:none}
.arena-hero-copy,.arena-hero-vitals{position:relative;z-index:1}.arena-overline{color:var(--theme);font:800 11px Barlow Condensed;letter-spacing:.16em}.arena-title-row{display:flex;align-items:center;gap:16px;margin-top:12px}.arena-title-row>img{width:64px;height:64px;filter:drop-shadow(0 0 18px rgba(220,35,44,.36))}.arena-title-row h1{margin:0;font:800 clamp(48px,8vw,92px)/.86 Barlow Condensed;letter-spacing:.015em;text-shadow:0 3px 18px #000}.arena-title-row p{margin:10px 0 0;color:#c2c2c8;font:500 15px Barlow Condensed}.arena-hero-actions{display:flex;gap:9px;margin-top:22px;flex-wrap:wrap}.arena-primary-action,.arena-secondary-action,.arena-card-button{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:11px 16px;font:800 11px Barlow Condensed;letter-spacing:.06em}.arena-primary-action,.arena-card-button{border:1px solid color-mix(in srgb,var(--theme) 70%,#4a1f24);background:linear-gradient(90deg,color-mix(in srgb,var(--theme) 74%,#5a0c12),color-mix(in srgb,var(--theme) 38%,#13080a));color:#fff;box-shadow:0 0 22px color-mix(in srgb,var(--theme) 14%,transparent)}.arena-secondary-action{border:1px solid #3b3b42;background:rgba(9,9,11,.65);color:#b8b8bf}.arena-hero-vitals{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:8px;max-width:760px}.arena-hero-vitals>span{padding:10px 13px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(8,8,10,.72);backdrop-filter:blur(7px)}.arena-hero-vitals small{display:block;color:#7f7f88;font:700 8px Barlow Condensed;letter-spacing:.08em}.arena-hero-vitals strong{display:block;margin-top:3px;font:800 21px Barlow Condensed}

.arena-main-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;margin-top:12px}.arena-panel{border:1px solid #2c2c32;border-radius:14px;background:linear-gradient(145deg,#101013,#09090b);overflow:hidden}.arena-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid #242429}.arena-panel-heading>div{display:flex;align-items:center;gap:8px}.arena-panel-heading img{width:23px;height:23px;object-fit:contain}.arena-panel-heading span{font:800 17px Barlow Condensed;color:#f1f1f3}.arena-panel-heading a,.arena-panel-heading>small{color:var(--theme);font:800 8px Barlow Condensed;letter-spacing:.07em}.arena-boss-body{display:grid;grid-template-columns:38% 62%;min-height:330px}.arena-boss-art{position:relative;overflow:hidden;background:#08080a}.arena-boss-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,#0d0d10 100%),linear-gradient(0deg,#08080a 0,transparent 34%)}.arena-boss-art img{width:100%;height:100%;object-fit:cover;object-position:center top}.arena-boss-copy{padding:22px}.arena-boss-copy>small{color:var(--theme);font:800 8px Barlow Condensed;letter-spacing:.09em}.arena-boss-copy h2{margin:4px 0;font:800 38px/.95 Barlow Condensed}.arena-boss-copy p{color:#96969f;font-size:10px;line-height:1.55;min-height:44px}.arena-hp-label{display:flex;justify-content:space-between;gap:10px;margin-top:16px;color:#aaa;font:700 9px Barlow Condensed}.arena-hp-label strong{color:#fff}.arena-hp-bar{height:8px;background:#242429;border-radius:99px;overflow:hidden;margin-top:6px}.arena-hp-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--theme),#ff4651);border-radius:99px}.arena-boss-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:14px 0}.arena-boss-meta>span{padding:9px;border:1px solid #29292e;border-radius:8px;background:#0b0b0d}.arena-boss-meta small,.arena-boss-meta strong{display:block}.arena-boss-meta small{color:#76767f;font:700 7px Barlow Condensed}.arena-boss-meta strong{margin-top:3px;font:800 13px Barlow Condensed}.arena-empty-state,.arena-empty-guild{display:flex;gap:15px;align-items:center;padding:22px;color:#9a9aa2}.arena-empty-state img{width:110px;height:140px;object-fit:cover;border-radius:10px}.arena-empty-state strong,.arena-empty-guild strong{display:block;color:#fff;font:800 20px Barlow Condensed}.arena-empty-state p,.arena-empty-guild p{font-size:10px;line-height:1.5}

.arena-challenge-list{padding:10px}.arena-challenge-list>a{display:grid;grid-template-columns:38px 1fr 18px;gap:8px;align-items:center;border:1px solid #27272c;border-radius:10px;padding:10px;margin-bottom:7px;background:#0d0d10}.challenge-orb{width:36px;height:36px;display:grid;place-items:center;border:1px solid #552329;border-radius:50%;background:#150b0d;color:var(--theme)}.arena-challenge-list strong,.arena-challenge-list small{display:block}.arena-challenge-list strong{font:800 13px Barlow Condensed}.arena-challenge-list small{color:#777780;font-size:8px;margin-top:2px}.arena-challenge-list>b{color:var(--theme)}
.arena-ranking-list{list-style:none;margin:0;padding:9px 13px 13px}.arena-ranking-list li{display:grid;grid-template-columns:24px 34px 1fr auto;gap:8px;align-items:center;padding:9px 3px;border-bottom:1px solid #222227}.arena-ranking-list li:last-child{border-bottom:0}.arena-ranking-list>li>b{color:var(--theme);font:800 12px Barlow Condensed}.arena-rank-avatar{width:32px;height:32px;border:1px solid #4b4b52;border-radius:50%;display:grid;place-items:center;background:#161619;font:800 12px Barlow Condensed}.arena-ranking-list strong,.arena-ranking-list small{display:block}.arena-ranking-list strong{font-size:10px}.arena-ranking-list small{color:#777780;font-size:7px;margin-top:2px}.arena-ranking-list em{font:800 11px Barlow Condensed;color:var(--theme);font-style:normal}
.arena-guild-body,.arena-empty-guild{padding:20px;display:grid;grid-template-columns:115px 1fr;gap:15px;align-items:center}.arena-guild-body>img,.arena-empty-guild>img{width:105px;max-height:120px}.arena-guild-body small{color:var(--theme);font:800 9px Barlow Condensed}.arena-guild-body h2{margin:2px 0;font:800 29px Barlow Condensed}.arena-guild-body p{margin:0;color:#8b8b94;font-size:9px}.arena-guild-xp{height:6px;background:#27272c;border-radius:99px;overflow:hidden;margin:12px 0 6px}.arena-guild-xp i{display:block;height:100%;background:var(--theme)}.arena-guild-body>div>strong{font:700 8px Barlow Condensed;color:#9999a2}
.arena-games-banner{display:grid;grid-template-columns:65px 1fr auto auto;gap:16px;align-items:center;margin-top:12px;padding:18px;border:1px solid #30292c;border-radius:14px;background:linear-gradient(100deg,rgba(37,10,13,.65),#0b0b0e 55%)}.arena-games-banner>img{width:58px;height:58px}.arena-games-banner small{color:var(--theme);font:800 8px Barlow Condensed;letter-spacing:.1em}.arena-games-banner h2{margin:2px 0;font:800 25px Barlow Condensed}.arena-games-banner p{margin:0;color:#81818a;font-size:9px}.arena-games-today{display:flex;gap:7px}.arena-games-today>span{min-width:76px;padding:9px;border:1px solid #2e2e34;border-radius:9px;background:#0b0b0d}.arena-games-today small,.arena-games-today strong{display:block}.arena-games-today small{color:#74747d;font:700 7px Barlow Condensed}.arena-games-today strong{margin-top:3px;font:800 18px Barlow Condensed;color:#fff}

@media(max-width:1100px){.arena-preview-row{grid-template-columns:1fr}.arena-coliseum-preview{min-height:220px}.arena-main-grid{grid-template-columns:1fr}.arena-call-card strong{font-size:19px!important}.arena-games-banner{grid-template-columns:55px 1fr auto}.arena-games-banner>a{grid-column:2/-1}}
@media(max-width:720px){.calist-arena-page{padding:70px 10px 22px}.arena-hero-card{min-height:500px;padding:24px 18px;background-position:58% center}.arena-title-row{align-items:flex-start}.arena-title-row>img{width:50px;height:50px}.arena-title-row h1{font-size:54px}.arena-hero-vitals{grid-template-columns:1fr 1fr}.arena-boss-body{grid-template-columns:1fr}.arena-boss-art{height:230px}.arena-boss-art:after{background:linear-gradient(0deg,#0d0d10 0,transparent 70%)}.arena-guild-body,.arena-empty-guild{grid-template-columns:80px 1fr}.arena-guild-body>img,.arena-empty-guild>img{width:75px}.arena-games-banner{grid-template-columns:45px 1fr}.arena-games-banner>img{width:42px;height:42px}.arena-games-today,.arena-games-banner>a{grid-column:1/-1}.arena-call-strip .arena-call-card{grid-column:1/-1}.arena-call-strip{grid-template-columns:1fr 1fr!important}.arena-preview-row{grid-template-columns:1fr}.arena-hub-featured .arena-hub-grid{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.arena-hub-featured .arena-hub-grid{grid-template-columns:1fr}.arena-hero-vitals{grid-template-columns:1fr 1fr}.arena-title-row h1{font-size:45px}.arena-primary-action,.arena-secondary-action{width:100%}.arena-boss-meta{grid-template-columns:1fr}.arena-ranking-list li{grid-template-columns:20px 30px 1fr}.arena-ranking-list em{grid-column:3;text-align:left}.arena-games-today{display:grid;grid-template-columns:1fr 1fr}.arena-guild-body,.arena-empty-guild{grid-template-columns:1fr}.arena-guild-body>img,.arena-empty-guild>img{width:90px}}
.arena-shortcuts a{display:inline-flex;align-items:center;gap:6px}.arena-shortcuts a img{width:16px;height:16px;object-fit:contain}.boss-card-art{height:190px;margin:-18px -18px 15px;overflow:hidden;border-bottom:1px solid #2b2b30;background:#09090b}.boss-card-art img{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:contrast(1.08) saturate(.86)}

.arena-call-join{position:relative;z-index:3}.arena-call-join button{border:1px solid rgba(217,37,46,.7);background:#d9252e;color:#fff;border-radius:10px;padding:10px 14px;font:800 13px 'Barlow Condensed',sans-serif;letter-spacing:1px;cursor:pointer;box-shadow:0 8px 25px rgba(217,37,46,.18)}.arena-call-join button:hover{filter:brightness(1.08)}

.journey-v15-summary{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:12px;margin:16px 0}.journey-v15-summary .dark-card{padding:18px}.journey-v15-summary strong{font:800 34px "Barlow Condensed";display:block}.journey-v15-summary small{color:#777}.journey-progress-big{height:12px;background:#222;border-radius:20px;overflow:hidden;margin-top:10px}.journey-progress-big i{display:block;height:100%;background:linear-gradient(90deg,#82141b,#e01f2a)}
.community-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}.community-main{min-width:0}.community-side{display:flex;flex-direction:column;gap:16px}.composer-card,.feed-post,.social-card{padding:16px}.composer-head,.feed-post-head{display:flex;align-items:center;gap:10px}.avatar-circle{width:42px;height:42px;border-radius:50%;background:#1a1a1e;border:1px solid #3b3b42;display:grid;place-items:center;color:#fff;font:800 18px "Barlow Condensed";overflow:hidden;flex:0 0 auto}.composer-head strong,.feed-post-head strong{display:block}.composer-head small,.feed-post-head small{display:block;color:#777;font-size:10px;margin-top:2px}.composer-card textarea{width:100%;min-height:100px;background:#08080a;border:1px solid #2a2a30;color:#eee;border-radius:8px;padding:12px;margin:14px 0;resize:vertical}.composer-actions{display:flex;justify-content:space-between;align-items:center}.upload-label{border:1px solid #303037;padding:9px 12px;border-radius:6px;color:#aaa;font:700 11px "Barlow Condensed";cursor:pointer}.upload-label input{display:none}.feed-post{margin-top:14px}.post-menu{margin-left:auto;position:relative}.post-menu summary,.comment details summary{cursor:pointer;list-style:none;color:#888}.post-menu>div,.comment details>div{position:absolute;right:0;top:25px;z-index:5;background:#151519;border:1px solid #333;border-radius:6px;padding:5px;min-width:120px}.post-menu button,.comment details button{background:none;border:0;color:#bbb;padding:8px;width:100%;text-align:left;font:700 10px "Barlow Condensed";cursor:pointer}.feed-text{font-size:14px;line-height:1.6;color:#ddd;margin:14px 0}.feed-image{display:block;width:100%;max-height:560px;object-fit:cover;border-radius:8px;border:1px solid #29292f}.feed-actions{display:flex;gap:18px;border-top:1px solid #222;border-bottom:1px solid #222;padding:10px 0;margin-top:12px;color:#888;font-size:12px}.feed-actions form{margin:0}.feed-actions button{background:none;border:0;color:#aaa;cursor:pointer;font:700 12px Inter}.feed-actions button.liked{color:#e01f2a}.comments-list{display:flex;flex-direction:column;gap:10px;padding-top:10px}.comment{display:flex;gap:8px;position:relative}.avatar-mini{width:28px;height:28px;border-radius:50%;background:#202025;display:grid;place-items:center;font:700 12px "Barlow Condensed";flex:0 0 auto}.comment>div:nth-child(2){min-width:0;flex:1}.comment strong{font-size:11px}.comment p{margin:2px 0;color:#bbb;font-size:12px}.comment small{color:#666;font-size:9px}.comment details{margin-left:auto}.comment-form{display:flex;gap:6px;margin-top:10px}.comment-form input{min-width:0;flex:1;background:#08080a;border:1px solid #29292f;color:#eee;padding:10px;border-radius:6px}.comment-form button{background:#e01f2a;border:0;color:#fff;border-radius:6px;width:40px}.social-card h2{font:800 28px "Barlow Condensed";margin:6px 0}.social-card p{color:#888;font-size:12px;line-height:1.5}.social-card>div{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:14px 0}.social-card>div b{font:800 24px "Barlow Condensed"}.social-card>div small{color:#666;font-size:9px}.moderation-list{display:grid;gap:12px}.moderation-card{background:#0e0e11;border:1px solid #29292f;border-radius:10px;padding:15px}.moderation-head,.moderation-actions{display:flex;justify-content:space-between;gap:10px;align-items:center}.moderation-head span{color:#e01f2a;font:800 12px "Barlow Condensed"}.moderation-head small,.moderation-body>small{color:#666;font-size:9px}.moderation-body{padding:12px 0}.moderation-content{margin-top:10px;border:1px solid #29292f;border-radius:7px;padding:10px;background:#08080a}.moderation-content span{color:#777;font:700 9px "Barlow Condensed"}.moderation-content p{color:#ddd;margin:7px 0;font-size:13px}.moderation-content img{max-width:240px;max-height:240px;border-radius:5px}.report-details{font-size:11px;color:#999}.danger-btn{background:#5f1117;border:1px solid #8d2028;color:#fff;border-radius:6px;padding:10px 13px;font:800 11px "Barlow Condensed";cursor:pointer}
@media(max-width:850px){.journey-v15-summary,.community-layout{grid-template-columns:1fr}.community-side{display:grid;grid-template-columns:1fr 1fr}.journey-v15-summary{grid-template-columns:1fr 1fr}}@media(max-width:560px){.community-side{grid-template-columns:1fr}.journey-v15-summary{grid-template-columns:1fr 1fr}.journey-v15-summary .wide{grid-column:1/-1}.moderation-actions{flex-direction:column;align-items:stretch}.moderation-actions form,.moderation-actions button{width:100%}}

.arena-shortcuts img{width:22px;height:22px;object-fit:contain;vertical-align:middle;margin-right:7px}.arena-shortcuts a{display:inline-flex;align-items:center;gap:4px}


/* Project Calist 1.5.5 - mobile production pass */
.plan-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.plan-card-top small{font:700 9px "Barlow Condensed";letter-spacing:.12em;color:#55555d}
.plan-sales-form{margin-top:14px}
.plan-sales-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px}
.plan-sales-button span{font-size:13px}
.plan-contact-note{display:block;margin-top:9px;line-height:1.45}
.plan-contact-warning{color:#e5a5a5!important}

@media (max-width: 800px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .standalone-shell{width:100%;min-width:0}
  .simple-header{min-height:62px;height:auto;gap:8px;flex-wrap:wrap;padding:10px 12px}
  .brand{min-width:0;flex:1}
  .brand strong{font-size:21px}
  .header-actions{min-width:0;max-width:100%;overflow-x:auto;justify-content:flex-end}
  .header-link{font-size:9px;padding:8px 7px;white-space:nowrap}
  .header-button{font-size:9px}
  .account-page,.plans-page{width:calc(100% - 24px);padding:28px 0 70px}
  .page-title-block{margin-bottom:16px}
  .page-title-block h1{font-size:clamp(40px,14vw,58px)!important;line-height:.9}
  .page-title-block p{font-size:12px;line-height:1.55}
  .plan-current{padding:15px;font-size:10px;line-height:1.5;margin:14px 0 10px}
  .plans-grid{grid-template-columns:1fr;gap:10px}
  .plan-card{padding:18px;border-radius:14px}
  .plan-card h2{font-size:26px;margin:6px 0}
  .plan-card>strong{font-size:34px}
  .plan-card>p{min-height:0;font-size:11px;margin-bottom:0}
  .plan-sales-button{min-height:50px;font-size:12px}
  .payment-note{padding:16px;margin-top:10px}
  .payment-note p{font-size:10px}

  .content-page,.feed-page{width:100%;padding:25px 12px 70px}
  .admin-page{width:100%;padding-left:12px;padding-right:12px}
  .admin-form,.admin-list,.composer,.post-card,.profile-main-card,.mission-item,.journey-stage{border-radius:12px}
  .form-grid,.admin-form .form-grid{grid-template-columns:1fr!important}
  input,select,textarea,button{max-width:100%}
  .table-wrap,.admin-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table{min-width:620px}
  .account-actions{flex-direction:column}
  .account-actions a,.inline-btn{width:100%;text-align:center}
}

@media (max-width: 560px){
  .simple-header .header-actions{width:100%;justify-content:space-between;border-top:1px solid #242429;padding-top:7px}
  .simple-header .brand{width:auto}
  .plans-page .page-title-block h1{font-size:50px!important}
  .plan-card{padding:16px}
  .plan-card-top span{font-size:10px}
  .plan-card-top small{font-size:8px}
  .plan-card h2{font-size:25px}
  .plan-card>strong{font-size:31px}
  .plan-sales-button{font-size:11px;letter-spacing:.02em}
  .page-title-block p{font-size:11px}
  .journey-strip,.dark-card{margin-left:10px;margin-right:10px}
  .dashboard-grid{grid-template-columns:1fr!important;padding-left:10px;padding-right:10px}
  .floating-mission{left:10px;right:10px;padding:17px}
  .game-bottom-nav{left:0!important}
  .player-shell.sidebar-collapsed .game-bottom-nav{left:0!important}
}


/* Project Calist 1.5.6 - sales confirmation */
.sales-success-page{min-height:calc(100vh - 100px);display:flex;align-items:center;justify-content:center;padding:36px 16px 70px}
.sales-success-card{width:min(520px,100%);background:#101013;border:1px solid #29292f;border-radius:20px;padding:30px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.28)}
.sales-success-icon{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;border:1px solid #4a4a52;font-size:25px}
.sales-success-card .eyebrow{display:block}
.sales-success-card h1{margin:8px 0 10px;font-size:clamp(30px,6vw,48px);line-height:.95}
.sales-success-card>p{color:#aaaab2;line-height:1.6;font-size:13px}
.sales-reference,.sales-plan{margin-top:16px;padding:14px 16px;border:1px solid #29292f;border-radius:13px;text-align:left;background:#0b0b0e}
.sales-reference small,.sales-plan span{display:block;font-size:9px;letter-spacing:.12em;color:#777780;font-weight:800}
.sales-reference strong{display:block;margin-top:5px;font-size:14px;letter-spacing:.04em}
.sales-plan strong{display:block;margin-top:4px;font-size:22px}
.sales-plan small{display:block;margin-top:4px;color:#888892}
.sales-whatsapp-button{width:100%;margin-top:18px;display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;text-decoration:none}
.sales-fallback{font-size:10px!important;margin:10px 0 18px!important}
.sales-back-button{display:block;text-decoration:none;padding:11px}
@media(max-width:560px){
  .sales-success-page{padding:24px 12px 70px;min-height:calc(100vh - 80px)}
  .sales-success-card{padding:22px 16px;border-radius:16px}
  .sales-success-card h1{font-size:34px}
  .sales-success-card>p{font-size:11px}
}
