@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#0c0e11;--panel:#101317;--panel2:#15191e;--edge:#242a30;--white:#f5f6ef;--mute:#7d8690;--lime:#c1ff62;--red:#ff5e77;--green:#48db99;--mono:'DM Mono',monospace;--sans:'Space Grotesk',Arial,sans-serif}
*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--white);font-family:var(--sans)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible{outline:2px solid var(--lime);outline-offset:2px}.hidden{display:none!important}.muted{color:var(--mute)}
.global-header{height:65px;display:flex;align-items:center;gap:42px;border-bottom:1px solid var(--edge);padding:0 18px;background:#0b0d10}.logo{font-weight:700;font-size:23px;letter-spacing:-.07em;white-space:nowrap}.logo-icon{font-size:21px;margin-right:9px;color:var(--lime)}.slash{color:#647077;padding:0 2px}.topnav{height:100%;display:flex;align-items:stretch;gap:26px}.toplink{position:relative;border:0;color:#8a9298;background:none;font-size:13px;font-weight:600;padding:0;white-space:nowrap;display:flex;align-items:center}.toplink.selected,.toplink:hover{color:var(--white)}.toplink.selected:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--lime)}.header-right{margin-left:auto;display:flex;align-items:center;gap:19px}.network-badge{font:10px var(--mono);border:1px solid #3e5132;background:#1b271d;border-radius:3px;padding:9px 10px;white-space:nowrap}.network-badge i,.status-dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:var(--lime);margin-right:6px}.wallet-button{background:var(--white);color:#111;border:0;border-radius:3px;padding:11px 17px;font-size:11px;font-weight:700;white-space:nowrap}.wallet-button:hover{background:var(--lime)}.announcement{min-height:33px;padding:8px 18px;display:flex;align-items:center;gap:20px;justify-content:space-between;background:#20291a;color:#bbdbad;border-bottom:1px solid #35452c;font:10px/1.45 var(--mono)}.announcement>span:first-child{white-space:nowrap;color:var(--lime)}.announcement a{white-space:nowrap;text-decoration:underline}
.market-line{display:flex;height:76px;align-items:center;border-bottom:1px solid var(--edge);gap:0;overflow:hidden}.market-picker{height:100%;display:flex;align-items:center;gap:11px;padding:0 18px;width:260px;flex-shrink:0;border-right:1px solid var(--edge)}.coin{color:#101010;background:var(--lime);border-radius:50%;width:30px;height:30px;text-align:center;line-height:30px;font-size:17px}.market-picker b{font-size:17px}.market-picker small{color:var(--mute);display:block;font:9px var(--mono);margin-top:4px}.market-chevron{margin-left:auto;color:#6b767d}.market-stat{height:100%;min-width:100px;display:flex;justify-content:center;flex-direction:column;gap:8px;padding:0 12px;white-space:nowrap}.market-stat small{font:10px var(--mono);color:#7f8992}.market-stat b{font:15px var(--mono)}.market-stat.ledger b{font-size:11px;color:var(--lime)}
.terminal-grid{display:grid;grid-template-columns:minmax(350px,1fr) 265px 310px;grid-template-rows:minmax(470px,calc(100vh - 350px)) minmax(170px,auto);min-height:730px}.panel{background:var(--panel);min-width:0}.chart-panel,.book-panel{border-right:1px solid var(--edge);border-bottom:1px solid var(--edge)}.order-panel{border-bottom:1px solid var(--edge)}.tabbar{display:flex;align-items:center;gap:3px;height:47px;padding:0 12px;border-bottom:1px solid var(--edge)}.tab{background:none;color:#89939c;border:0;font-size:12px;padding:12px 13px;white-space:nowrap}.tab.active{background:#272d34;color:var(--white);border-radius:3px}.tab-right{margin-left:auto;color:#64717a;font:9px var(--mono);text-align:right}.chart-tools{display:flex;justify-content:space-between;align-items:center;height:39px;border-bottom:1px solid #24272d;padding:0 15px}.timeframes{display:flex;gap:12px}.timeframes button{background:transparent;border:0;color:#89939d;font:11px var(--mono);padding:5px}.timeframes button.active{color:var(--lime)}.chart-tool-label{font:11px var(--mono);color:#79838b}.chart-canvas{height:calc(100% - 122px);min-height:320px;position:relative;overflow:hidden;background:#0f1216}.chart-grid{position:absolute;inset:0;background-image:linear-gradient(to right,#ffffff08 1px,transparent 1px),linear-gradient(to bottom,#ffffff09 1px,transparent 1px);background-size:12.5% 20%}.chart-watermark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(48px,6vw,120px);letter-spacing:-.12em;font-weight:700;color:#ffffff05;white-space:nowrap}.chart-watermark span{color:#c1ff620a}.chart-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:1;width:min(440px,85%)}.crosshair{font-size:35px;color:var(--lime);margin-bottom:8px;display:block}.chart-empty .strong{font-size:15px;letter-spacing:.13em;font-weight:700}.chart-empty p{font:11px/1.7 var(--mono);color:#8b939c}.chart-empty .strong{font-family:var(--sans);color:#e2e7e9}.chip{font:9px var(--mono);border:1px solid #455043;color:var(--lime);padding:8px 10px;display:inline-block;margin-top:14px}.chart-yaxis{position:absolute;right:0;top:0;bottom:0;display:flex;flex-direction:column;justify-content:space-around;color:#43515b;font:10px var(--mono);padding:0 13px;border-left:1px solid #202730}.chart-bottom{height:36px;border-top:1px solid var(--edge);display:flex;align-items:center;justify-content:space-between;font:10px var(--mono);padding:0 14px;color:#7e888e}
.book-panel{display:flex;flex-direction:column}.book-meta,.book-bottom{display:flex;justify-content:space-between;gap:5px;padding:14px 12px;color:#8c969c;font:10px var(--mono);border-bottom:1px solid var(--edge)}.order-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;flex:1;text-align:center;padding:20px}.order-empty>span{color:#596a6d;font-size:29px}.order-empty strong{font:11px var(--mono);letter-spacing:.04em}.order-empty p{color:#818b92;font:10px/1.6 var(--mono)}.book-bottom{border-top:1px solid var(--edge);border-bottom:0;color:#89949c}.book-bottom b{color:#e7e9e2}
.order-panel{padding:14px 15px}.order-head{display:flex;gap:8px}.margin-chip{flex:1;background:#262c32;color:#e2e6e2;border:1px solid #333a42;border-radius:4px;padding:11px 8px;font-size:11px;font-weight:600}.margin-chip span{color:#9ea8b0;margin-left:5px}.order-tabs{display:flex;gap:17px;padding:22px 0 17px}.order-tabs button{color:#8b929a;background:transparent;border:0;font-size:12px;font-weight:600;padding:0}.order-tabs button.active{color:var(--white)}.order-info{display:flex;justify-content:space-between;font:11px var(--mono);margin-bottom:13px}.order-info span{color:#89939d}.side-selection{display:flex;gap:7px;margin:23px 0}.side-selection button{flex:1;background:#21272a;border:1px solid #383b40;color:#9ba5a8;border-radius:3px;padding:12px 4px;font:10px var(--mono)}.side-selection .buy.selected{border-color:#438a68;color:#65e4aa;background:#18352a}.side-selection .sell.selected{border-color:#934655;color:#ff7d91;background:#391a24}.input-label{font:10px var(--mono);display:flex;justify-content:space-between;color:#949aa1;margin-bottom:9px}.sizebox{background:#1d2329;border-radius:3px;padding:13px;display:flex;align-items:center;color:#b5bcbf}.sizebox input{background:none;border:0;outline:0;width:100%;color:var(--white);min-width:0}.sizebox span{font:11px var(--mono)}.fake-slider{display:flex;justify-content:space-between;align-items:center;position:relative;margin:24px 7px 22px}.fake-slider:before{content:'';height:2px;background:#343d44;position:absolute;left:0;right:0}.fake-slider i{position:relative;width:9px;height:9px;background:#36414b;border:2px solid #1a1f23;border-radius:50%}.order-toggles{display:flex;gap:17px;margin-bottom:21px}.order-toggles label{font-size:11px;color:#858f97}.order-toggles input{accent-color:var(--lime)}.trade-disabled{background:#dde3dc;color:#282d30;border:0;width:100%;padding:14px 5px;font-size:12px;font-weight:700;border-radius:3px;opacity:.72}.summary{border-top:1px solid var(--edge);margin-top:20px;padding-top:15px}.summary div,.account-metric{display:flex;justify-content:space-between;font:10px var(--mono);margin-bottom:14px}.summary span,.account-metric span{color:#8e979d}.summary b,.account-metric b{color:#dbe1dd}.order-warning{margin-top:24px;background:#2c2b1a;border:1px solid #494528;padding:13px;color:#c6ba80;font:10px/1.6 var(--mono)}
.portfolio-panel{grid-column:1/3;border-right:1px solid var(--edge)}.position-tabs{overflow-x:auto}.portfolio-body{min-height:166px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:18px}.portfolio-body>strong{font:12px var(--mono)}.portfolio-body p{font:10px/1.6 var(--mono);color:#7f8a94;margin:0}.empty-icon{color:#6e777d;font-size:22px}.balance-grid{width:100%;max-width:700px;text-align:left;display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;font:11px var(--mono)}.balance-grid>div{padding:9px 5px;border-bottom:1px solid var(--edge);overflow-wrap:anywhere}.balance-grid .balance-head{color:#82909a;font-size:10px}.account-panel{padding:15px}.account-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--edge);padding-bottom:15px;font-size:13px}.small-tag{font:10px var(--mono);border:1px solid #4b6442;padding:4px;color:var(--lime)}.account-address{font:10px var(--mono);color:#89959b;padding:13px 0 18px;word-break:break-all}.account-actions{display:flex;gap:8px;margin:15px 0}.account-actions button{flex:1;padding:11px;background:#2a3034;color:#b1b9bd;border:0;border-radius:3px;font-size:10px}.faucet-btn{width:100%;background:transparent;border:1px solid #475640;color:var(--lime);padding:13px 6px;font:10px var(--mono)}.faucet-btn:disabled{color:#68766a;border-color:#303d32}.account-note{color:#6e7a81;font:10px/1.6 var(--mono)}.terminal-footer{height:36px;border-top:1px solid var(--edge);padding:0 18px;display:flex;gap:24px;align-items:center;background:#101317;font:10px var(--mono);color:#7f8c91}.terminal-footer a:hover{text-decoration:underline}.footer-left{margin-right:auto}.alternate{min-height:calc(100vh - 220px);text-align:center;padding:14vh 20px;background:radial-gradient(ellipse at center,#1c2724,#0c0e11 60%)}.alternate-heading{font-size:clamp(50px,9vw,130px);font-weight:700;letter-spacing:-.09em}.alternate p{font:12px/1.6 var(--mono);color:#9da7ad}.alternate button{border:1px solid #48574b;background:none;color:var(--lime);padding:13px 20px;margin:22px;font:11px var(--mono)}.toast{position:fixed;right:18px;bottom:53px;max-width:340px;padding:15px;background:#242b31;border:1px solid #4a5761;color:#eaf1ef;font:11px/1.5 var(--mono);box-shadow:0 12px 40px #0008;z-index:9}
@media(max-width:1200px){.terminal-grid{grid-template-columns:minmax(360px,1fr) 230px 280px}.market-stat{min-width:85px}.hide-small{display:none}.tab-right{display:none}.topnav{gap:15px}.global-header{gap:22px}}@media(max-width:920px){.terminal-grid{grid-template-columns:minmax(300px,1fr) 260px;grid-template-rows:450px auto auto}.chart-panel{grid-column:1;grid-row:1}.book-panel{grid-column:2;grid-row:1}.order-panel{grid-column:2;grid-row:2/4}.portfolio-panel{grid-column:1;grid-row:2}.account-panel{grid-column:1;grid-row:3}.network-badge{display:none}.market-stat{min-width:85px}.chart-canvas{min-height:285px}.topnav{gap:13px}}@media(max-width:650px){.global-header{padding:0 10px;gap:16px;height:55px}.logo{font-size:17px}.logo-icon{font-size:18px;margin-right:5px}.topnav{gap:9px}.toplink{font-size:11px}.toplink.external{display:none}.wallet-button{font-size:9px;padding:10px 8px}.announcement{padding:9px 11px;font-size:9px;line-height:1.4}.announcement>span:nth-child(2){display:none}.market-picker{width:190px;padding:0 10px}.market-stat{min-width:90px}.market-line{height:72px}.terminal-grid{display:flex;flex-direction:column}.chart-panel{height:440px}.chart-canvas{height:calc(100% - 122px)}.book-panel{min-height:260px}.order-panel{min-height:490px}.portfolio-panel{min-height:220px}.account-panel{min-height:300px}.terminal-footer{height:auto;min-height:38px;flex-wrap:wrap;gap:12px;padding:12px;font-size:9px}.footer-left{width:100%}}
/* M2: selectable read-only reference markets and non-executable trading drafts */
.skip-terminal{position:absolute;top:-80px;left:12px;z-index:60;padding:11px 16px;background:var(--lime);color:#111;font:11px var(--mono)}.skip-terminal:focus{top:10px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.market-line{overflow:visible}.market-picker{position:relative;z-index:25;padding:0}.market-trigger{display:flex;align-items:center;gap:12px;width:100%;height:100%;padding:0 16px;text-align:left;border:0;background:none;color:var(--white)}.market-trigger:hover,.market-trigger[aria-expanded="true"]{background:#1c2327}.market-trigger:focus-visible{outline:2px solid var(--lime);outline-offset:-2px}
.market-current{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.market-current b{font-size:15px}.market-current small{font:9px var(--mono);color:var(--mute)}.market-trigger .market-chevron{margin-left:auto}.market-trigger .coin{flex:none}
.market-menu{position:absolute;top:calc(100% + 1px);left:5px;width:min(365px,calc(100vw - 15px));z-index:40;padding:14px;background:#171d22;border:1px solid #3c484c;box-shadow:0 18px 45px #000b;border-radius:4px}
.market-menu-title{display:flex;justify-content:space-between;gap:12px;font:11px var(--mono);margin:0 0 14px}.market-menu-title span{color:var(--lime);font-size:9px}.market-menu input{background:#0d1114;border:1px solid #46525a;border-radius:3px;color:white;padding:11px;width:100%;font:12px var(--mono)}.market-menu input:focus{outline:1px solid var(--lime)}
.market-filters{display:flex;gap:6px;padding:12px 0}.market-filters button{flex:1;background:#262c31;color:#acb7bc;border:1px solid #303a40;padding:8px 10px;font:10px var(--mono)}.market-filters button.selected{background:#34492a;color:var(--lime);border-color:#6a9051}
.market-results{max-height:300px;overflow-y:auto}.market-item{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:13px 6px;background:transparent;color:var(--white);border:0;border-bottom:1px solid #29323a;text-align:left}.market-item:hover,.market-item[aria-current="true"]{background:#28342a}.market-item strong{font:12px var(--mono)}.market-item small{display:block;color:#8a969e;margin-top:5px;font:10px var(--mono)}.market-item-tag{font:10px var(--mono);color:var(--lime);border:1px solid #485e3c;padding:5px 7px}.market-empty{padding:20px 10px;color:#a9b1b5;font:11px/1.6 var(--mono)}.market-menu-foot{color:#98a19f;font:9px/1.6 var(--mono);margin:13px 0 0}
.offline-accent{color:var(--red);font-size:9px}.order-head .margin-chip{cursor:default;font-size:10px}.draft-label{display:flex;justify-content:space-between;gap:8px;font:10px var(--mono);color:var(--lime);margin:21px 0 17px}.draft-label span{color:#78888b;font-size:9px;text-align:right}.limit-field{margin-top:15px}.draft-feedback{min-height:24px;margin:10px 0 16px;font:10px/1.6 var(--mono);color:#9aa8a6}.draft-feedback.invalid{color:var(--red)}.draft-helper{padding:9px 0 18px;border-bottom:1px solid var(--edge);font:9px var(--mono);color:#79858a}.trade-disabled{background:#3f4642;color:#a3aea8;opacity:1}.order-warning strong{color:#e7c87a}.order-toggles{margin-top:17px}
.alternate-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1000px;margin:35px auto;text-align:left}.alternate-cards article{padding:24px;background:#161c21;border:1px solid #2e3d3b}.alternate-cards span{color:var(--lime);font:10px var(--mono)}.alternate-cards h2{font-size:20px;letter-spacing:-.04em;margin:18px 0 9px}.alternate-cards p{color:#94a2a6;font:11px/1.6 var(--mono)}.alternate{padding-top:8vh}
@media(max-width:920px){.market-picker{width:260px}}
@media(max-width:650px){.market-picker{width:205px}.market-trigger{padding:0 9px;gap:8px}.market-current b{font-size:13px}.market-current small{font-size:8px}.market-stat{min-width:72px;padding:0 7px}.market-stat small{font-size:9px}.market-stat b{font-size:13px}.market-menu{left:3px;width:min(345px,calc(100vw - 12px))}.alternate-cards{grid-template-columns:1fr}.alternate{padding:45px 14px}.chart-tool-label{font-size:9px}}
@media(max-width:380px){.market-stat:nth-of-type(4){display:none}.timeframes{gap:6px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}

/* Mobile M2 trading workspace: avoid horizontal overflow in top bars. */
@media(max-width:650px){
.global-header{height:auto;min-height:55px;flex-wrap:wrap;gap:0;padding:8px 10px}
.header-right{order:2;margin-left:auto}
.topnav{order:3;display:flex;justify-content:space-evenly;height:38px;width:100%;margin-top:7px;border-top:1px solid var(--edge);gap:18px}
.toplink{font-size:11px}.toplink.external{display:none}
.market-line{justify-content:space-between}
.market-line .market-stat:not(.ledger){display:none}
.market-line .market-stat.ledger{margin-left:auto;min-width:130px}
.announcement{gap:10px}
}

/* M3 — wallet connection + testnet funding controls */
.wallet-status{font:10px/1.5 var(--mono);color:var(--lime);border:1px solid #3f5732;background:#1d291e;padding:9px 10px;margin:12px 0 2px;overflow-wrap:anywhere}
.wallet-status.warning{color:#e6c37a;border-color:#65583c;background:#2c2b20}.wallet-status.error{color:#f39e9e;border-color:#7e4b4b;background:#2e2327}
.wallet-toolbar{display:flex;gap:6px;margin:0 0 14px}.wallet-toolbar button{flex:1;min-width:0;background:#252e30;color:#c0dbd0;border:1px solid #3e4d47;padding:9px 4px;border-radius:2px;font:9px var(--mono)}
.wallet-toolbar button:disabled{opacity:.4;cursor:not-allowed}.wallet-explorer{display:block;margin:0 0 17px;color:#c1ff62;font:10px/1.5 var(--mono);text-decoration:underline;text-underline-offset:4px}
.faucet-confirm{padding:11px;margin:10px 0;background:#28281c;border:1px solid #71683c;color:#e4d5a0}.faucet-confirm p{font:10px/1.6 var(--mono);margin:0 0 12px}
.faucet-confirm>div{display:flex;gap:6px}.faucet-confirm button{flex:1;background:#49503a;color:#eef1e1;border:1px solid #707d53;border-radius:2px;padding:10px 4px;font:9px var(--mono)}
.faucet-confirm #cancelFaucet{background:transparent;border-color:#63665c}
.wallet-help{display:flex;flex-direction:column;gap:7px;margin-top:14px;font:10px var(--mono);color:#788b88}.wallet-help a{color:#c1ff62;text-decoration:underline;text-underline-offset:3px}
.balance-grid>div{overflow-wrap:anywhere}.balance-grid{max-width:900px}.portfolio-body .balance-head{color:#aab4ba}.wallet-balance-meta{font:10px var(--mono);color:#9ba4ac;margin-top:10px!important}.wallet-account-link{color:var(--lime);text-decoration:underline}

/* M4: browser Testnet diagnostics view */
.topnav [data-view="network"]{color:#bedca7}
.network-panel{width:min(1100px,100%);margin:24px auto 0;text-align:left;padding:0 12px}
.infra-caution{font:11px/1.6 var(--mono)!important;color:#e8b77a!important;border:1px solid #625039;background:#27231f;padding:15px;margin:0 0 17px!important}
.infra-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.infra-grid article{border:1px solid #39453e;background:#141a1b;padding:20px;min-width:0}
.infra-grid article>span{font:10px var(--mono);color:var(--lime)}
.infra-grid h2{font-size:22px;line-height:1.2;margin:16px 0;letter-spacing:-.04em}
.infra-grid p,.infra-foot{font:10px/1.7 var(--mono);color:#a4b0ad;margin:13px 0}
.infra-grid .infra-url{overflow-wrap:anywhere;color:#93b593}
.infra-property{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #39453e;padding:12px 0;font:10px var(--mono)}
.infra-property span{color:#829395}.infra-verdict{background:#1c291f;border:1px solid #49633c;padding:16px;margin:14px 0;font:11px var(--mono)}
.infra-verdict span{color:var(--lime);display:block;margin-bottom:9px}
.infra-verdict strong{font-size:15px;display:block}.infra-verdict p{color:#b0beae;font:10px/1.7 var(--mono)}
.infra-refresh{background:var(--lime);color:#111;font:11px var(--mono);border:0;padding:13px 17px}.infra-refresh:disabled{opacity:.5;cursor:wait}
.infra-contracts{margin:32px 0 24px}.infra-contracts h3{font-size:15px;letter-spacing:.03em}
.infra-contract-row{display:flex;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid #2a3431;font:11px var(--mono)}
.infra-contract-row b{color:#d0b784;font-weight:400;text-align:right}
@media(max-width:900px){.infra-grid{grid-template-columns:1fr}.infra-grid article{padding:15px}.network-panel{padding:0}}
@media(max-width:650px){.topnav{gap:6px!important}.topnav .toplink{font-size:10px}.infra-contract-row{font-size:10px}}

/* M5 - observed external Testnet activity, explicitly not HOXO market data */
.testnet-trade-activity{padding:12px;border-top:1px solid #34423d;margin-top:14px;max-height:240px;overflow-y:auto}
.observed-activity-top{display:flex;gap:7px;justify-content:space-between;align-items:center}
.observed-activity-top strong{font:10px var(--mono);color:#c1f5c0;font-weight:500}
.observed-activity-top span{font:9px var(--mono);color:#edbf8e}
#observedActivityState,.observed-activity-warning{font:9px/1.6 var(--mono);color:#91a79f}
.observed-activity-warning{color:#d4ac89;border-top:1px solid #3b3532;padding-top:8px}
.observed-activity-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #293934;font:10px var(--mono)}
.observed-activity-row strong{font-weight:400;color:#e0eae3}.observed-activity-row small{color:#86a9a2;font-size:9px}
#observedActivityRefresh{background:#26372d;border:1px solid #415e48;padding:7px 10px;color:#b9e4bb;font:9px var(--mono)}
#observedActivityRefresh:disabled{opacity:.5;cursor:wait}
