/* Preserve existing art; improve the light storefront and document layout. */
.header{box-shadow:0 3px 24px #3d285007}
.product-card{border-radius:16px;box-shadow:0 4px 18px #35204d04;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease}
.product-card,.rule-section,.help-card,.currency-banner,.empty{animation-fill-mode:backwards}
.product-card:hover{transform:translateY(-6px);box-shadow:0 18px 36px #71519116;border-color:#c8b1e5}
.product-art{height:170px;background:radial-gradient(ellipse at 50% 72%,var(--art-glow,#e8dbfa) 0,transparent 68%);overflow:hidden}
.product-art:before{content:'';position:absolute;bottom:23px;width:108px;height:22px;border:1px solid #b797d224;border-radius:50%;background:#fff6;transform:rotate(-10deg)}
.product-art:after{bottom:25px;filter:blur(9px);opacity:.6}
.product-art svg{width:126px;height:126px;transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .3s ease}
.product-card:hover .product-art svg{transform:translateY(-7px) rotate(-4deg) scale(1.05)}
.card-tag{font-size:8px;letter-spacing:1px;color:#8e809d;top:15px;left:17px}
.card-mode{top:15px;right:17px;color:#9a8ba7}
.card-body{padding:0 20px 20px}
.card-body h3{font-size:18px;margin:6px 0 8px}
.card-body p{line-height:1.8;color:#7d738b}
.card-bottom{padding-top:17px}
.buy{padding:9px 14px;border-radius:8px}
.product-card[data-product-id="legion"],.product-card[data-product-id="anarchy_baron"]{--art-glow:#dfe8fa}
.product-card[data-product-id="phoenix"],.product-card[data-product-id="anarchy_deluxe"]{--art-glow:#fff0d7}
.product-card[data-product-id="rapier"],.product-card[data-product-id="anarchy_ragnarok"]{--art-glow:#fce0e7}
.product-card[data-product-id="king"],.product-card[data-product-id="anarchy_paladin"]{--art-glow:#fbefce}
.product-card[data-product-id="kraken"],.product-card[data-product-id="anarchy_dragonborn"]{--art-glow:#d7f3ee}
.product-card[data-product-id="phoenix"] .product-art svg,.product-card[data-product-id="king"] .product-art svg{filter:hue-rotate(145deg) saturate(.85) drop-shadow(0 9px 9px #9d752b22)}
.product-card[data-product-id="rapier"] .product-art svg{filter:hue-rotate(65deg) drop-shadow(0 9px 9px #9e456522)}
.product-card[data-product-id="kraken"] .product-art svg{filter:hue-rotate(275deg) drop-shadow(0 9px 9px #277d7922)}
.product-card[data-product-id="legion"] .product-art svg{filter:hue-rotate(325deg) drop-shadow(0 9px 9px #41669522)}
.mode-card{border-radius:14px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.mode-card.selected{box-shadow:0 6px 24px #8b66b00d}
.periods{border-radius:10px;padding:5px;gap:5px}
.periods button{border-radius:7px;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
.periods button.active{box-shadow:0 2px 8px #452c6810}
button:not(.close-dialog):not(.sound-toggle){position:relative;overflow:hidden}
button.is-pressed:after{content:'';position:absolute;inset:-35%;border-radius:50%;background:radial-gradient(circle,#b795ef38,transparent 64%);animation:pressWave .42s ease-out both;pointer-events:none}
@keyframes pressWave{from{transform:scale(.2);opacity:1}to{transform:scale(1.2);opacity:0}}
.reveal-pending{opacity:0;transform:translateY(15px)}
.reveal-ready{opacity:1;transform:translateY(0);transition:opacity .5s ease,transform .5s cubic-bezier(.2,.8,.2,1)}
.product-card.reveal-ready{transition:opacity .5s ease,transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease}
.purchase-feed{background:#ffffffa6;border-bottom:1px solid #e9e4f0;min-height:92px}
.feed-inner{display:flex;align-items:center;gap:24px;padding:14px 0}
.feed-heading{min-width:148px;flex-shrink:0}
.feed-heading strong{display:block;font-size:12px;color:#554461}
.feed-heading small{display:block;font-size:9px;color:#9a8ca6;margin-top:4px}
.feed-track{display:flex;align-items:center;gap:10px;overflow-x:auto;flex:1;scrollbar-width:none;scroll-behavior:smooth;min-width:0;padding:3px 0}
.feed-track::-webkit-scrollbar{display:none}
.purchase-item{flex:0 0 230px;display:flex;align-items:center;gap:11px;border:1px solid #e9e2f0;background:#fff;border-radius:11px;padding:10px 12px;animation:cardIn .35s ease-out both}
.purchase-icon{width:39px;height:42px;flex-shrink:0;display:grid;place-items:center;border-radius:8px;background:#f6f0fc}
.purchase-icon svg{width:35px;height:35px}
.purchase-copy{min-width:0;flex:1}
.purchase-name{font-size:10px;font-weight:650;color:#5c4b6c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.purchase-player{font-size:9px;color:#96869f;display:flex;gap:7px;align-items:center;margin-top:3px}
.purchase-player span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.purchase-price{color:#8053a9;font-size:11px;font-weight:750;white-space:nowrap}
.feed-empty{font-size:11px;color:#97879f;border:1px dashed #e1d7ed;border-radius:10px;padding:17px 20px;width:100%;background:#ffffff80}
.feed-controls{display:flex;gap:5px}
.feed-controls button{background:#fff;border:1px solid #e4daef;color:#9473af;border-radius:7px;width:27px;height:28px;padding:0;font-size:15px}
.legal-page{padding-top:28px;padding-bottom:55px}
.legal-breadcrumb{display:flex;align-items:center;gap:12px;font-size:10px;color:#9d8ca6;margin:0 0 23px}
.legal-breadcrumb a{color:#795596}
.legal-hero{display:flex;align-items:flex-start;gap:26px;padding:35px 38px;background:linear-gradient(120deg,#f1e9fc,#fff 80%);border:1px solid #e3d6f0;border-radius:18px;margin-bottom:27px}
.legal-mark{width:62px;height:68px;flex-shrink:0;border:1px solid #d8c6eb;border-radius:15px;background:#fff9;display:grid;place-items:center;color:#9873b8;font-size:31px;box-shadow:0 6px 20px #8d63af0a}
.legal-hero h1{font-size:34px;letter-spacing:-1px;line-height:1.25;margin-bottom:13px}
.legal-hero p{font-size:13px;color:#82708f;max-width:760px;line-height:1.9;margin:0}
.legal-tabs{display:flex;gap:9px;margin-top:22px;flex-wrap:wrap}
.legal-tabs a{font-size:11px;color:#8f749f;padding:9px 14px;border:1px solid #e4d8ed;border-radius:8px;background:#fff8;transition:.2s}
.legal-tabs a.active{color:#714592;border-color:#d2b9e8;background:#fff;box-shadow:0 3px 10px #4d1d7006}
.legal-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:28px;align-items:start}
.legal-toc{position:sticky;top:20px;padding:23px 19px;background:#fff;border:1px solid #e9e1f0;border-radius:14px}
.legal-toc strong{display:block;color:#6c517e;font-size:11px;margin:0 0 15px;padding-left:7px}
.legal-toc a{display:flex;align-items:baseline;gap:10px;color:#99869f;font-size:10px;line-height:1.7;padding:8px 7px;border-radius:6px;transition:.18s}
.legal-toc a span{color:#bcabc6;font-size:9px;min-width:14px}
.legal-toc a:hover,.legal-toc a.active{color:#754792;background:#f7f2fc}
.legal-toc button{font-size:10px;width:100%;margin-top:18px}
.legal-content{border:1px solid #e9e1f0;border-radius:15px;background:#fff;padding:4px 31px}
.legal-section{display:grid;grid-template-columns:30px 1fr;gap:14px;padding:29px 0;border-bottom:1px solid #eee8f4;scroll-margin-top:24px}
.legal-section-number{font-size:12px;font-weight:700;color:#c2afd0;padding-top:4px;letter-spacing:1px}
.legal-section h2{font-size:19px;line-height:1.5;letter-spacing:-.35px;color:#594065;margin:0 0 13px}
.legal-section p{font-size:13px;line-height:1.95;color:#6e5b7b;margin:0 0 14px;overflow-wrap:anywhere}
.legal-section p:last-child{margin-bottom:0}
.legal-contact{display:flex;align-items:center;gap:13px;padding:27px 0}
.legal-contact>div{margin-right:auto}
.legal-contact strong{font-size:13px;color:#71507f}
.legal-contact p{font-size:11px;color:#a28bad;margin:5px 0 0}
.legal-contact>a{border:1px solid #e4d6ee;background:#faf6fd;color:#83579d;border-radius:8px;padding:9px 12px;font-size:10px;white-space:nowrap}
@media(max-width:1050px){.legal-layout{grid-template-columns:210px 1fr;gap:20px}.legal-content{padding:0 23px}.legal-hero h1{font-size:30px}.feed-inner{gap:15px}.feed-heading{min-width:120px}.purchase-item{flex-basis:215px}}
@media(max-width:760px){.product-art{height:145px}.product-art svg{width:110px;height:110px}.card-body{padding:0 14px 16px}.card-body h3{font-size:16px}.card-tag{left:12px;font-size:7px}.card-mode{right:12px;font-size:7px}.feed-inner{display:block;padding:13px 0 11px}.feed-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.feed-heading strong{font-size:10px}.feed-heading small{font-size:8px;margin:0}.purchase-feed{min-height:100px}.feed-track{padding-bottom:3px}.purchase-item{flex-basis:205px;padding:8px 10px}.feed-controls{display:none}.feed-empty{font-size:10px;padding:12px 14px}.legal-page{padding-top:20px}.legal-hero{padding:23px 20px;gap:14px;border-radius:13px}.legal-mark{width:39px;height:44px;font-size:23px;border-radius:10px}.legal-hero h1{font-size:26px;letter-spacing:-.6px;overflow-wrap:anywhere}.legal-hero p{font-size:12px}.legal-hero .eyebrow{font-size:7px;letter-spacing:1px}.legal-layout{display:block}.legal-toc{position:static;margin-bottom:16px;padding:15px;display:flex;flex-wrap:wrap;gap:3px}.legal-toc strong{width:100%;margin-bottom:5px}.legal-toc a{font-size:9px;padding:5px 7px}.legal-toc button{width:auto;margin-top:7px}.legal-content{padding:0 17px}.legal-section{grid-template-columns:22px 1fr;gap:8px;padding:23px 0}.legal-section h2{font-size:17px}.legal-section p{font-size:12px;line-height:1.9}.legal-section-number{font-size:10px}.legal-contact{flex-wrap:wrap;gap:9px}.legal-contact>div{width:100%;margin-bottom:4px}.legal-tabs a{font-size:10px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){.reveal-pending,.reveal-ready{opacity:1;transform:none}.feed-track{scroll-behavior:auto}button.is-pressed:after{display:none}}
@media print{.header,.footer,.purchase-feed,.legal-breadcrumb,.legal-toc,.legal-tabs,.sound-toggle,.legal-contact,.legal-mark,.legal-hero .eyebrow{display:none!important}.container{width:100%}.legal-layout{display:block}.legal-page{padding:0}.legal-hero,.legal-content{border:0;background:#fff;padding:0;box-shadow:none}.legal-hero h1{font-size:24pt;color:#111}.legal-hero p,.legal-section p{color:#222;font-size:11pt}.legal-section h2{color:#111;font-size:14pt}.legal-section{display:block;break-inside:avoid-page;border:0;padding:12px 0}.legal-section-number{display:none}.reveal-pending,.reveal-ready{opacity:1!important;transform:none!important}}

/* Project contacts */
.contact-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.contact-card h2{font-size:23px;margin:0;letter-spacing:-.5px}
.contact-card p{margin:0 0 8px;flex:1;line-height:1.8}
.contact-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#eee5fc;color:#8250c4;font-size:20px;font-weight:750}
.contact-address{font-size:12px;color:#80738f;overflow-wrap:anywhere}
.contact-note{margin:28px 0 60px;padding:24px 28px;border:1px solid #e2d9ef;border-radius:16px;background:#fff}
.contact-note h2{font-size:20px;margin:0 0 10px}
.contact-note p{margin:0;max-width:860px;color:#776b83;line-height:1.9}
@media(max-width:760px){.header nav{gap:14px;flex-wrap:wrap;justify-content:center}.contact-note{padding:20px}.contact-card h2{font-size:21px}}
