:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#182235;background:#f3f7f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{min-height:100vh;background:radial-gradient(circle at 50% 0,rgba(21,193,118,.07),transparent 420px),#f4f7f8}.topbar{height:72px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:#fffffff0;border-bottom:1px solid #e5ece8;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:22px;background:linear-gradient(145deg,#16c57a,#08a962);box-shadow:0 8px 20px #16c57a38}.brand strong,.brand small{display:block}.brand small{margin-top:2px;color:#98a1ad;font-size:11px}.wallet-button{border:1px solid #dce4e0;background:#fff;border-radius:22px;padding:10px 18px;color:#354052}.wallet-button.connected{color:#07965a;border-color:#aee7ce;background:#effbf6}.wallet-picker-mask{z-index:40}.wallet-picker{width:min(420px,100%)}.wallet-list{display:grid;gap:9px;margin-top:20px}.wallet-list button{width:100%;min-height:60px;padding:10px 14px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;border:1px solid #e2e9e5;border-radius:13px;color:#26352e;background:#f9fbfa;text-align:left}.wallet-list button:hover{border-color:#9edfc3;background:#effbf6}.wallet-list img,.wallet-list i{width:38px;height:38px;border-radius:11px}.wallet-list img{object-fit:contain}.wallet-list i{display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#16c57a,#08a962);font-style:normal;font-weight:800}.wallet-list strong{font-size:14px}.wallet-list b{color:#9aa49f;font-size:21px}main{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:32px 0 72px}.notice{padding:13px 16px;margin-bottom:18px;border-radius:12px;color:#9b6500;background:#fff7e3;border:1px solid #f0ddb3;font-size:14px}.market-hero{padding:24px 26px 26px;border:1px solid #e4ece8;border-radius:20px;background:#ffffffe6;box-shadow:0 12px 36px #234a370f}.market-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:20px;border-bottom:1px solid #edf1ef}.pair-switch{display:inline-grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:12px;background:#edf2ef}.pair-switch button{min-width:132px;padding:10px 16px;border:0;border-radius:9px;color:#68756f;background:transparent;transition:.18s ease}.pair-switch button.active{color:#078650;font-weight:650;background:#fff;box-shadow:0 3px 10px #143c2a1a}.chain-badge{display:inline-flex;align-items:center;gap:7px;color:#75817c;font-size:13px}.chain-badge i{width:7px;height:7px;border-radius:50%;background:#10bd71;box-shadow:0 0 0 4px #10bd711f}.market-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;padding-top:23px}.eyebrow{margin:0 0 6px;color:#08a963!important;font-size:13px;font-weight:750;letter-spacing:.1em}.market-head h1{margin:0;font-size:32px;letter-spacing:-.025em}.market-head p{margin:9px 0 0;color:#7d8794}.primary{border:0;border-radius:12px;padding:12px 22px;color:#fff;background:linear-gradient(135deg,#12c678,#08ac64);box-shadow:0 9px 22px #10bd7130}.create-button{min-width:178px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:13px 19px;text-align:left}.create-button span{font-weight:700}.create-button small{color:#ffffffbf;font-size:11px}.tabs{margin-top:24px;display:flex;gap:30px;border-bottom:1px solid #dfe7e3}.tabs button{padding:14px 2px 12px;border:0;border-bottom:3px solid transparent;background:none;color:#697681;font-size:15px;white-space:nowrap}.tabs button.active{color:#08a963;border-color:#0bb46b;font-weight:650}.market-filter{margin:17px 0 10px;display:flex;gap:8px}.market-filter button{border:1px solid #dfe7e3;border-radius:10px;padding:9px 14px;background:#fff;color:#5d6963}.market-filter button.active{color:#07965a;border-color:#9fe1c1;background:#effbf6}.market-filter .refresh{margin-left:auto}.order-table{overflow:hidden;border:1px solid #e3eae6;border-radius:14px;background:#fff}.order-row{min-width:780px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr .6fr;align-items:center;gap:12px;padding:17px 20px;border-top:1px solid #eff2f0;font-size:14px}.order-header{border-top:0;color:#929ba6;background:#fafcfb}.address{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.text-action,.danger-link{border:0;background:none;color:#0aa864;font-weight:650}.danger-link{color:#e45d5d;padding:0}.empty{padding:48px 20px;text-align:center;color:#a1a9a5;background:#fff}.cards-list{display:grid;gap:12px;margin-top:18px}.record-card{border:1px solid #e3eae6;border-radius:14px;background:#fff;padding:18px}.record-card>div{display:flex;justify-content:space-between}.record-card p{color:#596474}.record-card em{font-style:normal;color:#0bb46b}.record-card small{color:#9aa2ac}.status-3{color:#929aa5!important}.order-record{padding:19px}.record-head{align-items:center;gap:14px}.record-head>strong{display:flex;align-items:center;gap:9px;font-size:16px}.record-head>strong span{color:#87928d;font-size:12px;font-weight:600}.status-pill{padding:5px 10px;border-radius:999px;color:#078a52!important;background:#eaf9f2;font-size:12px;font-weight:650}.status-pill.status-2{color:#536f91!important;background:#eef4fa}.status-pill.status-3{color:#8a938f!important;background:#f0f2f1}.record-card>.order-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px;padding:15px;border-radius:12px;background:#f7f9f8}.order-summary div{min-width:0}.order-summary span,.order-summary strong{display:block}.order-summary span{color:#929d97;font-size:11px}.order-summary strong{overflow:hidden;margin-top:5px;color:#35413b;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.cancel-button{width:100%;margin-top:14px;padding:10px 14px;border:1px solid #f0c8c8;border-radius:10px;color:#d94f4f;background:snow;font-weight:650;transition:.18s ease}.cancel-button:hover{border-color:#e9a8a8;background:#fff4f4}.modal-mask{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:#131d288c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{width:min(480px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:24px;border-radius:20px;background:#fff;box-shadow:0 25px 70px #00000038}.modal-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.modal-title h2{margin:0;font-size:25px}.modal-title p{margin:5px 0 0;color:#929c97;font-size:12px}.modal-title>button{width:34px;height:34px;padding:0;border:0;border-radius:50%;background:#f3f6f4;font-size:24px;line-height:1;color:#7d8983}.side-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0 4px;padding:4px;border-radius:12px;background:#f1f5f3}.side-switch button{padding:10px;border:0;border-radius:9px;color:#68736e;background:transparent}.side-switch button.active{color:#078650;background:#fff;box-shadow:0 3px 9px #143c2a17;font-weight:650}.modal label{display:block;margin-top:14px;color:#687380;font-size:13px}.input-label{display:flex;align-items:center;justify-content:space-between;gap:12px}.input-label small{color:#8d9892;font-size:11px;font-weight:400}.modal input{width:100%;margin-top:7px;padding:12px 13px;border:1px solid #dce3e0;border-radius:10px;outline:0;color:#182235;background:#fff}.modal input:focus{border-color:#12bd72;box-shadow:0 0 0 3px #12bd721a}.modal input:disabled{background:#f5f7f6}.quote-box{margin-top:17px;padding:14px 15px;border-radius:12px;background:#f3f7f5}.quote-box span,.quote-box strong,.quote-box small{display:block}.quote-box span{color:#6e7974;font-size:13px}.quote-box strong{margin-top:4px;font-size:21px}.quote-box small{margin-top:5px;color:#8e9793;font-size:12px}.order-flow{display:grid;grid-template-columns:1fr 24px 1fr;align-items:center;margin-top:17px;padding:13px;border:1px solid #e8eeeb;border-radius:12px}.order-flow.single{display:block}.flow-step{display:flex;align-items:center;gap:9px;color:#a0aaa5}.flow-step b{width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;border-radius:50%;color:#85908b;background:#edf1ef;font-size:12px}.flow-step span,.flow-step strong,.flow-step small{display:block}.flow-step strong{color:#707b76;font-size:12px}.flow-step small{margin-top:2px;font-size:9px;white-space:nowrap}.flow-step.active b{color:#fff;background:#0fba6e;box-shadow:0 0 0 4px #0fba6e1c}.flow-step.active strong,.flow-step.done strong{color:#087f4c}.flow-step.done b{color:#07965a;background:#e4f8ee}.flow-line{height:1px;background:#dce5e0}.primary.full{width:100%;min-height:48px;margin-top:16px;border-radius:11px;font-weight:700}.modal-hint{margin:10px 2px 0;color:#909995;font-size:11px;line-height:1.55;text-align:center}.confirm-modal{width:min(400px,100%);overflow:visible;text-align:center}.confirm-icon{width:46px;height:46px;display:grid;place-items:center;margin:0 auto 14px;border-radius:50%;color:#dc5555;background:#fff0f0;font-size:22px;font-weight:800}.confirm-modal h2{margin:0;font-size:22px}.confirm-copy{margin:9px auto 0;max-width:330px;color:#7f8984;font-size:13px;line-height:1.65}.cancel-order-summary{margin-top:17px;padding:14px;border:1px solid #e7ece9;border-radius:12px;background:#f7f9f8;text-align:left}.cancel-order-summary span,.cancel-order-summary strong,.cancel-order-summary small{display:block}.cancel-order-summary span{color:#78837e;font-size:12px}.cancel-order-summary strong{margin-top:6px;font-size:18px}.cancel-order-summary small{margin-top:3px;color:#919b96;font-size:11px}.confirm-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:9px;margin-top:18px}.secondary-button,.danger-button{min-height:44px;padding:10px 14px;border-radius:10px;font-weight:650}.secondary-button{border:1px solid #dfe6e2;color:#65706a;background:#fff}.danger-button{border:0;color:#fff;background:#df5656;box-shadow:0 7px 18px #df565633}.toast{position:fixed;z-index:50;left:50%;bottom:35px;transform:translate(-50%);max-width:min(90vw,520px);padding:12px 18px;border-radius:10px;color:#fff;background:#1a232deb;box-shadow:0 10px 30px #0003}@media(max-width:760px){.topbar{height:66px;padding:0 16px}.brand{gap:9px}.brand-mark{width:40px;height:40px;border-radius:12px;font-size:20px}.brand small{display:none}.brand strong{font-size:17px}.wallet-button{max-width:148px;overflow:hidden;padding:8px 12px;text-overflow:ellipsis;white-space:nowrap}main{width:100%;padding:16px 14px 52px}.market-hero{padding:14px;border-radius:16px}.market-toolbar{padding-bottom:14px}.pair-switch{width:100%}.pair-switch button{min-width:0;padding:10px 8px}.chain-badge{display:none}.market-head{align-items:stretch;flex-direction:column;gap:16px;padding-top:16px}.market-head h1{font-size:27px}.market-head p{font-size:13px;line-height:1.55}.create-button{width:100%;min-width:0;flex-direction:row;align-items:center;justify-content:space-between;padding:12px 16px}.tabs{justify-content:space-between;gap:0;margin-top:18px;overflow:auto}.tabs button{padding:13px 2px 11px;font-size:14px}.market-filter{margin-top:14px}.market-filter button{padding:8px 11px;font-size:13px}.order-header{display:none}.order-row:not(.order-header){min-width:0;grid-template-columns:1fr 1fr;padding:15px;gap:14px}.order-row:not(.order-header) span{display:flex;flex-direction:column;gap:4px}.order-row:not(.order-header) span:before{color:#99a2ad;font-size:10px}.order-row:not(.order-header) span:nth-child(1):before{content:"挂单钱包"}.order-row:not(.order-header) span:nth-child(2):before{content:"数量"}.order-row:not(.order-header) span:nth-child(3):before{content:"单价"}.order-row:not(.order-header) span:nth-child(4):before{content:"总价"}.order-row:not(.order-header) .text-action{grid-column:1/-1;padding:10px;border-radius:9px;background:#effbf6}.cards-list{margin-top:14px}.order-record{padding:16px}.record-card>.order-summary{grid-template-columns:1fr 1fr;gap:14px 10px;margin-top:14px;padding:13px}.order-summary strong{font-size:12px}.cancel-button{margin-top:12px}.modal-mask{align-items:end;padding:0}.modal{width:100%;max-height:92vh;padding:20px 18px calc(20px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.modal-title h2{font-size:23px}.confirm-modal{padding-top:24px}}
