.trade-dialog{width:min(94vw,490px);max-height:92vh;max-height:92dvh;overflow:auto;padding:clamp(14px,4vw,26px);text-align:center;overscroll-behavior:contain}
.trade-dialog h3{margin:14px 0 4px;font-size:17px}
.trade-dialog button{min-height:44px;touch-action:manipulation}
.trade-dialog>button{margin:4px}
.trade-dial,.trade-chat{display:flex;align-items:center;gap:6px}
.trade-dial button{min-width:44px;font-size:25px;line-height:1}
.trade-face{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;border-radius:12px;background:#eff2e4;padding:4px;color:#42583e}
.trade-dial .trade-face{touch-action:none;user-select:none}
.trade-face strong,.trade-log p{overflow-wrap:anywhere}
.trade-log{max-height:8em;overflow:auto;text-align:left}
.trade-log p{margin:3px 0;color:#465849}
.trade-chat input{margin:0;min-width:0;font-size:16px}
.trade-error{color:#964736}.trade-error:empty{display:none}
.trade-status{margin:10px 0 2px}
.trade-dial{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:3px 6px}
.trade-dial .trade-face{grid-row:span 2;align-self:stretch;display:grid;grid-template-columns:82px minmax(0,1fr);align-content:center;text-align:left;column-gap:9px;row-gap:0;padding:7px 11px;background:linear-gradient(#b4bea1,#eef2e2 20%,#fafbee 50%,#e5ebd9 78%,#b4bea1);border:1px solid #a9b499}
.trade-dial canvas{grid-row:span 2;align-self:center}
.trade-dial .dial-position{grid-column:1 / -1;color:#53654a}
