
/* MANERA CLUB V2.7 — partner legend + collectible rarity */
.partner-four-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.partner-four-grid .level-card{min-width:0}
.partner-four-grid .legend-tier{border-color:#efd48a90;background:linear-gradient(137deg,#392b24,#15283b 68%,#433315);box-shadow:0 0 20px #ffd07920}
.partner-four-grid .legend-tier .level-icon{filter:drop-shadow(0 0 10px #ffda63cc)}
.upgrade-card.partner-mode.tier-legend{background:radial-gradient(ellipse at 50% 21%,#6e5225,#34251d 50%,#080e1d 98%);border-color:#ffe5a9;box-shadow:0 0 140px #ffb90065,0 35px 90px #000d}
.partner-mode.tier-legend .upgrade-rate{color:#ffe69c;font-size:52px;text-shadow:0 0 27px #ffd55caa}
.partner-mode.tier-legend .upgrade-heading{font-size:35px;background:linear-gradient(90deg,#fff5c3,#ffb637,#fff3a6);background-clip:text;-webkit-background-clip:text;color:transparent}
.partner-mode.tier-legend .upgrade-emblem{font-size:91px;filter:drop-shadow(0 0 24px #ffdc5b)}
.partner-mode.tier-legend .ring{border-color:#ffdd76;box-shadow:0 0 34px #ffc36e77,inset 0 0 18px #ffc36e33}
.partner-mode.tier-legend .aura{background:radial-gradient(circle,#ffdc88ad,#ffc64c55 46%,transparent 76%)}
.partner-mode.tier-legend .upgrade-ok{color:#2a1902;background:linear-gradient(100deg,#fff0b3,#e3a83a,#fff0b3)}
.partner-mode.tier-legend .upgrade-stage:before,.partner-mode.tier-legend .upgrade-stage:after{content:'✦';font-size:25px;color:#ffe8a0;position:absolute;animation:v27-star 1.7s ease-in-out infinite alternate;text-shadow:0 0 20px #ffd867;left:19%;top:26%}
.partner-mode.tier-legend .upgrade-stage:after{left:83%;top:66%;animation-delay:.5s}
@keyframes v27-star{from{transform:scale(.5) rotate(0deg);opacity:.25}to{transform:scale(1.5) rotate(85deg);opacity:1}}
.v27-legend-cta{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:14px;background:linear-gradient(130deg,#2e301d,#16273a);border:1px solid #ffcb6e63;border-radius:20px}
.v27-crown{font-size:30px;filter:drop-shadow(0 0 15px #f2c44ca3)}.v27-legend-cta b{display:block;color:#ffe3a1}.v27-legend-cta small{display:block;margin-top:6px;color:#cfc7ab;font-size:11px;line-height:1.5}.v27-preview{grid-column:1/-1;padding:12px;background:linear-gradient(90deg,#dca746,#ffebaa,#c39835);border:0;border-radius:11px;color:#33200d;font-weight:850;cursor:pointer}
.p26-ach .v27-rarity{display:inline-block;padding:4px 6px;border-radius:8px;font-size:9px;font-weight:800;border:1px solid;margin-bottom:7px}
.p26-ach .ico{display:block;font-size:28px;margin:2px 0 5px}
.p26-ach{min-height:145px;transition:box-shadow .25s,border-color .25s}
.p26-ach.rar-common{border-color:#8197ad55}.p26-ach.rar-common .v27-rarity{color:#bbc9d9;border-color:#a2adbd77;background:#8d9aaf13}
.p26-ach.rar-rare{border-color:#46b4fa88;box-shadow:inset 0 0 18px #248cdb1c}.p26-ach.rar-rare .v27-rarity{color:#85d6ff;border-color:#3badf880;background:#1468aa39}
.p26-ach.rar-epic{border-color:#ba78ff94;box-shadow:inset 0 0 20px #a564e32b}.p26-ach.rar-epic .v27-rarity{color:#dbb0ff;border-color:#ba78ff99;background:#6821b73b}
.p26-ach.rar-legendary{border-color:#f1bf5cba;background:radial-gradient(circle at top,#65452360,#172839 70%);box-shadow:0 0 26px #efb94026, inset 0 0 24px #f2bd3322}
.p26-ach.rar-legendary .v27-rarity{color:#ffe49d;border-color:#f7c757b3;background:#8d631348}
.p26-ach.locked{opacity:.74}.p26-ach.rar-legendary.locked{opacity:.89}
.v27-award-detail{margin-top:10px}.v27-award-detail.rar-legendary{border-color:#ffd275}
.p26-win-overlay.rar-legendary .p26-win-card{border-color:#ffcc62;box-shadow:0 0 140px #ffc2477a;background:radial-gradient(circle at 50% 15%,#58401c,#13253b 73%)}
.p26-win-overlay.rar-legendary .p26-win-icon{filter:drop-shadow(0 0 30px #ffd86e)}
.v27-win-rarity{font-size:11px;color:#ffd781;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.v27-awardtest{width:100%;padding:11px;background:#72551b26;border:1px solid #ffd06c65;color:#ffdb96;border-radius:12px;font-size:11px;font-weight:700;margin-top:10px;cursor:pointer}
.v27-season{padding:14px;border:1px dashed #6fb9ea5c;border-radius:14px;margin-top:11px;display:grid;gap:5px;background:#23416f2b}
.v27-season span{font-size:9px;letter-spacing:.1em;color:#79d9fc}.v27-season b{font-size:13px}.v27-season small{font-size:10px;color:#98b7c9;line-height:1.6}
.v27-sharecopy{padding:15px;background:#112e44;color:#d9f4ff;font-size:12px;line-height:1.9;border-radius:15px;border:1px solid #60b0df3e;overflow-wrap:anywhere;margin:10px 0 15px}
.v27-field{display:flex;justify-content:space-between;align-items:center;gap:9px;font-size:11px;color:#c5deee;margin:10px 0}
.v27-field input,.v27-field select{min-width:0;width:44%;background:#0e2336;color:#efffff;border:1px solid #4ca1cf55;border-radius:10px;padding:9px;font-size:11px}
.v27-finance{margin-top:14px;padding:12px;border-radius:14px;background:#102b3dc7;display:grid;gap:11px}
.v27-finance div{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#bad5e4}.v27-finance div b{color:#e5f7ff}
.v27-finance .v27-finance-total{border-top:1px solid #ffffff30;padding-top:13px;color:#b4ebff;font-weight:750}.v27-finance-total b{color:#89eabf!important;font-size:14px}
@media(prefers-reduced-motion:reduce){.partner-mode.tier-legend .upgrade-stage:before,.partner-mode.tier-legend .upgrade-stage:after{animation:none}}


/* MANERA CLUB V2.8: partner's prospective income, not operator margin */
.v28-earnings{border-color:#60bde654;background:linear-gradient(145deg,#102a3d,#101c31)}
.v28-calc-intro{color:#bed9e9;line-height:1.65;font-size:12px;margin:0 0 14px}
.v28-scenarios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 17px}
.v28-scenarios button{cursor:pointer;border:1px solid #4287a85a;border-radius:12px;background:#102237;padding:11px 6px;color:#abcce0;font-size:11px;font-weight:800;transition:background .2s,transform .2s,border-color .2s}
.v28-scenarios button.active{background:linear-gradient(130deg,#154e75,#1e3962);border-color:#67d9fb;color:#e7faff;box-shadow:0 0 19px #2d9ce839}
.v28-scenarios button:active{transform:scale(.97)}
.v28-field{display:flex;flex-direction:column;gap:8px;color:#c7e5f4;font-size:11px;margin:14px 0}
.v28-field input{font-size:16px;background:#081c30;border:1px solid #5b9dc171;border-radius:12px;padding:12px;color:#f2faff;width:100%;min-width:0;box-sizing:border-box}
.v28-field input:focus-visible{outline:2px solid #64d7ff;outline-offset:2px}
.v28-result{padding:16px;background:radial-gradient(ellipse at 90% 0%,#2b5a9b36,transparent 70%),#0b2234;border:1px solid #3e9acc66;border-radius:16px;margin-top:17px}
.v28-result .v28-tier{font-size:11px;color:#90bfd7}.v28-result .v28-tier strong{color:#f4e6af}
.v28-result .v28-total{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:12px 0;border-bottom:1px solid #ffffff22}
.v28-result .v28-total strong{font-size:27px;line-height:1.2;color:#7cf0c8;letter-spacing:-.04em}
.v28-result .v28-total span{font-size:10px;color:#adccdd}
.v28-breakdown{font-size:11px;color:#b1cee0;display:grid;gap:11px;margin-top:13px}.v28-breakdown div{display:flex;justify-content:space-between;gap:14px}.v28-breakdown b{color:#ebf8ff;font-weight:800}
.v28-tier-progress{margin-top:15px;color:#cbeaff;font-size:11px;line-height:1.55;border-top:1px solid #ffffff19;padding-top:12px}
.v28-tier-progress span{display:block;color:#9cbbd1;font-size:10px;margin-top:5px}
.v28-disclaimer{color:#89afc6;font-size:10px;line-height:1.6;margin:13px 0 0}
/* One signature motion & symbols for each of 16 achievements */
.v28-ach-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1200;background:rgba(2,9,19,.89);backdrop-filter:blur(16px);padding:16px;overflow:hidden}
.v28-ach-panel{--v28-tone:#67cffb;--v28-bloom:#35baf2;background:radial-gradient(circle at 50% 11%,color-mix(in srgb,var(--v28-tone) 27%,#0d1e32),#0b182b 68%);border:1px solid color-mix(in srgb,var(--v28-tone) 70%,transparent);box-shadow:0 0 90px color-mix(in srgb,var(--v28-bloom) 30%,transparent),inset 0 0 40px #173c6639;border-radius:27px;padding:20px 20px 23px;text-align:center;width:min(355px,100%);position:relative;overflow:hidden;color:#f4fbff;animation:v28-panel-enter .56s cubic-bezier(.18,1.38,.27,1) both}
.v28-ach-panel.r-common{--v28-tone:#a5c8df;--v28-bloom:#8cafc4}.v28-ach-panel.r-rare{--v28-tone:#69d9ff;--v28-bloom:#1788ea}.v28-ach-panel.r-epic{--v28-tone:#db8aff;--v28-bloom:#8e46f9}.v28-ach-panel.r-legendary{--v28-tone:#ffe196;--v28-bloom:#eca737}
.v28-ach-rarity{color:var(--v28-tone);font-size:10px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;margin-bottom:7px}
.v28-ach-scene{height:192px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;margin:5px auto 4px}
.v28-ach-scene:before,.v28-ach-scene:after{content:'';position:absolute;border:1px solid var(--v28-tone);border-radius:50%;inset:32px 64px;opacity:.36;animation:v28-ring 3s linear infinite;pointer-events:none}
.v28-ach-scene:after{inset:12px 45px;animation-direction:reverse;animation-duration:4.5s;opacity:.14}
.v28-ach-icon{position:relative;z-index:4;font-size:78px;filter:drop-shadow(0 0 22px var(--v28-bloom));line-height:1.2;display:block;animation:v28-id-first 2.4s ease-in-out infinite}
.v28-ach-icon:before{content:attr(data-sigil);position:absolute;font-size:20px;left:50%;top:-18px;transform:translateX(-50%);color:var(--v28-tone)}
.v28-ach-spark{position:absolute;z-index:2;display:flex;align-items:center;justify-content:center;color:var(--v28-tone);font-size:27px;text-shadow:0 0 12px var(--v28-bloom);left:calc(50% + var(--sx));top:calc(50% + var(--sy));animation:v28-float 2.5s ease-in-out infinite;animation-delay:var(--d);pointer-events:none;opacity:.9}
.v28-ach-panel h2{font-size:22px;margin:7px 0 5px;color:#fbfdff}.v28-ach-panel .v28-motto{font-size:12px;color:var(--v28-tone);font-weight:750;margin-bottom:11px}
.v28-ach-panel .v28-ach-desc{color:#bcd7e5;font-size:11px;line-height:1.65;margin:0 auto 17px;max-width:280px}
.v28-ach-panel .v28-close{width:100%;border:none;border-radius:13px;padding:12px 16px;background:linear-gradient(130deg,color-mix(in srgb,var(--v28-tone) 90%,white),var(--v28-tone));color:#082135;font-weight:900;cursor:pointer}
.v28-ach-panel.r-legendary .v28-close{color:#47300d}.v28-ach-panel.r-legendary:after{content:'✧ ✧ ✧';color:#ffe8a9;letter-spacing:34px;position:absolute;top:10px;left:12%;animation:v28-shine 1.6s ease-in-out infinite;pointer-events:none}
.v28-award-preview{display:block;margin-top:15px;width:100%;padding:12px;border-radius:12px;background:linear-gradient(135deg,#123857,#273d70);border:1px solid #76c6f99e;color:#e4f7ff;font-weight:800;font-size:11px;cursor:pointer}
@keyframes v28-panel-enter{from{opacity:0;transform:translateY(40px) scale(.72)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes v28-ring{to{transform:rotate(360deg)}}@keyframes v28-shine{50%{opacity:.25;filter:blur(3px)}}
@keyframes v28-float{0%,100%{transform:translateY(4px) rotate(-16deg);opacity:.38}50%{transform:translateY(-22px) rotate(22deg);opacity:1}}
@keyframes v28-id-first{0%{transform:scale(.45) rotate(-60deg);opacity:.1}24%{transform:scale(1.26) rotate(8deg);opacity:1}49%,100%{transform:scale(1) rotate(0);opacity:1}}
@keyframes v28-id-ten{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-28px) rotate(-10deg)}55%{transform:translateY(13px) rotate(8deg)}75%{transform:translateY(-8px)}}
@keyframes v28-id-night{0%,100%{transform:translateX(-15px) rotate(-18deg);opacity:.85}50%{transform:translateX(15px) rotate(13deg);opacity:1}}
@keyframes v28-id-loyal{0%,100%{transform:scale(.92);filter:drop-shadow(0 0 5px #3579fc)}25%{transform:scale(1.15)}40%{transform:scale(.95)}65%{transform:scale(1.24);filter:drop-shadow(0 0 34px #ff70dd)}}
@keyframes v28-id-explore{0%{transform:rotate(-33deg) scale(.87)}50%{transform:rotate(142deg) scale(1.1)}100%{transform:rotate(327deg) scale(.87)}}
@keyframes v28-id-month{0%,50%,100%{transform:translate(0,0) scale(1)}3%{transform:translate(12px,-9px) scale(1.2)}7%{transform:translate(-9px,7px)}13%{transform:translate(7px,-12px) scale(.93)}22%{transform:translate(-5px,5px)}}
@keyframes v28-id-quarter{0%,100%{transform:rotateY(0) translateY(0)}48%{transform:rotateY(180deg) translateY(-14px)}}
@keyframes v28-id-eternal{0%{transform:rotate(-12deg) scale(.82)}33%{transform:rotate(115deg) scale(1.2)}67%{transform:rotate(237deg) scale(.95)}100%{transform:rotate(348deg) scale(.82)}}
@keyframes v28-id-meme_basics{0%,100%{transform:translateY(0) rotate(0)}15%{transform:translateY(-40px) rotate(-3deg)}29%{transform:translateY(3px)}36%{transform:translateY(-10px)}45%{transform:translateY(0)}}
@keyframes v28-id-meme_again{0%,100%{transform:rotate(-5deg)}12%,24%,36%,48%{transform:translateX(-12px) rotate(-19deg)}18%,30%,42%{transform:translateX(12px) rotate(19deg)}65%{transform:scale(1.2)}}
@keyframes v28-id-meme_two{0%,100%{transform:scale(.83) rotate(-13deg)}25%{transform:translateX(-30px) rotate(30deg)}50%{transform:translateX(30px) rotate(-25deg) scale(1.35)}75%{transform:translateX(0) scale(1)}}
@keyframes v28-id-meme_sleep{0%,100%{transform:rotate(6deg) translateY(2px)}45%{transform:rotate(-11deg) translateY(-17px) scale(1.05)}85%{transform:rotate(9deg) translateY(3px)}}
@keyframes v28-id-meme_home{0%,100%{transform:scale(.9) translateY(0)}20%{transform:scale(1.3) translateY(-22px)}35%{transform:scale(.9) translateY(5px)}50%{transform:scale(1.12)}}
@keyframes v28-id-meme_five{0%{transform:rotate(-30deg) scale(.88)}37%{transform:rotate(150deg) scale(1.15)}68%{transform:rotate(480deg) scale(.92)}100%{transform:rotate(690deg) scale(.88)}}
@keyframes v28-id-meme_67{0%,100%{transform:rotate(-27deg) scale(.92);filter:drop-shadow(0 0 10px #ffd885)}15%{transform:translateX(-28px) rotate(-10deg) scale(1.25)}36%{transform:translateX(25px) rotate(20deg) scale(.83)}56%{transform:translateY(-20px) rotate(5deg) scale(1.55);filter:drop-shadow(0 0 48px #fff3a0)}75%{transform:rotate(15deg) scale(1)}}
@keyframes v28-id-meme_aura{0%,100%{transform:scale(.76);filter:drop-shadow(0 0 10px #b575ff)}40%{transform:scale(1.35);filter:drop-shadow(0 0 50px #ffd061)}70%{transform:scale(1.05);filter:drop-shadow(0 0 42px #9b76ff)}}
/* explicitly map one motion to each award ID */
.v28-ach-overlay[data-id="first"] .v28-ach-icon{animation-name:v28-id-first}
.v28-ach-overlay[data-id="ten"] .v28-ach-icon{animation-name:v28-id-ten}
.v28-ach-overlay[data-id="night"] .v28-ach-icon{animation-name:v28-id-night}
.v28-ach-overlay[data-id="loyal"] .v28-ach-icon{animation-name:v28-id-loyal}
.v28-ach-overlay[data-id="explore"] .v28-ach-icon{animation-name:v28-id-explore}
.v28-ach-overlay[data-id="month"] .v28-ach-icon{animation-name:v28-id-month}
.v28-ach-overlay[data-id="quarter"] .v28-ach-icon{animation-name:v28-id-quarter}
.v28-ach-overlay[data-id="eternal"] .v28-ach-icon{animation-name:v28-id-eternal}
.v28-ach-overlay[data-id="meme_basics"] .v28-ach-icon{animation-name:v28-id-meme_basics}
.v28-ach-overlay[data-id="meme_again"] .v28-ach-icon{animation-name:v28-id-meme_again}
.v28-ach-overlay[data-id="meme_two"] .v28-ach-icon{animation-name:v28-id-meme_two}
.v28-ach-overlay[data-id="meme_sleep"] .v28-ach-icon{animation-name:v28-id-meme_sleep}
.v28-ach-overlay[data-id="meme_home"] .v28-ach-icon{animation-name:v28-id-meme_home}
.v28-ach-overlay[data-id="meme_five"] .v28-ach-icon{animation-name:v28-id-meme_five}
.v28-ach-overlay[data-id="meme_67"] .v28-ach-icon{animation-name:v28-id-meme_67}
.v28-ach-overlay[data-id="meme_aura"] .v28-ach-icon{animation-name:v28-id-meme_aura}
@media(prefers-reduced-motion:reduce){.v28-ach-panel,.v28-ach-icon,.v28-ach-spark,.v28-ach-scene:before,.v28-ach-scene:after{animation:none!important}}
