/* Shared VirusFly visual system. Loaded after legacy component styles. */
:root {
  --ui-background:#f6f7f5; --ui-card:#fff; --ui-foreground:#18241e;
  --ui-muted:#66726b; --ui-border:#e0e6df; --ui-primary:#234e36;
  --ui-radius:20px; --ui-ease:cubic-bezier(.22,1,.36,1);
  --bg:var(--ui-background); --paper:var(--ui-background); --surface:var(--ui-card);
  --ink:var(--ui-foreground); --muted:var(--ui-muted); --line:var(--ui-border);
  --hairline:var(--ui-border); --toxic-dark:var(--ui-primary); --green:var(--ui-primary);
  --shadow:0 4px 20px #18241e05;
  --display:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;
  --pixel:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;
}
body {background:var(--ui-background);font-family:var(--display);line-height:1.5}
.shell,.admin-shell {width:min(1320px,calc(100% - 80px));padding:0 0 40px}
.panel {border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-card);box-shadow:var(--shadow)}
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent }
button,.btn,.nav-tab,.launched-ca-chip {transition:background 180ms ease,box-shadow 180ms ease,transform 180ms var(--ui-ease)}
button:not(:disabled):active,.btn:not(:disabled):active {transform:scale(.97)}
:where(a,button,input,select,textarea):focus-visible {outline:3px solid #739d51;outline-offset:4px}
button:disabled {cursor:not-allowed}
.topbar,.admin-header,.ui-launchpad header {min-height:100px;margin-bottom:28px;padding:20px 0;border-bottom:1px solid var(--ui-border)}
.ui-community .topbar {grid-template-columns:minmax(0,1fr) 102px 200px;gap:16px}
.ui-community .brand {grid-template-columns:48px 1fr;gap:12px}
.brand-logo {width:48px;height:48px;filter:none;border-radius:12px;image-rendering:auto}
.brand-title {font-size:26px;line-height:1.2;font-weight:750;letter-spacing:-1px;color:var(--ui-foreground)}
.tab-nav {box-shadow:none;border:1px solid var(--ui-border);border-radius:12px;min-height:42px;background:#fff}
.nav-tab {min-height:42px;font-weight:600}.nav-tab + .nav-tab {border-left:1px solid var(--ui-border)}
.wallet-card {grid-template-columns:1fr;padding:0;min-height:44px;border:0;box-shadow:none;background:transparent}
.wallet-avatar {display:none}.wallet-connect {min-height:44px;border-radius:12px;box-shadow:none;font-family:var(--display);font-weight:650;font-size:13px;text-transform:none;background:var(--ui-primary);color:white;border:0}
.page-intro {display:flex;align-items:center;justify-content:space-between;gap:24px;margin:34px 0 30px;position:relative;z-index:13}
.eyebrow {display:block;font-size:10px;font-weight:750;letter-spacing:2px;color:#52735c}
.page-intro h1 {font-size:clamp(26px,3vw,40px);font-weight:650;letter-spacing:-1.5px;line-height:1.2;margin:10px 0}
.page-intro p {font-size:14px;color:var(--muted)}
.section-jump {font-size:13px;text-decoration:none;white-space:nowrap;border-bottom:1px solid #a8b8a8;padding:8px 0}.section-jump span {margin-left:16px}
.dashboard {gap:20px;grid-template-columns:minmax(0,1fr) 310px}.side-stack {gap:20px;grid-template-rows:1fr auto}
.top-ca-card {padding:20px 24px;border:1px solid var(--ui-border);border-radius:16px;box-shadow:none;background:#fff;gap:12px}
.top-ca-logo {width:40px;height:40px;transform:none}.top-ca-address {font-family:ui-monospace,monospace;font-size:13px;font-weight:500;text-shadow:none;line-height:1.6}
.top-ca-kicker,.top-ca-market span {font-size:10px;font-weight:650;letter-spacing:1px}
.top-ca-market strong {font-size:28px;font-weight:650;letter-spacing:-1px}.top-ca-status {font-size:11px;font-weight:400}
.top-ca-copy {box-shadow:none;border:1px solid var(--ui-border);border-radius:10px}
.scene {min-height:390px;background:#eaf1e4;border-radius:19px}
.scene-art {inset:auto 0 0 auto;width:53%;height:90%;object-fit:contain;mix-blend-mode:multiply;image-rendering:auto}
.hero-story {position:relative;z-index:4;padding:48px 32px;width:58%;pointer-events:none}
.hero-story h2 {font-size:clamp(32px,4vw,58px);line-height:1.04;font-weight:650;letter-spacing:-2.5px;margin:25px 0 20px;color:#234e36}
.hero-story p {font-size:13px;line-height:1.7;color:#54705a}.hero-action {display:inline-flex;gap:20px;align-items:center;margin-top:28px;font-size:12px;font-weight:600;color:#234e36;text-decoration:none;pointer-events:auto}.hero-action:hover {text-decoration:underline}
.count-panel {min-height:230px;padding:26px;background:#244d37;color:#eff8ee}.panel-kicker {font-size:11px;font-weight:600;letter-spacing:1px;color:inherit}
.count-panel .divider {background:#ffffff24;margin:18px 0}.count {font-size:70px;line-height:1;font-weight:500;letter-spacing:-4px;color:#d9f5a7;font-variant-numeric:tabular-nums}
.count-copy {font-size:12px;font-weight:400;line-height:1.7;margin-top:14px;max-width:210px;color:#c3d5c8}
.bio-mark {width:36px;height:36px;left:auto;right:20px;bottom:24px;transform:none;color:#d9f5a7;opacity:.35}
.report-card {padding:23px;min-height:145px}.report-head {gap:8px}.report-head strong {font-size:11px;font-weight:650;letter-spacing:.2px}.stamp {font-size:9px;transform:none;box-shadow:none;border:0;border-radius:20px;background:#eef5e7;color:#4b6745;padding:4px 8px}
.report-card p {font-size:12px;font-weight:400;line-height:1.7;max-width:100%;margin-top:14px}.report-cat {display:none}
.meme-post-row {gap:20px;margin-top:20px}.launched-ca-panel,.x-posts-panel {padding:26px;min-height:245px}
.section-title {font-size:17px;font-weight:650;line-height:1.3;text-transform:none;letter-spacing:-.4px;color:var(--ink)}
.section-subtitle {font-size:11px;font-weight:400;color:var(--muted);line-height:1.5}.section-head {gap:12px;margin-bottom:22px}.panel-icon {display:none}
.x-post-status {font-size:9px;font-weight:500;border:1px solid var(--ui-border);border-radius:20px;background:#f6f8f3;padding:5px 8px}
.launched-ca-chip,.x-post-card {border:1px solid var(--ui-border);border-radius:10px;box-shadow:none}.launched-ca-chip:hover {transform:translateY(-2px);box-shadow:0 4px 12px #234e3610;background:#f0f6eb}
.launched-ca-empty,.x-post-empty {border:1px dashed var(--ui-border);background:#fafbf8;border-radius:12px;color:var(--muted);font-size:12px;font-weight:400;line-height:1.6;padding:24px}
.virus-field {z-index:0;opacity:.09}.ticker {background:transparent;color:#758172;width:min(1320px,calc(100% - 80px));border-top:1px solid var(--ui-border);border-radius:0;margin:0 auto 16px}.ticker-track {font-size:10px;font-weight:500;letter-spacing:2px}.ticker-dot {width:4px;height:4px;box-shadow:none;border-radius:50%}
/* Operations pages share the same surfaces, type, and form treatment. */
.ui-admin .panel-head,.ui-launchpad .panel-head {padding:20px 24px;background:#fff}
.ui-admin .panel-body,.ui-launchpad .panel-body {padding:24px}
.ui-admin .layout,.ui-launchpad .grid {gap:20px}
.ui-admin h1,.ui-launchpad .brand h1 {font-size:22px;font-weight:650;letter-spacing:-.6px}
.ui-admin h2,.ui-launchpad h2 {font-weight:650;font-size:15px}
.btn {border-radius:10px;min-height:40px;box-shadow:none;font-weight:550}
.btn.primary {background:var(--ui-primary);border-color:var(--ui-primary)}
input,textarea,select {border-radius:10px;border-color:var(--ui-border);min-height:44px;box-shadow:0 1px 2px #18241e04}
input[type=checkbox],input[type=radio] {min-height:auto;accent-color:var(--ui-primary)}
input:focus,select:focus,textarea:focus {border-color:#739d51;box-shadow:0 0 0 3px #739d5120}
.metric {border-radius:16px;padding:20px 24px;background:white;min-height:100px}.metric strong {font-size:28px;font-weight:550;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.metric span {font-weight:500;font-size:11px;letter-spacing:.5px}
.summary-strip {gap:16px;margin-bottom:24px}.pill {border-radius:30px;font-size:11px}.stack {gap:16px}
@media(min-width:1100px){.ui-launchpad .grid {grid-template-columns:1fr 1fr}.ui-launchpad .shell {max-width:1240px}}
@media(max-width:900px){.shell,.admin-shell {width:calc(100% - 40px)}.dashboard {grid-template-columns:minmax(0,1fr) 270px}.hero-story {padding:32px 24px}.hero-story h2 {font-size:38px}.page-intro h1 {font-size:30px}.ui-launchpad header {flex-wrap:wrap}.ui-launchpad .toolbar {justify-content:flex-start}}
@media(max-width:700px){
 .shell,.admin-shell {width:calc(100% - 32px)}.ui-community .topbar {grid-template-columns:1fr 90px;gap:12px;margin-bottom:20px;padding:16px 0}.ui-community .brand {grid-template-columns:36px 1fr;gap:8px}.brand-logo {width:36px;height:36px}.brand-title {font-size:23px}.tab-nav {width:90px;grid-template-columns:44px 44px}.wallet-card {grid-column:1/-1;justify-self:stretch;width:100%;max-width:none}.wallet-connect {width:100%}
 .page-intro {margin:24px 0;display:block}.page-intro h1 {font-size:28px;letter-spacing:-1px}.section-jump {display:inline-block;margin-top:12px}.dashboard {grid-template-columns:minmax(0,1fr);grid-template-areas:"mainca" "trench" "side";gap:16px}.side-stack {grid-template-columns:1fr;gap:16px}.scene {min-height:340px}.hero-story {width:65%;padding:30px 22px}.hero-story h2 {font-size:42px}.scene-art {width:50%;height:75%}.count-panel {min-height:220px}.meme-post-row {grid-template-columns:minmax(0,1fr);gap:16px}.top-ca-card {padding:16px;grid-template-columns:32px minmax(0,1fr)}.top-ca-logo {width:32px;height:32px}.top-ca-market {grid-column:2;min-width:0;border-left:0;text-align:left;padding:8px 0}.top-ca-market strong {margin-top:5px}.top-ca-status {grid-column:2}.top-ca-address {font-size:11px}.ticker {width:calc(100% - 32px)}
 .ui-admin .admin-header {flex-wrap:wrap}.ui-admin .toolbar {justify-content:flex-start}.ui-admin .layout,.ui-launchpad .grid {grid-template-columns:minmax(0,1fr)}.ui-admin .panel-body,.ui-launchpad .panel-body {padding:18px}.summary-strip {gap:8px}.metric {padding:14px 10px}.metric strong {font-size:23px}
}
@media(prefers-reduced-motion:no-preference){.page-intro,.dashboard,.ui-admin .layout,.ui-launchpad .grid {animation:ui-enter 400ms var(--ui-ease) both}@keyframes ui-enter {from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.btn.icon {width:auto;min-width:40px;flex-shrink:0}
@media(max-width:700px){.scene-art {height:230px;width:45%;right:0;bottom:0}.hero-story {width:100%;padding-bottom:110px}.hero-story p {max-width:180px}.hero-action {position:relative;z-index:1}.wallet-slot {width:100%}.wallet-slot>div {width:100%}}
@media(max-width:780px){.dashboard {display:grid}.scene {width:100%;aspect-ratio:auto;height:auto}.scene-card {min-width:0}.brand-logo {transform:none}.report-card p {padding-right:0}}
.empty-memecoins {border:1px dashed var(--ui-border);border-radius:12px;background:#fafbf8;color:var(--muted);padding:24px;font-size:12px;font-weight:400;line-height:1.6}

[hidden] { display: none !important; }
