.quote-modal[hidden]{display:none}.quote-modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.72);backdrop-filter:blur(10px);overflow:hidden}
.quote-modal-card{width:min(520px,100%);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:24px;border:1px solid #4b3035;border-radius:20px;background:linear-gradient(180deg,#15151a,#09090c);box-shadow:0 30px 90px rgba(0,0,0,.6),0 0 50px rgba(239,31,47,.1)}
.quote-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.quote-modal-head h2{margin:7px 0 0;font-size:1.6rem}.quote-close{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#1b1b21;color:#fff;font-size:1.35rem;cursor:pointer}
.quote-flow{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:22px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#08080a}.quote-flow div:last-child{text-align:right}.quote-flow span,.quote-details span{display:block;color:var(--muted);font-size:.72rem}.quote-flow strong{display:block;margin-top:7px;overflow-wrap:anywhere}.quote-arrow{color:var(--red2)!important;font-size:1.25rem!important}
.quote-details{display:grid;gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden}.quote-details div{display:flex;justify-content:space-between;gap:20px;padding:12px 14px;background:#101014}.quote-details div+div{border-top:1px solid var(--line)}.quote-details strong{text-align:right;font-size:.82rem;overflow-wrap:anywhere}
.quote-note{margin:16px 0;color:var(--muted);font-size:.78rem;line-height:1.55}.quote-actions{display:grid;grid-template-columns:1fr 1.5fr;gap:10px}
.toast-region{position:fixed;z-index:400;right:20px;bottom:20px;display:grid;gap:10px;width:min(390px,calc(100% - 40px));pointer-events:none}.swap-toast{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:15px;border:1px solid var(--line);border-radius:14px;background:rgba(15,15,19,.97);box-shadow:0 18px 50px rgba(0,0,0,.45);animation:toast-in .22s ease both;pointer-events:auto}.swap-toast.success{border-color:rgba(85,223,131,.45)}.swap-toast.error{border-color:rgba(255,69,83,.55)}.swap-toast.info{border-color:rgba(233,198,91,.4)}.toast-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#24242b;color:var(--yellow);font-weight:950}.success .toast-icon{color:var(--green);background:rgba(85,223,131,.1)}.error .toast-icon{color:var(--red2);background:rgba(255,69,83,.1)}.toast-copy strong{display:block;font-size:.88rem}.toast-copy p{margin:5px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45;overflow-wrap:anywhere}.toast-dismiss{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1}
@keyframes toast-in{from{opacity:0;transform:translateY(8px)}}
body:has(.quote-modal:not([hidden])){overflow:hidden}
@media(max-width:700px){.quote-modal{place-items:end center;padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));backdrop-filter:blur(6px)}.quote-modal-card{width:100%;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);padding:14px;border-radius:16px 16px 10px 10px;scrollbar-width:thin}.quote-modal-head{position:sticky;z-index:3;top:-14px;margin:-14px 0 0;padding:14px 0 10px;background:linear-gradient(180deg,#15151a 78%,rgba(21,21,26,.94))}.quote-modal-head h2{margin-top:4px;font-size:1.25rem}.quote-close{flex:0 0 34px;width:34px;height:34px}.quote-flow{grid-template-columns:1fr;margin:12px 0;padding:12px}.quote-flow div:last-child{text-align:left}.quote-arrow{transform:rotate(90deg);width:max-content}.quote-details div{gap:12px;padding:9px 10px}.quote-details strong{font-size:.75rem}.quote-note{margin:10px 0;font-size:.72rem;line-height:1.4}.quote-actions{position:sticky;z-index:3;bottom:-14px;grid-template-columns:1fr 1.35fr;gap:8px;margin:6px 0 -14px;padding:10px 0 calc(14px + env(safe-area-inset-bottom));background:linear-gradient(0deg,#09090c 78%,rgba(9,9,12,.94))}.quote-actions .btn{min-width:0;min-height:42px;padding:0 10px;font-size:.74rem}.toast-region{right:12px;bottom:82px;width:calc(100% - 24px)}}
@media(max-width:360px){.quote-modal{padding-inline:4px}.quote-modal-card{padding-inline:10px}.quote-modal-head{top:-14px}.quote-actions{grid-template-columns:.8fr 1.2fr}.quote-actions .btn{font-size:.68rem}}
@media(prefers-reduced-motion:reduce){.swap-toast{animation:none}}
