/* Supplied trail art is paired with live ownership and equip controls. */
.trails-market{scroll-margin-top:10px}
.trail-gallery{padding:5px;border:2px solid #48e5ff;border-radius:16px;background:linear-gradient(140deg,#124b97d9,#123c85de 45%,#0c2c6de8);box-shadow:0 0 0 2px #14459d,0 0 0 4px #061f50,inset 0 0 0 2px #2786ea,inset 0 0 20px #036fff44,0 4px 9px #07132999}
#shop-view .trail-shop-grid{margin:0;gap:8px;align-items:stretch}
#shop-view .trail-shop-item{display:flex;flex-direction:column;align-items:stretch;padding:8px 7px 8px;min-width:0;border:1.5px solid #3edbff;border-radius:12px;background:linear-gradient(145deg,#1e64ad,#0c3978 40%,#0c2c60);box-shadow:inset 0 1px #b0f0ff88,inset 0 0 0 2px #2878c1,0 3px #03204c;text-align:center;overflow:hidden}
#shop-view .trail-preview{height:auto;aspect-ratio:400/184;border-radius:8px;background:#082549;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #02153499}
#shop-view .trail-preview:after{display:none}
.trail-preview>img{display:block;width:100%;height:100%;object-fit:cover}
#shop-view .trail-shop-item h3{font:400 clamp(15px,4.3cqw,21px)/1.05 'Lilita One',sans-serif;color:#fff1c1;text-shadow:0 2px #0a2344;letter-spacing:.1px;margin:10px 0 12px}
#shop-view .trail-shop-item .trail-action{display:flex;align-items:center;justify-content:center;gap:5px;min-height:39px;width:100%;margin-top:auto;padding:7px 3px 9px;border:2px solid #fff2a0;border-radius:9px;background:linear-gradient(#fff289,#ffdb38 45%,#ffbd18);box-shadow:inset 0 2px #fffbc4,inset 0 -3px #e6940d,0 3px #6e3d0b;color:#593508;font:400 clamp(14px,4cqw,20px)/1 'Lilita One',sans-serif;letter-spacing:.1px;text-shadow:0 1px #fff5aa;white-space:nowrap;opacity:1;transition:filter .15s,transform .1s}
#shop-view .trail-action:hover:not(:disabled){filter:brightness(1.12)}
#shop-view .trail-action:active:not(:disabled){transform:translateY(2px)}
#shop-view .trail-action:disabled{cursor:default;filter:none}
#shop-view .trail-action svg{width:20px;height:20px;flex-shrink:0;stroke-width:2.5}
#shop-view .trail-action.is-equipped,#shop-view .trail-action.is-locked{background:linear-gradient(#3c72b1,#1b4a87 60%,#163e75);color:#afd5ff;border-color:#86c7ff;box-shadow:inset 0 1px #b0dcff99,inset 0 -3px #0e2c59,0 3px #031a3a;text-shadow:0 2px #15335e;font-size:clamp(12px,3.5cqw,18px)}
#shop-view .trail-action.is-locked{font-size:clamp(9px,2.5cqw,13px);background:linear-gradient(#214a76,#102d53);color:#95bbeb}
#shop-view .trail-action:disabled:not(.is-equipped):not(.is-locked){filter:saturate(.5) brightness(.7)}
#shop-view .trails-market>.shop-section-note{font-size:clamp(9px,2.6cqw,12px);font-weight:700;color:#b0ddff;text-shadow:0 1px #071a38;margin:20px 0 4px}
@media(max-width:350px){#shop-view .trail-shop-item{padding:6px}#shop-view .trail-shop-item h3{font-size:14px;margin-block:9px}#shop-view .trail-shop-item .trail-action{min-height:36px}.trail-gallery{padding:4px}#shop-view .trail-shop-grid{gap:7px}}
/* Today's deals and Profile style (style-shop.js): the same cards as the trails, with a ring, a coloured name or a
   title in the picture box. */
.deals-market{margin:4px 0 18px;scroll-margin-top:10px}
.deals-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 4px 10px}
.deals-heading h2{font:400 clamp(25px,7.4cqw,36px)/1 'Lilita One',sans-serif;color:#ffe066;-webkit-text-stroke:2px #071630;paint-order:stroke fill;text-shadow:0 3px #b4520f,0 5px #08162c;margin:0;white-space:nowrap}
.deals-timer{flex-shrink:0;padding:5px 9px;border-radius:9px;background:#0a1d44e6;border:1.5px solid #6fb8ff88;color:#e4f2ff;font:400 clamp(11px,3.2cqw,14px)/1 'Lilita One',sans-serif;letter-spacing:.3px;white-space:nowrap}
.deals-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px;border:2px solid #ffcf43;border-radius:16px;background:linear-gradient(140deg,#124b97d9,#0c2c6de8);box-shadow:0 0 0 2px #7a4a0c,0 0 0 4px #061f50,inset 0 0 18px #ffb20033,0 4px 9px #07132999}
#shop-view .deals-grid .trail-shop-item{position:relative;padding:6px 5px 6px;overflow:visible}
#shop-view .deals-grid .trail-shop-item h3{font-size:clamp(12px,3.5cqw,17px);margin:7px 0 8px}
#shop-view .deals-grid .trail-action{flex-wrap:wrap;gap:1px 4px;min-height:44px;padding:5px 2px 7px;font-size:clamp(13px,3.7cqw,18px);line-height:1}
#shop-view .deals-grid .trail-action svg{width:16px;height:16px}
#shop-view .trail-action s{flex-basis:100%;font:800 clamp(9px,2.6cqw,12px)/1 'DM Sans',sans-serif;color:#8a5a12;text-shadow:none;text-decoration-thickness:1.5px}
#shop-view .look-grid .trail-action s,#shop-view .trails-market .trail-action s{flex-basis:auto;margin-right:2px}
.deal-tag{position:absolute;z-index:2;top:-8px;right:-5px;padding:3px 6px 4px;border-radius:8px;background:linear-gradient(#ff5d6c,#d61f3a);border:1.5px solid #ffd0d6;color:#fff;font:400 clamp(11px,3.1cqw,14px)/1 'Lilita One',sans-serif;text-shadow:0 1px #7a0c1d;transform:rotate(6deg);box-shadow:0 2px #5c0716}
#shop-view .look-preview{display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#16488e,#082549 70%)}
#shop-view .deals-grid .look-preview{aspect-ratio:1/1}
/* A trail deal is a square card, so the wide trail picture flies across it diagonally (owner's pick), whole ball and
   streak in view; its edges fade into the card. */
#shop-view .deals-grid .look-trail .look-preview{background:radial-gradient(circle at 50% 50%,#173f86,#0b2252 72%)}
#shop-view .deals-grid .look-trail .look-preview img{position:absolute;left:50%;top:50%;width:128%;height:auto;transform:translate(-56%,-42%) rotate(-30deg);-webkit-mask:radial-gradient(ellipse 50% 50%,#000 72%,transparent);mask:radial-gradient(ellipse 50% 50%,#000 72%,transparent)}
/* Deal cards are narrow and square: a long name stays on one line and shrinks to fit (fitNames in app.js), with a
   thinner outline so small letters stay readable. */
#shop-view .deals-grid .look-name{-webkit-text-stroke-width:1px}
.look-ring{display:block;width:62%;aspect-ratio:1}
.look-ring .avatar-art{width:100%;height:100%}
.look-name{max-width:94%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 clamp(16px,5cqw,24px)/1.1 'Lilita One',sans-serif;color:var(--name-color);-webkit-text-stroke:1.5px #071630;paint-order:stroke fill;text-shadow:0 2px #071630}
.look-title{padding:0 6px;font:400 clamp(11px,3.3cqw,15px)/1.15 'Lilita One',sans-serif;letter-spacing:.6px;color:#fff1bb;text-shadow:0 2px #5a3a0a;text-align:center}
#shop-view .look-grid .look-preview{aspect-ratio:400/184}
#shop-view .look-grid .look-frame .look-preview{aspect-ratio:400/220}
.look-grid .look-ring{width:auto;height:88%}
#shop-view .looks-market .trail-gallery{padding:5px 5px 7px}
@media(max-width:350px){.deals-heading h2{font-size:23px}.deals-grid{gap:5px;padding:4px}#shop-view .deals-grid .trail-shop-item{padding:5px 4px}}
