/* Shared presentation layer, loaded after each page's legacy styles. */
:root {
    color-scheme: dark;
    --uw-bg: #0c1424;
    --uw-panel: #172338;
    --uw-card: #141f32;
    --uw-border: #2c3a50;
    --uw-primary: #6366f1;
    --uw-primary-hover: #5457dc;
    --uw-text: #f1f5fc;
    --uw-dim: #c3cee0;
    --uw-muted: #a0aec3;
    --uw-green: #34d399;
    --uw-red: #fb7185;
    --uw-radius: 20px;
    --primary: var(--uw-primary);
    --primary-hover: var(--uw-primary-hover);
    --bg-dark: var(--uw-bg);
    --bg-deep: var(--uw-bg);
    --card-bg: var(--uw-card);
    --glass-border: var(--uw-border);
    --text-main: var(--uw-text);
    --text-dim: var(--uw-dim);
    --text-muted: var(--uw-muted);
    --bg-base: #101a2d;
    --bg-panel: var(--uw-card);
    --bg-elevated: var(--uw-panel);
    --border: var(--uw-border);
    --bs-body-bg: var(--uw-bg);
    --bs-body-color: var(--uw-text);
    --bs-secondary-color: var(--uw-muted);
    --bs-tertiary-color: var(--uw-muted);
    --bs-emphasis-color: var(--uw-text);
    --bs-border-color: var(--uw-border);
    --bs-link-color: #b3b6ff;
    --bs-link-hover-color: #d2d4ff;
}

