[hidden]{display:none!important}.feature-tile{display:flex;flex-direction:column;gap:16px;text-align:left;padding:28px;border:1px solid #703044;background:linear-gradient(135deg,#30121f,#141219);border-radius:18px;color:#fff;font:700 22px 'Segoe UI',sans-serif;cursor:pointer;transition:transform .2s,border-color .2s}.feature-tile:hover{transform:translateY(-4px);border-color:#ff3159}.feature-tile span{font-size:14px;color:#c2b5be;font-weight:400}.locked{position:relative;overflow:hidden;padding-top:45px!important}.chain-lock{position:absolute;right:24px;top:20px;font-size:28px;opacity:.45;filter:grayscale(1)}.chain-lock:before,.chain-lock:after{content:'';position:absolute;bottom:24px;height:55px;width:9px;border:3px dashed #b5a2ad;border-radius:10px;transform:rotate(-34deg);transform-origin:bottom}.chain-lock:after{left:20px;transform:rotate(34deg)}.expand-panel{margin-top:25px;padding:28px;border:1px solid #512433;border-radius:18px;background:#141218;animation:unfold .35s ease-out}.shop-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.shop-tabs button,.product-dialog button,.admin-shell button{padding:12px 18px;border:1px solid #713044;border-radius:9px;background:#2b1420;color:#fff;cursor:pointer}.shop-tabs .selected,.buy-button{background:#af1738!important}.shop-tabs button:disabled,.buy-button:disabled{background:#343139!important;color:#a9a1aa;cursor:default;border-color:#504951}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:22px;margin-top:25px}.card-tile{display:flex;flex-direction:column;gap:12px;text-align:left;border:1px solid #4c2a39;background:#1c1720;color:white;border-radius:12px;padding:14px;cursor:pointer;transition:transform .2s}.card-tile:hover{transform:translateY(-6px)}.card-tile img,.card-placeholder{width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:10px;background:#140c12}.card-placeholder{display:grid;place-items:center;color:#ff3159;font-size:70px}.card-tile small{color:#c6a7b3}.product-dialog{color:#fff;background:#161219;border:1px solid #9d2643;border-radius:20px;width:min(850px,94vw);max-height:90vh;padding:28px;box-shadow:0 30px 100px #000a;animation:unfold .25s ease-out}.product-dialog::backdrop{background:#08040bbb;backdrop-filter:blur(8px)}.product-head{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;margin-bottom:24px}.product-head h2{text-align:center;margin:0;font-size:27px;overflow-wrap:anywhere}.product-layout{display:grid;grid-template-columns:minmax(180px,300px) 1fr;gap:35px}.product-info p{line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.product-art{text-align:center;perspective:1000px}.flip-card{position:relative;aspect-ratio:2/3;transform-style:preserve-3d;transition:transform .65s;margin-bottom:20px}.flip-card.flipped{transform:rotateY(180deg)}.face{position:absolute;inset:0;backface-visibility:hidden}.face.back{transform:rotateY(180deg)}.face img{width:100%;height:100%;object-fit:contain;border-radius:12px}.tags{display:flex;gap:8px;flex-wrap:wrap}.card-tag{font-size:12px;padding:6px 10px;border-radius:20px;background:#382230;color:#ff9db1}.card-tag.gold{background:#493d21;color:#ffe2a1}.card-tag.blue{background:#1c344a;color:#a6d6ff}.card-tag.purple{background:#39254f;color:#dfb1ff}.card-tag.green{background:#1c3c32;color:#9cf0ca}.buy-button{width:100%;margin-top:15px;font-size:16px}.purchase-status{color:#ffc8d5;font-size:14px}.purchase-success{animation:success .9s ease}.admin-shell{max-width:1100px;margin:40px auto;padding:20px;color:#eee;font-family:'Segoe UI',sans-serif}.admin-shell a{color:#ff8ba4}.admin-layout{display:grid;grid-template-columns:250px 1fr;gap:28px}.admin-list{display:flex;flex-direction:column;gap:10px}.admin-form{display:grid;gap:18px;padding:25px;border:1px solid #633045;border-radius:15px;background:#17131b}.admin-form label{display:grid;gap:8px}.admin-form input,.admin-form textarea,.admin-form select{width:100%;box-sizing:border-box;border:1px solid #674052;border-radius:7px;padding:10px;background:#0e0c11;color:#fff;font:inherit}.admin-form input[type=checkbox]{width:auto;justify-self:start;accent-color:#e52852}.admin-form img{max-width:130px;max-height:180px;object-fit:contain}.admin-form textarea{min-height:110px}.admin-tag{display:grid;grid-template-columns:1fr 130px auto;gap:10px}.admin-info{color:#c8b1bc;font-size:14px;line-height:1.6}.admin-body{background:#0c0b10;margin:0}.admin-form button:disabled{opacity:.4;cursor:default}@keyframes unfold{from{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:none}}@keyframes success{50%{filter:drop-shadow(0 0 15px #ec235b)}}@media(max-width:600px){.product-layout,.admin-layout{grid-template-columns:1fr}.product-art{max-width:230px;margin:auto;width:100%}.expand-panel{padding:16px}.product-dialog{padding:18px}.product-head{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-tag{grid-template-columns:1fr}.admin-shell{margin:10px auto}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.admin-form input[type=checkbox]{appearance:none;width:44px;height:24px;border-radius:20px;background:#3d3440;position:relative;cursor:pointer;padding:0}.admin-form input[type=checkbox]:before{content:"";position:absolute;width:16px;height:16px;border-radius:50%;top:3px;left:3px;background:white;transition:transform .2s}.admin-form input[type=checkbox]:checked{background:#c52049}.admin-form input[type=checkbox]:checked:before{transform:translateX(20px)}.admin-form input[type=checkbox]:disabled{opacity:.45;cursor:default}

/* MILPIRE laminate 10.1: class-based movement works with the portal CSP. */
.card-tilt{--rx:0deg;--ry:0deg;transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .2s ease-out;will-change:transform}
.card-tilt .flip-card{margin-bottom:0}.card-tilt{margin-bottom:20px}
.tilt-x0{--rx:6deg}.tilt-x1{--rx:3deg}.tilt-x2{--rx:0deg}.tilt-x3{--rx:-3deg}.tilt-x4{--rx:-6deg}
.tilt-y0{--ry:-6deg}.tilt-y1{--ry:-3deg}.tilt-y2{--ry:0deg}.tilt-y3{--ry:3deg}.tilt-y4{--ry:6deg}
.card-tilt .face:after{content:'';position:absolute;inset:3.3%;border-radius:7%;pointer-events:none;background:linear-gradient(115deg,transparent 32%,#fff0 39%,#ffffff15 43%,#fff8 47%,#ffffff18 50%,transparent 57%);background-size:350% 180%;background-position:140% 50%;mix-blend-mode:screen;opacity:.58;animation:milpire-laminate 8s ease-in-out infinite;backface-visibility:hidden}
.card-tilt .face:before{content:'';position:absolute;inset:3.3%;border-radius:7%;pointer-events:none;background:linear-gradient(125deg,#ffe4c512,transparent 30%,#f33b5f0b 60%,#c1eaff12);box-shadow:inset 0 1px 1px #fff5;mix-blend-mode:screen}
.card-tilt:hover .face:after{opacity:.8}
@keyframes milpire-laminate{0%,12%{background-position:140% 50%}45%,100%{background-position:-45% 50%}}
@media(prefers-reduced-motion:reduce){.card-tilt{transform:none!important}.card-tilt .face:after{animation:none!important;opacity:.18;background-position:50% 50%}}
/* Club 11: popup containers and public profiles. Card art rules above are retained. */
html{scrollbar-gutter:stable}body.club-modal-open{overflow:hidden}.club-dialog{width:min(1000px,94vw);max-height:90dvh;overflow-y:auto;overscroll-behavior:contain}.club-dialog>.expand-panel{margin:0;padding:0;border:0;background:transparent}.club-dialog .section-head{align-items:center;gap:18px}.club-dialog .section-head h2{margin-top:0;font-size:26px}.product-navigation{display:flex;gap:8px;flex-wrap:wrap}.product-navigation button{font-size:13px}.member-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.member-tile{display:flex;flex-direction:column;gap:10px;border:1px solid #69334a;border-radius:14px;background:linear-gradient(140deg,#351829,#1b1621);color:#fff;text-align:left;padding:20px;cursor:pointer;overflow-wrap:anywhere}.member-tile strong{font-size:18px}.member-tile small,.member-tile>span:last-of-type{color:#c9b1bf;font-size:13px}.member-monogram{color:#ff426d;font-size:28px}.member-search{display:flex;gap:10px;flex-wrap:wrap;width:100%}.member-search input{flex:1;min-width:130px;padding:12px;border-radius:9px;border:1px solid #663547;background:#100e16;color:#fff;font:inherit}.member-pager{display:flex;align-items:center;flex-wrap:wrap;gap:12px;width:100%;color:#c8aebe}.public-profile-stats{display:flex;gap:14px;flex-wrap:wrap;width:100%}.public-profile-stats>div{padding:15px;border:1px solid #653149;border-radius:10px;background:#2b1826}.public-collection-heading{grid-column:1/-1;margin:5px 0}.club-dialog button:focus-visible,.feature-tile:focus-visible,.member-search input:focus-visible{outline:2px solid #ff7798;outline-offset:3px}@media(max-width:600px){.club-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);margin:auto;padding:18px}.club-dialog .section-head{align-items:flex-start}.club-dialog .section-head h2{font-size:21px}.member-grid{grid-template-columns:1fr}.product-navigation{justify-content:center}.club-dialog .product-head h2{font-size:23px}.club-dialog .product-head{gap:12px}}
/* Rewards editor and issue window; existing card effect rules remain unchanged. */
.admin-list{margin-top:15px}.admin-shell aside>#new-reward{margin:10px 0;background:#694b20;border-color:#b78b40}.award-dialog{font-family:'Segoe UI',Arial,sans-serif}.award-dialog .section-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.award-dialog form{display:grid;gap:14px;margin:20px 0}.award-dialog label{display:grid;gap:8px}.award-dialog input,.award-dialog textarea{width:100%;padding:12px;border-radius:9px;border:1px solid #724256;background:#100e16;color:#fff;font:inherit}.award-dialog textarea{min-height:85px}.award-dialog button{border:1px solid #9a5d3c;background:#67401e}.award-dialog button:disabled{opacity:.4;cursor:wait}#award-history p{padding:14px 0;border-top:1px solid #533747;overflow-wrap:anywhere;font-size:14px}#award-result{color:#ffe1b6;white-space:pre-wrap}#give{background:#725124;border-color:#bb8e42}#give:disabled{opacity:.4}
/* Ecosystem 13: collection containers, achievements and avatars. Card effect rules above remain unchanged. */
.collection-tile{display:flex;flex-direction:column;gap:13px;padding:18px;border:1px solid #a47841;border-radius:16px;background:linear-gradient(145deg,#382232,#18141e);color:#fff;text-align:left;cursor:pointer;box-shadow:inset 0 0 25px #f7c36d08}.collection-tile>img:first-child{width:100%;aspect-ratio:16/10;object-fit:contain;border-radius:10px}.collection-tile>strong{font-size:20px}.collection-tile>span{color:#ead1b3;font-size:14px}.collection-tile>img:last-child:not(:first-child){width:52px;height:52px;object-fit:contain;align-self:flex-end}.collection-tile progress{width:100%;height:9px;accent-color:#e83a66;border:0;border-radius:12px;overflow:hidden;background:#342330}.collection-tile progress::-webkit-progress-bar{background:#342330}.collection-tile progress::-webkit-progress-value{background:linear-gradient(90deg,#9a183e,#f6a671)}.set-summary{display:flex;flex-direction:column;gap:8px;width:100%;padding:18px;background:#2f1e2b;border-radius:12px;border:1px solid #865735}.set-summary span{font-size:14px;color:#d8b3b5}.missing-card{opacity:.6}.set-achievement{grid-column:1/-1;display:flex;align-items:center;gap:18px;padding:20px;border-radius:14px;background:#362b1d;border:1px solid #ad804a;flex-wrap:wrap}.set-achievement img{width:80px;height:80px;object-fit:contain}.achievement-badge{display:flex;align-items:center;gap:12px;border:1px solid #835931;border-radius:14px;padding:15px;background:linear-gradient(135deg,#35251f,#201722);max-width:330px;flex-wrap:wrap}.achievement-badge>img,.achievement-badge>.card-placeholder{width:60px;height:60px;object-fit:contain;aspect-ratio:1;font-size:28px}.achievement-badge strong{font-size:15px}.achievement-badge small{font-size:12px;color:#c7aa8f}.profile-badges{display:flex;gap:12px;flex-wrap:wrap;width:100%}.member-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid #9d3b59}#username{display:flex;align-items:center;gap:12px}.main-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid #d04a6a;display:inline-grid;place-items:center;flex-shrink:0;font-size:24px;background:#3b1526}.broadcast-summary>span{display:block}@media(max-width:600px){.collection-tile{padding:13px}.collection-tile>strong{font-size:17px}.set-achievement{padding:14px;gap:12px}.set-summary{padding:13px}.achievement-badge{width:100%}}
