.utility-tools-group{animation:marketCardIn .48s cubic-bezier(.2,.8,.2,1) both}
.utility-card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:stretch}
.utility-card-grid>.card{height:100%}
.market-tool-card{position:relative;isolation:isolate;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;min-height:116px;width:100%;padding:18px;text-align:right;overflow:hidden;border:1px solid rgba(227,181,66,.34);background:linear-gradient(135deg,rgba(47,41,25,.96),rgba(26,42,42,.98) 58%,rgba(22,37,41,.98));box-shadow:0 16px 42px rgba(8,17,19,.22),inset 0 1px rgba(255,245,207,.08);color:var(--paper);cursor:pointer}
.market-tool-card::before{content:"";position:absolute;z-index:-1;inset:-80% -20% auto auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(237,193,83,.19),transparent 68%);transition:transform .4s ease}
.market-tool-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(105deg,transparent 26%,rgba(255,255,255,.055) 43%,transparent 60%);transform:translateX(110%);transition:transform .55s ease}
.market-tool-card:hover::before{transform:scale(1.12)}
.market-tool-card:hover::after{transform:translateX(-110%)}
.market-tool-card:active{transform:scale(.985)}
.market-tool-orbit{position:relative;display:grid;width:50px;height:50px;flex:0 0 50px;place-items:center;border-radius:50%;background:linear-gradient(145deg,#ffe793,#bb7611);color:#4b3000;font-size:11px;font-weight:950;box-shadow:0 8px 22px rgba(207,139,27,.28),inset 0 1px 1px rgba(255,255,255,.8)}
.market-tool-orbit::before,.market-tool-orbit i{content:"";position:absolute;inset:-4px;border:1px solid rgba(238,191,70,.28);border-radius:50%}
.market-tool-orbit i{inset:-7px;border-style:dashed;animation:marketOrbit 12s linear infinite}
.market-tool-kicker{display:block;margin-bottom:2px;color:#e8c86d;font-size:10px;font-weight:900;letter-spacing:.2px}
.market-tool-card .title{font-size:17px!important}
.market-tool-card .desc{color:rgba(246,239,221,.66)!important}
.market-tool-preview{display:inline-flex;margin-top:7px;color:#ffe59a;font-size:12px;font-weight:850;font-variant-numeric:tabular-nums}
.market-tool-arrow{display:grid;width:31px;height:31px;place-items:center;border:1px solid rgba(255,227,145,.22);border-radius:50%;color:#f7d87b;transition:transform .2s ease,background .2s ease}
.market-tool-card:hover .market-tool-arrow{transform:translateX(-3px);background:rgba(245,201,83,.1)}
.market-overlay{position:fixed;z-index:120;inset:0;display:flex;align-items:flex-end;justify-content:center;visibility:hidden;background:rgba(3,11,13,.66);opacity:0;backdrop-filter:blur(7px);transition:opacity .22s ease,visibility .22s ease}
.market-overlay.show{visibility:visible;opacity:1}
.market-sheet{display:flex;flex-direction:column;width:100%;max-height:88%;overflow:hidden;padding-bottom:calc(var(--safe-b) + 10px);border:1px solid rgba(229,191,89,.23);border-bottom:0;border-radius:27px 27px 0 0;background:linear-gradient(180deg,#17282a,#102023 55%,#0e1c1f);box-shadow:0 -24px 70px rgba(0,0,0,.34);transform:translateY(104%);transition:transform .32s cubic-bezier(.2,.8,.2,1)}
.market-overlay.show .market-sheet{transform:translateY(0)}
.market-sheet-grip{width:38px;height:4px;flex:0 0 auto;margin:10px auto 4px;border-radius:99px;background:rgba(245,225,169,.25)}
.market-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:10px 18px 14px;border-bottom:1px solid rgba(246,239,221,.08)}
.market-sheet-title{display:flex;align-items:center;gap:11px}
.market-sheet-title div{display:grid;gap:1px}
.market-sheet-title small{color:#d9b857;font-size:10px;font-weight:850}
.market-sheet-title h2{margin:0;color:var(--paper);font-size:19px}
.market-sheet-mark{display:grid;width:43px;height:43px;place-items:center;border-radius:14px;background:linear-gradient(145deg,#ffe69a,#bf7812);color:#4c3100;font-size:11px;font-weight:950;box-shadow:0 8px 24px rgba(199,131,23,.2)}
.market-close{display:grid;width:38px;height:38px;padding:0;place-items:center;border:1px solid rgba(246,239,221,.12);border-radius:50%;background:rgba(255,255,255,.04);color:var(--paper);font-size:25px;font-weight:300}
.market-source-notice{display:flex;align-items:flex-start;gap:10px;margin:12px 16px 0;padding:11px 12px;border:1px solid rgba(232,190,75,.28);border-radius:14px;background:rgba(232,190,75,.09);color:rgba(246,239,221,.72)}
.market-source-notice-icon{display:grid;width:22px;height:22px;flex:0 0 22px;place-items:center;border-radius:50%;background:#e8be4b;color:#263234;font-family:serif;font-size:14px;font-weight:900}
.market-source-notice p{margin:0;font-size:10.5px;font-weight:650;line-height:1.9}
.market-source-notice b{display:block;color:#f8e4ae;font-size:11px;font-weight:900}
.market-source-notice a{color:#ffe187;text-decoration:underline;text-decoration-color:rgba(255,225,135,.48);text-underline-offset:3px}
.market-source-notice a:focus-visible{outline:2px solid #ffe187;outline-offset:3px;border-radius:3px}
.market-sheet-content{min-height:270px;overflow:auto;padding:14px 16px 6px;scrollbar-width:none}
.market-updated{display:flex;align-items:center;gap:7px;margin-bottom:12px;color:rgba(246,239,221,.64);font-size:11px;font-weight:700}
.market-updated i{width:7px;height:7px;border-radius:50%;background:#63c69f;box-shadow:0 0 0 4px rgba(99,198,159,.09)}
.market-controls{display:grid;gap:10px;margin-bottom:12px}
.market-controls[hidden],.market-empty[hidden]{display:none}
.market-tabs{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.market-tabs::-webkit-scrollbar{display:none}
.market-tabs button{display:flex;min-height:39px;align-items:center;justify-content:center;gap:5px;padding:7px 10px;border:1px solid rgba(246,239,221,.1);border-radius:12px;background:rgba(255,255,255,.035);color:rgba(246,239,221,.64);font:inherit;font-size:11px;font-weight:850;white-space:nowrap;transition:background .18s ease,border-color .18s ease,color .18s ease}
.market-tabs button span{display:grid;min-width:20px;height:20px;place-items:center;padding:0 4px;border-radius:99px;background:rgba(255,255,255,.06);font-size:9px;font-variant-numeric:tabular-nums}
.market-tabs button[aria-selected="true"]{border-color:rgba(232,190,75,.34);background:rgba(232,190,75,.12);color:#f8dda0}
.market-tabs button:disabled{cursor:not-allowed;opacity:.38}
.market-search{display:flex;height:42px;align-items:center;gap:8px;padding:0 12px;border:1px solid rgba(246,239,221,.09);border-radius:13px;background:rgba(2,11,13,.2);color:rgba(246,239,221,.38)}
.market-search:focus-within{border-color:rgba(232,190,75,.32);box-shadow:0 0 0 3px rgba(232,190,75,.06)}
.market-search input{width:100%;border:0;outline:0;background:transparent;color:var(--paper);font:inherit;font-size:12px;font-weight:700}
.market-search input::placeholder{color:rgba(246,239,221,.34)}
.market-search input::-webkit-search-cancel-button{filter:invert(1);opacity:.45}
.market-empty{margin:26px 0;color:rgba(246,239,221,.5);font-size:12px;text-align:center}
.market-price-list{display:grid;gap:9px}
.market-price-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 14px;padding:14px;border:1px solid rgba(246,239,221,.08);border-radius:18px;background:rgba(255,255,255,.035);animation:marketItemIn .32s ease both}
.market-price-main{display:grid;min-width:0;gap:2px}
.market-price-main b{overflow:hidden;color:var(--paper);font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.market-price-main small{color:rgba(246,239,221,.42);font-size:9px;direction:ltr;text-align:right}
.market-price-value{display:flex;align-items:baseline;justify-content:flex-end;gap:5px;direction:rtl;color:#f7dda0;font-variant-numeric:tabular-nums}
.market-price-value strong{font-size:16px;font-weight:950}
.market-price-value span{font-size:10px;font-weight:750;color:rgba(246,239,221,.55)}
.market-price-change{grid-column:2;justify-self:end;padding:3px 7px;border-radius:99px;font-size:10px;font-weight:900;direction:ltr}
.market-price-change.is-up{background:rgba(70,190,139,.1);color:#76d8ae}
.market-price-change.is-down{background:rgba(238,101,91,.1);color:#ff9189}
.market-price-change.is-flat{background:rgba(255,255,255,.05);color:rgba(246,239,221,.48)}
.market-loading{display:grid;gap:11px;text-align:center;color:rgba(246,239,221,.54);font-size:11px}
.market-loading[hidden],.market-error[hidden],.market-price-list[hidden],.market-updated[hidden]{display:none}
.market-skeleton,.market-skeleton-grid i{position:relative;overflow:hidden;border-radius:18px;background:rgba(255,255,255,.055)}
.market-skeleton::after,.market-skeleton-grid i::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(255,231,163,.1) 48%,transparent 76%);transform:translateX(100%);animation:marketShimmer 1.2s infinite}
.market-skeleton-hero{height:82px}
.market-skeleton-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.market-skeleton-grid i{height:68px}
.market-error{padding:30px 18px;text-align:center;color:rgba(246,239,221,.66)}
.market-error>span{display:grid;width:48px;height:48px;margin:0 auto 12px;place-items:center;border-radius:50%;background:rgba(238,101,91,.1);color:#ff9189;font-size:23px;font-weight:900}
.market-error b{display:block;color:var(--paper)}
.market-error p{margin:5px auto 16px;font-size:12px}
.market-error button{border:1px solid rgba(230,188,77,.28);background:rgba(230,188,77,.09);color:#f5d67c}
@keyframes marketCardIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes marketItemIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes marketOrbit{to{transform:rotate(360deg)}}
@keyframes marketShimmer{to{transform:translateX(-100%)}}
@media (min-width:760px){.utility-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.market-sheet{width:min(620px,calc(100% - 48px));max-height:82%;margin:auto;border:1px solid rgba(229,191,89,.23);border-radius:28px;transform:translateY(24px) scale(.98)}.market-overlay.show .market-sheet{transform:none}.market-sheet-grip{display:none}.market-sheet-head{padding:20px 22px 16px}.market-source-notice{margin-inline:22px}.market-sheet-content{padding:18px 22px 8px}.market-price-list{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.utility-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.market-tool-orbit i,.market-skeleton::after,.market-skeleton-grid i::after{animation:none}.utility-tools-group,.market-price-item{animation:none}.market-overlay,.market-sheet,.market-tool-card,.market-tool-card::after{transition:none}}