body.uw-ui {
    margin: 0;
    background: var(--uw-bg);
    background-image: radial-gradient(ellipse at 15% 0, #6366f10d, transparent 45%);
    color: var(--uw-text);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans", "Noto Sans JP", Meiryo, sans-serif;
    font-size: 15px;
    line-height: 1.65;
    min-height: 100vh;
    min-height: 100dvh;
    -webkit-font-smoothing: antialiased;
}
body.uw-ui *, body.uw-ui *::before, body.uw-ui *::after { box-sizing: border-box; }
body.uw-ui :is(h1, h2, h3, h4, h5, h6) { color: var(--uw-text); line-height: 1.4; letter-spacing: -.025em; }
body.uw-ui h1 { font-size: clamp(1.5rem, 3vw, 2rem); background: none; -webkit-text-fill-color: currentColor; }
body.uw-ui :is(h1, h2).uw-page-title { font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 700; margin: 0 0 8px; }
body.uw-ui :is(.text-muted, .text-secondary, .text-gray-500) { color: var(--uw-muted) !important; }
body.uw-ui .text-dim { color: var(--uw-dim) !important; }
body.uw-ui .text-primary { color: #b3b6ff !important; }
body.uw-ui .text-success { color: #6ee7b7 !important; }
body.uw-ui .text-danger { color: #fda4af !important; }
body.uw-ui .text-warning { color: #fcd34d !important; }
body.uw-ui .small { font-size: .875rem !important; }
body.uw-ui :is(.uppercase, .section-title) { letter-spacing: .035em; }
body.uw-ui :is(.font-monospace, .stat-value, .portfolio-total, .stat-num, td) { font-variant-numeric: tabular-nums; }
body.uw-ui :is(.font-monospace, .contract-addr, .server-id-mono) { overflow-wrap: anywhere; }
body.uw-ui :is(.ambient-blobs, .background-blobs) { display: none; }
body.uw-ui a:not([class]) { color: #b3b6ff; text-underline-offset: 3px; }
body.uw-ui :is(button, input, select, textarea, a):focus-visible { outline: 3px solid #a5b4fc; outline-offset: 4px; }
body.uw-ui ::selection { background: #6366f159; color: #fff; }

/* Navigation: readable targets, a restrained active state, and room for Japanese labels. */
body.uw-ui .uw-nav { width: 100%; height: 72px; flex-shrink: 0; z-index: 1000; margin: 0; text-align: left; background: #0c1424f5; border-bottom: 1px solid var(--uw-border); }
body.uw-ui .uw-nav-inner { height: 72px; max-width: 1480px; padding: 0 28px; gap: 26px; }
body.uw-ui .uw-brand { display: flex; align-items: center; gap: 10px; font-size: 15px; letter-spacing: -.025em; }
body.uw-ui .uw-brand-mark { display: grid; place-items: center; width: 36px; height: 36px; flex-shrink: 0; border: 1px solid #9294ff40; border-radius: 11px; background: #6366f126; color: #c7c9ff; }
body.uw-ui .uw-menu { gap: 3px; }
body.uw-ui .uw-link { min-height: 42px; padding: 10px 11px; font-size: 14px; line-height: 1.4; color: var(--uw-dim); border: 1px solid transparent; }
body.uw-ui .uw-link:hover { background: #ffffff08; color: #fff; }
body.uw-ui .uw-link.uw-active { color: #c7c9ff; background: #6366f11a; border-color: #6366f133; text-decoration: none; }
body.uw-ui .uw-dd-menu { background: #172338; border-color: var(--uw-border); border-radius: 14px; padding: 8px; box-shadow: 0 16px 48px #0006; z-index: 1001; max-height: calc(100dvh - 110px); overflow-y: auto; }
body.uw-ui .uw-dd-item { min-height: 42px; padding: 10px 12px; font-size: 14px; line-height: 1.5; }
body.uw-ui .uw-dd-item.uw-active { color: #c7c9ff; background: #6366f11a; }
body.uw-ui .uw-user { gap: 12px; }
body.uw-ui .uw-user-name { max-width: 120px; font-size: 13px; }
body.uw-ui :is(.uw-logout-btn, .uw-login-link) { min-height: 38px; padding: 8px 12px; border-radius: 9px; font-size: 13px; }
body.uw-ui .uw-burger { height: 44px; width: 44px; }
body.uw-ui .uw-skip-link { position: fixed; top: -100px; left: 16px; z-index: 11000; padding: 12px 20px; background: var(--uw-primary); color: #fff; border-radius: 10px; }
body.uw-ui .uw-skip-link:focus { top: 12px; }

/* Consistent surfaces and controls, including Bootstrap's light defaults. */
body.uw-ui :is(.card, .uw-card, .price-card, .stat-card, .user-list-section, .hero-banner) {
    background: var(--uw-card); color: var(--uw-text); border-color: var(--uw-border); border-radius: var(--uw-radius);
    backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: 0 4px 20px #00000012;
}
body.uw-ui :is(.card-header, .card-footer) { background: #ffffff03; color: var(--uw-text); border-color: var(--uw-border); }
body.uw-ui .card-header { border-radius: 19px 19px 0 0 !important; }
body.uw-ui :is(.stat-card, .price-card):hover { transform: none; border-color: #455475; box-shadow: 0 6px 24px #0002; }
body.uw-ui .card-title { line-height: 1.45; }
body.uw-ui .btn { min-height: 42px; border-radius: 10px; padding: 9px 16px; font-weight: 600; font-size: .875rem; line-height: 1.5; transition: background-color .15s, border-color .15s, box-shadow .15s; }
body.uw-ui .btn-sm { min-height: 36px; padding: 6px 12px; font-size: .8125rem; }
body.uw-ui .btn-link { min-height: auto; }
body.uw-ui .btn-primary { background: var(--uw-primary); border: 1px solid var(--uw-primary); color: #fff; box-shadow: 0 3px 10px #6366f11a; }
body.uw-ui .btn-primary:hover { background: var(--uw-primary-hover); border-color: var(--uw-primary-hover); transform: none; }
body.uw-ui :is(.btn-outline-primary, .btn-edit) { color: #b3b6ff; border-color: #6366f170; }
body.uw-ui :is(.btn-outline-primary, .btn-edit):hover { background: #6366f120; color: #d2d4ff; }
body.uw-ui :is(.btn-outline-secondary, .btn-outline-light) { border-color: #43516a; color: var(--uw-dim); }
body.uw-ui :is(.btn-outline-secondary, .btn-outline-light):hover { background: #24324a; color: #fff; }
body.uw-ui :is(.btn-success, .submit-btn.buy) { background: #087f5b; border-color: #087f5b; color: #fff; }
body.uw-ui :is(.btn-danger, .submit-btn.sell) { background: #c33a53; border-color: #c33a53; color: #fff; }
body.uw-ui .btn:disabled { opacity: .5; box-shadow: none; cursor: not-allowed; }
body.uw-ui :is(.form-label, .input-group label) { color: var(--uw-dim); font-size: .875rem; font-weight: 500; margin-bottom: 8px; }
body.uw-ui :is(.form-control, .form-select, .search-input) { min-height: 44px; background-color: #0f192b; color: var(--uw-text); border: 1px solid #3b4a62; border-radius: 10px; padding: 10px 13px; font-size: .9375rem; line-height: 1.5; }
body.uw-ui :is(.form-control, .form-select, .search-input):focus { color: var(--uw-text); background-color: #111d32; border-color: #9395ff; box-shadow: 0 0 0 3px #6366f124; }
body.uw-ui :is(input, textarea)::placeholder { color: #91a1b8; opacity: 1; }
body.uw-ui :is(.form-control:disabled, .form-control[readonly], .form-select:disabled) { background: #1a2538; color: var(--uw-dim); }
body.uw-ui .form-select option { background: #172338; color: var(--uw-text); }
body.uw-ui .input-group { margin-bottom: 0; }
body.uw-ui .input-group > :is(.form-control, .form-select, .btn, .input-group-text):not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
body.uw-ui .input-group > :is(.form-control, .form-select, .btn, .input-group-text):not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; }
body.uw-ui .input-group-text { background: #1c2a40; color: var(--uw-dim); border-color: #3b4a62; }
body.uw-ui .form-check-input { border-color: #687791; }
body.uw-ui :is(.modal-content, .modal-box, .dropdown-menu, .offcanvas) { background: #172338; color: var(--uw-text); border-color: var(--uw-border); }
body.uw-ui .modal-content { border-radius: 20px; box-shadow: 0 24px 80px #0006; }
body.uw-ui .modal { z-index: 1060; }
body.uw-ui .modal-dialog > .modal-content { width: 100%; max-width: none; padding: 0; transform: none; }
body.uw-ui .dropdown-item { color: var(--uw-dim); padding: 10px 16px; }
body.uw-ui .dropdown-item:hover { background: #6366f120; color: #fff; }
body.uw-ui :is(.nav-pills, .nav-tabs) .nav-link { min-height: 44px; font-size: .875rem; }
body.uw-ui .nav-tabs .nav-link.active { color: #c7c9ff; }
body.uw-ui :is(.table, .uw-table) { --bs-table-color: var(--uw-text); --bs-table-bg: transparent; --bs-table-border-color: var(--uw-border); --bs-table-striped-bg: #ffffff03; --bs-table-striped-color: var(--uw-text); --bs-table-hover-bg: #ffffff05; --bs-table-hover-color: var(--uw-text); color: var(--uw-text); }
body.uw-ui :is(.table, .uw-table) thead th { background: #101a2d; color: var(--uw-dim); font-size: .8125rem; font-weight: 600; padding: 14px 16px; letter-spacing: .02em; }
body.uw-ui :is(.table, .uw-table) tbody td { padding: 14px 16px; color: var(--uw-text); font-size: .875rem; vertical-align: middle; }
body.uw-ui :is(.table-responsive, .table-container) { border-radius: 12px; }
body.uw-ui #toast-container { top: 88px; max-width: calc(100vw - 32px); }
body.uw-ui :is(.toast-message, .toast-msg) { background: #1c2a40; color: var(--uw-text); box-shadow: 0 12px 36px #0004; min-width: 0; max-width: 100%; }

/* Page spacing, with narrow layouts retained for focused tools. */
body.uw-ui:not(.uw-page-login):not(.uw-page-exchange) > :is(.container, .container-fluid, .max-w-7xl) { margin-left: auto; margin-right: auto; padding-top: 30px !important; padding-bottom: 36px; }
body.uw-ui:not(.uw-page-login):not(.uw-page-exchange) > .container { max-width: 1200px; }
body.uw-ui.uw-page-prices { padding: 0 !important; }
body.uw-ui.uw-page-prices > .container + .container { padding-top: 0 !important; }
body.uw-ui.uw-page-admin .bg-gray-800 { background-color: var(--uw-card); border-color: var(--uw-border); box-shadow: 0 4px 20px #00000012; }
body.uw-ui.uw-page-admin :is(input, select):not([type=checkbox]):not([type=radio]) { min-height: 44px; color: var(--uw-text); }
body.uw-ui.uw-page-admin :is(button, a.bg-indigo-600) { min-height: 40px; }

/* Wallet overview and tabs. */
body.uw-ui .uw-page-heading { margin-bottom: 26px; text-align: left; }
body.uw-ui .uw-page-heading p { color: var(--uw-muted); margin: 0; }
body.uw-ui #pills-tab { justify-content: flex-start !important; gap: 6px; padding: 8px; background: #101a2d; border: 1px solid var(--uw-border); border-radius: 16px; }
body.uw-ui #pills-tab .nav-link { padding: 10px 16px; border-radius: 10px; font-weight: 500 !important; white-space: nowrap; }
body.uw-ui #pills-tab .nav-link.active { background: #6366f126; color: #d2d4ff; box-shadow: inset 0 0 0 1px #6366f140; }
body.uw-ui .portfolio-summary-card { background: linear-gradient(110deg, #1b2944, #202c4f); border: 1px solid #3b4b70; padding: 30px !important; }
body.uw-ui .portfolio-total { color: #fff; font-size: clamp(2rem, 4.5vw, 3.25rem); line-height: 1.3; overflow-wrap: anywhere; }
body.uw-ui .balance-card { border-left: 3px solid #9395ff; }
body.uw-ui .balance-card .card-body { padding: 22px; }
body.uw-ui .staking-card { border-top-width: 3px; }

/* EarthGameChain assets stay identified by chain and contract address. */
body.uw-ui .game-network-details { display: flex; flex-wrap: wrap; gap: 8px 24px; color: var(--uw-muted); font-size: .8125rem; border-top: 1px solid var(--uw-border); padding-top: 16px; }
body.uw-ui .game-network-details strong { color: var(--uw-dim); font-variant-numeric: tabular-nums; margin-left: 6px; }
body.uw-ui .game-asset-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 14px; }
body.uw-ui .game-asset { background: #101a2d; border: 1px solid var(--uw-border); border-radius: 14px; padding: 18px; min-width: 0; }
body.uw-ui .game-asset-value { font-size: 1.4rem; font-weight: 600; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; margin: 12px 0; }
body.uw-ui .game-receive { border-top: 1px solid var(--uw-border); padding-top: 24px; }
body.uw-ui .game-token-input { flex: 1 1 220px; width: auto; }
body.uw-ui #gameMessage { overflow-wrap: anywhere; }
body.uw-ui #pills-earthgame summary { cursor: pointer; }

/* Login is allowed to scroll on short screens and with the mobile keyboard open. */
body.uw-ui.uw-page-login { overflow: auto; }
body.uw-ui .login-container { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px); align-items: center; gap: 76px; width: 100%; max-width: 1120px; margin: auto; padding: 48px 32px; }
body.uw-ui .auth-intro { padding: 16px 0; }
body.uw-ui .auth-eyebrow { display: flex; align-items: center; gap: 10px; color: #b3b6ff; font-size: 12px; font-weight: 700; letter-spacing: .16em; margin-bottom: 22px; }
body.uw-ui .auth-eyebrow::before { content: ""; width: 24px; height: 2px; background: #9395ff; }
body.uw-ui .auth-title { font-size: clamp(2rem, 4vw, 3.1rem); line-height: 1.4; font-weight: 700; letter-spacing: -.04em; margin: 0 0 20px; }
body.uw-ui .auth-description { max-width: 380px; color: var(--uw-dim); font-size: .9375rem; line-height: 1.9; margin-bottom: 30px; }
body.uw-ui .auth-preview { max-width: 370px; padding: 26px; background: linear-gradient(135deg, #213050, #17243d); border: 1px solid #45577b; border-radius: 22px; box-shadow: 0 20px 60px #0002; }
body.uw-ui .auth-preview-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; color: #c5cee0; font-size: 12px; letter-spacing: .08em; }
body.uw-ui .auth-preview-icon { color: #c7c9ff; }
body.uw-ui .auth-preview-title { color: #fff; font-size: 22px; font-weight: 600; margin-bottom: 6px; }
body.uw-ui .auth-preview-description { color: var(--uw-muted); font-size: 13px; }
body.uw-ui .auth-tokens { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
body.uw-ui .auth-token { display: inline-flex; align-items: center; gap: 7px; padding: 6px 10px; border-radius: 8px; border: 1px solid #ffffff15; color: var(--uw-dim); font-size: 12px; background: #ffffff05; }
body.uw-ui .auth-token::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #a5b4fc; }
body.uw-ui .auth-token:nth-child(2)::before { background: #6ee7b7; }
body.uw-ui .auth-token:nth-child(3)::before { background: #7dd3fc; }
body.uw-ui .auth-features { display: flex; flex-wrap: wrap; gap: 8px 20px; color: var(--uw-muted); margin-top: 26px; font-size: 13px; }
body.uw-ui .auth-features span::before { content: "✓"; color: #a5b4fc; margin-right: 7px; }
body.uw-ui .login-card { padding: 32px; background: #141f32; border-color: var(--uw-border); border-radius: 24px; box-shadow: 0 16px 60px #0002; backdrop-filter: none; }
body.uw-ui .login-heading { font-family: inherit; font-size: 1.6rem; font-weight: 700; margin-bottom: 10px; }
body.uw-ui .login-card .subtitle { font-size: .875rem; line-height: 1.7; color: var(--uw-muted); letter-spacing: 0; text-transform: none; margin-bottom: 26px; }
body.uw-ui .login-card :is(.btn-discord, .btn-google) { min-height: 48px; font-size: .875rem; border-radius: 10px; box-shadow: none; }
body.uw-ui .btn-google { color-scheme: light; }
body.uw-ui .login-card .divider { margin: 22px 0; font-size: .8125rem; letter-spacing: 0; }
body.uw-ui .login-card .footer-note { border-top: 1px solid var(--uw-border); padding-top: 22px; margin-top: 24px; font-size: .8125rem; }
body.uw-ui .login-card .btn-primary { min-height: 48px; margin-top: 0; }

/* Trading keeps its own dense layout, with larger labels and an accessible mobile flow. */
body.uw-ui.uw-page-exchange { height: 100dvh; min-height: 0; font-size: 13px; background: var(--bg-base); }
body.uw-ui.uw-page-exchange .stats-bar { height: auto; min-height: 72px; padding: 12px 20px; gap: 24px; }
body.uw-ui.uw-page-exchange .main-area { grid-template-columns: minmax(0, 1fr) 280px 300px; }
body.uw-ui.uw-page-exchange .order-panel { padding: 18px; }
body.uw-ui.uw-page-exchange :is(.interval-btn, .book-tab, .type-tab, .pct-btn, .cat-btn) { font-size: 12px; min-height: 32px; }
body.uw-ui.uw-page-exchange :is(.chart-toolbar, .book-tabs) { height: 42px; }
body.uw-ui.uw-page-exchange .book-header { font-size: 12px; padding: 8px 12px; }
body.uw-ui.uw-page-exchange .book-row { font-size: 12px; padding: 4px 12px; line-height: 1.5; }
body.uw-ui.uw-page-exchange :is(.balance-line, .form-row label, .ratio-bar, .stat .label) { font-size: 12px; }
body.uw-ui.uw-page-exchange :is(.form-input, .input-suffix) { min-height: 40px; padding: 9px 10px; font-size: 13px; }
body.uw-ui.uw-page-exchange .form-row { margin-bottom: 14px; }
body.uw-ui.uw-page-exchange .submit-btn { min-height: 46px; border-radius: 10px; font-size: 14px; }
body.uw-ui.uw-page-exchange .side-tab { min-height: 42px; font-size: 14px; }
body.uw-ui.uw-page-exchange .myorders-panel .tabs { height: 40px; }
body.uw-ui.uw-page-exchange .myorders-panel .tabs button { font-size: 12px; }
body.uw-ui.uw-page-exchange .myorders-table :is(th, td) { padding: 10px 12px; font-size: 12px; }
body.uw-ui.uw-page-exchange .myorders-table th { top: 40px; }
body.uw-ui.uw-page-exchange .myorders-table .cancel-btn { min-height: 30px; }
body.uw-ui.uw-page-dex #page-dex > .container-fluid { padding-top: 36px !important; padding-bottom: 48px !important; }
body.uw-ui.uw-page-dex #page-dex .card { box-shadow: 0 16px 50px #0002; }
body.uw-ui.uw-page-dex :is(#dexAmountIn, #dexAmountOut) { font-variant-numeric: tabular-nums; min-width: 0; }
body.uw-ui.uw-page-dex .dex-slip-btn { min-height: 34px; border-radius: 8px; }

@media (min-width: 1025px) and (max-width: 1300px) {
    body.uw-ui.uw-page-exchange .main-area { grid-template-columns: minmax(0, 1fr) 250px 270px; }
}
@media (max-width: 1199.98px) {
    body.uw-ui .uw-nav-inner { padding: 0 20px; }
    body.uw-ui .uw-burger { display: inline-flex; align-items: center; justify-content: center; margin-left: auto; }
    body.uw-ui .uw-menu { display: none; position: absolute; top: 72px; left: 0; right: 0; flex-direction: column; align-items: stretch; padding: 14px 20px 20px; background: #101a2dfa; border-bottom: 1px solid var(--uw-border); max-height: calc(100dvh - 72px); overflow-y: auto; box-shadow: 0 16px 32px #0004; }
    body.uw-ui .uw-menu.uw-open { display: flex; }
    body.uw-ui .uw-link { width: 100%; min-height: 46px; padding: 12px; }
    body.uw-ui .uw-dd { width: 100%; }
    body.uw-ui .uw-dd-toggle { justify-content: space-between; }
    body.uw-ui .uw-dd-menu { position: static; min-width: 0; width: 100%; box-shadow: none; border: none; background: #ffffff04; margin: 4px 0; max-height: none; }
    body.uw-ui .uw-user { margin-left: 0; margin-top: 10px; padding-top: 16px; border-top: 1px solid var(--uw-border); justify-content: space-between; width: 100%; }
    body.uw-ui .uw-user-name { max-width: 240px; }
}
@media (max-width: 1024px) {
    body.uw-ui.uw-page-exchange { height: auto; min-height: 100dvh; overflow: auto; }
    body.uw-ui.uw-page-exchange .main-area { flex: none; overflow: visible; grid-template-columns: minmax(0, 1fr); grid-template-rows: 360px 320px auto auto; }
    body.uw-ui.uw-page-exchange :is(.chart-panel, .book-panel, .order-panel, .myorders-panel) { grid-column: 1; max-height: none; }
    body.uw-ui.uw-page-exchange .chart-panel { grid-row: 1; }
    body.uw-ui.uw-page-exchange .book-panel { grid-row: 2; }
    body.uw-ui.uw-page-exchange .order-panel { grid-row: 3; }
    body.uw-ui.uw-page-exchange .myorders-panel { grid-row: 4; max-height: 320px; overflow: auto; }
}
@media (max-width: 767.98px) {
    body.uw-ui .uw-nav, body.uw-ui .uw-nav-inner { height: 64px; }
    body.uw-ui .uw-nav-inner { padding: 0 16px; }
    body.uw-ui .uw-menu { top: 64px; max-height: calc(100dvh - 64px); }
    body.uw-ui .uw-brand { font-size: 14px; }
    body.uw-ui:not(.uw-page-login):not(.uw-page-exchange) > :is(.container, .container-fluid, .max-w-7xl) { padding-left: 16px !important; padding-right: 16px !important; padding-top: 24px !important; }
    body.uw-ui .uw-page-heading { margin-bottom: 20px; }
    body.uw-ui #pills-tab { flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start !important; scroll-padding: 8px; }
    body.uw-ui #pills-tab .nav-item { flex-shrink: 0; }
    body.uw-ui #pills-tab .nav-link { padding: 10px 13px; }
    body.uw-ui :is(.form-control, .form-select, .search-input) { font-size: 16px; }
    body.uw-ui :is(.modal-dialog, .modal-box) { max-width: calc(100vw - 24px); }
    body.uw-ui .modal-content { max-height: calc(100dvh - 32px); overflow-y: auto; }
    body.uw-ui .modal-dialog > .modal-content { width: 100%; }
    body.uw-ui .portfolio-summary-card { padding: 24px !important; }
    body.uw-ui #toast-container { top: 78px; }
    body.uw-ui .login-container { grid-template-columns: minmax(0, 1fr); gap: 24px; max-width: 500px; padding: 28px 16px 40px; }
    body.uw-ui .auth-intro { text-align: center; padding: 0 10px; }
    body.uw-ui .auth-eyebrow { justify-content: center; margin-bottom: 14px; }
    body.uw-ui .auth-title { font-size: 1.75rem; margin-bottom: 12px; }
    body.uw-ui .auth-title br { display: none; }
    body.uw-ui .auth-description { margin: 0 auto; font-size: .875rem; }
    body.uw-ui :is(.auth-preview, .auth-features) { display: none; }
    body.uw-ui .login-card { padding: 26px 22px; }
    body.uw-ui.uw-page-dex #page-dex > .container-fluid { padding-left: 16px !important; padding-right: 16px !important; }
    body.uw-ui.uw-page-dex :is(#dexFromToken, #dexToToken) { width: 115px !important; flex-shrink: 0; }
    body.uw-ui.uw-page-dex :is(#dexAmountIn, #dexAmountOut) { width: 0; flex: 1; }
    body.uw-ui.uw-page-dex #dexTabSwapContent .d-flex.mb-3 { flex-wrap: wrap; }
    body.uw-ui:is(.uw-page-nft, .uw-page-item-permissions) :is(.container, #mainContent) > .d-flex:first-child { flex-wrap: wrap; gap: 16px; }
    body.uw-ui:not(.uw-page-login):not(.uw-page-exchange) > .container > .d-flex:first-child { flex-wrap: wrap; gap: 16px; }
}
@media (prefers-reduced-motion: reduce) {
    body.uw-ui *, body.uw-ui *::before, body.uw-ui *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
