/* OPALIUM TREASURY v4 — page 785 */
@import url('https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Silkscreen&family=Rubik:wght@400;500;600;700&display=swap');

body.page-id-785,body.page-id-785 .wp-site-blocks,body.page-id-785 main#wp--skip-link--target,body.page-id-785 .entry-content{background:#03050b!important}
body.page-id-785 header.wp-block-template-part,body.page-id-785 footer.wp-block-template-part,body.page-id-785 .wp-block-post-title{display:none!important}
body.page-id-785 main#wp--skip-link--target{margin:0!important;padding:0!important}
body.page-id-785 .entry-content>#treasury-app{width:100%!important;max-width:none!important;margin:0!important}
body.page-id-785{overflow-x:hidden!important}

:root{
  --t-bg:#080d1a;--t-panel:#101828;--t-panel-2:#142036;--t-line:rgba(185,110,255,.35);
  --t-purple:#d19aff;--t-gold:#ffe08a;--t-text:#f8f5ff;--t-muted:#b0b8cc;
  --t-green:#8df0b5;--t-red:#ff8a6b;--t-blue:#6fc0ff;
  --bronze:#e8a35e;--silver:#d8dbe4;--gold-rank:#ffe070;--obsidian:#b490ff;
}

/* ========== BASE ========== */
.treasury{min-height:100dvh;background:radial-gradient(circle at 55% 0%,#251d45 0%,#080d1a 46%);color:var(--t-text);font-family:'Rubik',Inter,system-ui,-apple-system,sans-serif;padding:0 20px 36px}

/* ========== LOADING ========== */
.treasury-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;gap:16px}
.treasury-loading-spinner{width:40px;height:40px;border:3px solid rgba(192,132,252,.2);border-top-color:var(--t-purple);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.treasury-loading-text{font-family:'Silkscreen',monospace;font-size:12px;color:var(--t-muted)}

/* ========== ERROR ========== */
.treasury-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;gap:16px;text-align:center;padding:40px}
.treasury-error-icon{font-size:48px}.treasury-error-text{font-family:'Silkscreen',monospace;font-size:12px;color:var(--t-red)}
.treasury-error-btn{padding:10px 20px;border:1px solid var(--t-purple);border-radius:8px;background:#281642;color:#fff;font-family:'Silkscreen',monospace;font-size:12px;cursor:pointer;transition:.2s}
.treasury-error-btn:hover{background:#3a1f5e}

/* ========== NAV ========== */
.treasury-nav{height:72px;display:flex;align-items:center;gap:24px;border-bottom:1px solid rgba(255,255,255,.12)}
.treasury-brand{display:flex;align-items:center;gap:8px;min-width:140px}
.treasury-brand-mark{width:28px;height:28px;display:grid;place-items:center;overflow:hidden;background:transparent}
.treasury-brand-mark img{width:100%;height:100%;object-fit:contain}
.treasury-brand b{display:block;font:22px/1 'Press Start 2P',Georgia,serif;letter-spacing:1px;color:#e9d9ff}
.treasury-brand small{display:block;margin-top:2px;color:#c0c8dc;font-family:'Silkscreen',monospace;font-size:12px}
.treasury-links{display:flex;align-items:center;gap:14px;flex:1}
.treasury-links button{display:grid;gap:10px;place-items:center;border:0;background:transparent;color:#c5cce0;font-family:'Silkscreen',monospace;font-size:11px;cursor:pointer;transition:.2s}
.treasury-links button:hover{color:#fff}.treasury-links i{font-style:normal;font-size:20px;color:#b0b8cc}

.treasury-links button.is-active{color:#fff;border-bottom:2px solid var(--t-purple);padding-bottom:5px}
.treasury-links button.is-active i{color:var(--t-purple)}
.treasury-user{display:flex;align-items:center;gap:10px;min-width:180px;padding:8px 12px;border:1px solid var(--t-line);border-radius:8px;background:rgba(18,26,45,.85);cursor:pointer;transition:.2s}
.treasury-user:hover{border-color:var(--t-purple)}
.treasury-user-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:6px;overflow:hidden;position:relative}
.treasury-user-avatar img{width:100%;height:100%;object-fit:cover}
.treasury-user-avatar .sticker-badge{position:absolute;bottom:-4px;right:-4px;font-size:12px;filter:drop-shadow(0 0 3px rgba(0,0,0,.5))}
.treasury-user b{display:block;font-family:'Silkscreen',monospace;font-size:13px;color:#f0edff}
.treasury-user small{display:block;color:#b0b8cc;font-family:'Rubik',sans-serif;font-size:12px;margin:2px 0 4px}
.xp{height:5px;overflow:hidden;border-radius:6px;background:#202a44}
.xp i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a06df5,#e0a5ff);transition:width 1s ease}

/* ========== RANK BADGE ========== */
.rank-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:5px;font-family:'Silkscreen',monospace;font-size:11px;font-weight:500}
.rank-badge.bronze{background:rgba(232,163,94,.15);color:var(--bronze);border:1px solid rgba(232,163,94,.35)}
.rank-badge.silver{background:rgba(216,219,228,.1);color:var(--silver);border:1px solid rgba(216,219,228,.35)}
.rank-badge.gold{background:rgba(255,224,112,.1);color:var(--gold-rank);border:1px solid rgba(255,224,112,.35)}
.rank-badge.obsidian{background:rgba(180,144,255,.15);color:var(--obsidian);border:1px solid rgba(180,144,255,.35)}

/* ========== AVATAR FRAMES ========== */
.avatar-frame{position:relative;display:inline-block}.avatar-frame img{border-radius:6px}
.avatar-frame.default{border:1px solid rgba(255,255,255,.2);border-radius:8px}
.avatar-frame.bronze{border:2px solid var(--bronze);border-radius:8px;box-shadow:0 0 10px rgba(205,127,50,.3)}
.avatar-frame.silver{border:2px solid var(--silver);border-radius:8px;box-shadow:0 0 10px rgba(192,192,192,.3)}
.avatar-frame.gold{border:2px solid var(--gold-rank);border-radius:8px;box-shadow:0 0 12px rgba(255,215,0,.4)}
.avatar-frame.obsidian{border:2px solid var(--obsidian);border-radius:8px;box-shadow:0 0 12px rgba(139,92,246,.4)}
.avatar-frame.legendary{border:2px solid #ff4500;border-radius:8px;box-shadow:0 0 16px rgba(255,69,0,.5);animation:legendGlow 2s ease-in-out infinite}
@keyframes legendGlow{0%,100%{box-shadow:0 0 12px rgba(255,69,0,.4)}50%{box-shadow:0 0 20px rgba(255,215,0,.6)}}
/* ========== HERO COLLECTIONS ROW ========== */
.hero-collections-row{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:12px;
}
.hero-collection-badge{
  display:flex;
  align-items:center;
  gap:5px;
  padding:5px 10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  background:rgba(8,13,25,.7);
  cursor:pointer;
  transition:.2s;
  white-space:nowrap;
}
.hero-collection-badge:hover{
  border-color:var(--t-purple);
  background:rgba(192,132,252,.08);
  box-shadow:0 0 10px rgba(192,132,252,.1);
}
.hero-badge-emoji{
  font-size:16px;
}
.hero-badge-count{
  font-family:'Silkscreen',monospace;
  font-size:12px;
  color:var(--t-text);
}
.hero-badge-count small{
  font-size:7px;
  color:var(--t-muted);
}

@media(max-width:720px){
  .hero-collections-row{gap:4px;margin-top:8px}
  .hero-collection-badge{padding:4px 8px;gap:4px}
  .hero-badge-emoji{font-size:13px}
  .hero-badge-count{font-size:10px}
}

/* ========== HERO ========== */
.treasury-hero{position:relative;min-height:170px;overflow:hidden;margin:10px 0;border:1px solid rgba(185,110,255,.3);border-radius:12px;background:#121a2e;cursor:pointer;transition:.2s}
.treasury-hero:hover{
  border-color:var(--t-purple);
  box-shadow:0 0 20px rgba(192,132,252,.1);
}
.treasury-hero:before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(3,5,11,.97) 0%,rgba(3,5,11,.73) 38%,rgba(3,5,11,.15) 72%),
              linear-gradient(0deg,rgba(3,5,11,.5),transparent 55%),
              var(--treasury-hero-image,radial-gradient(circle at 76% 50%,#7d2aab 0%,#281638 25%,#080c16 63%));
  background-size:cover;
  background-position:center;
}
/* Вместо ромба — контейнер для артефактов */
.treasury-hero-artifacts{
  position:absolute;
  right:8%;
  top:50%;
  transform:translateY(-50%);
  width:80px;
  height:80px;
  display:grid;
  place-items:center;
  z-index:2;
}
.treasury-hero-artifact{
  position:absolute;
  width:70px;
  height:70px;
  display:grid;
  place-items:center;
  opacity:0;
  animation:artifactShow 12s infinite;
}
.treasury-hero-artifact img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 0 12px rgba(192,132,252,.5));
}
.treasury-hero-artifact:nth-child(1){animation-delay:0s}
.treasury-hero-artifact:nth-child(2){animation-delay:3s}
.treasury-hero-artifact:nth-child(3){animation-delay:6s}
.treasury-hero-artifact:nth-child(4){animation-delay:9s}
.treasury-hero-artifact:nth-child(5){animation-delay:12s}

@keyframes artifactShow{
  0%{opacity:0;transform:scale(.8) rotate(-5deg)}
  8%{opacity:1;transform:scale(1) rotate(0)}
  20%{opacity:1;transform:scale(1.05) rotate(3deg)}
  28%{opacity:0;transform:scale(.9) rotate(0)}
  100%{opacity:0}
}
/* Убираем старый ромб */
.treasury-hero:after{display:none}
.treasury-hero-copy{
  position:relative;
  z-index:1;
  padding:18px;
}
.treasury-hero h1{margin:0;font-family:'Press Start 2P',Georgia,serif;font-size:30px;color:#e0b8ff;text-shadow:0 0 20px rgba(187,93,255,.5);letter-spacing:1px;text-transform:uppercase}
.treasury-hero p{margin:4px 0 14px;color:#c8d0e4;font-family:'Silkscreen',monospace;font-size:12px}
.treasury-stats{
  display:flex;
  gap:14px;
}
.treasury-stat{
  display:flex;
  align-items:center;
  gap:6px;
  padding-right:12px;
  border-right:1px solid rgba(255,255,255,.12);
}
.treasury-stat:last-child{border:0}
.treasury-stat i{color:#d887ff;font-style:normal;font-size:18px}
.treasury-stat span{display:block;color:#b0b8cc;font-family:'Rubik',sans-serif;font-size:12px}
.treasury-stat b{display:block;margin-top:2px;font-family:'Silkscreen',monospace;font-size:17px;font-weight:500;transition:.3s;color:#fff}

/* На мобилках — меньше */
@media(max-width:720px){
  .treasury-hero{min-height:140px}
  .treasury-hero-copy{padding:12px}
  .treasury-hero h1{font-size:18px}
  .treasury-hero p{font-size:10px;max-width:180px}
  .treasury-hero-artifacts{width:60px;height:60px;right:6%}
  .treasury-hero-artifact{width:50px;height:50px}
}
/* ========== LIVE TICKER ========== */
.live-ticker-bar{display:flex;align-items:center;gap:8px;padding:5px 10px;margin:0 0 10px;border:1px solid rgba(255,255,255,.06);border-radius:6px;background:rgba(8,13,25,.6);overflow:hidden}
.live-ticker-dot{width:6px;height:6px;border-radius:50%;background:var(--t-green);animation:pulse 1.5s ease-in-out infinite;flex-shrink:0}
@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 4px var(--t-green)}50%{opacity:.3;box-shadow:0 0 1px var(--t-green)}}
.live-ticker-content{flex:1;overflow:hidden;position:relative;height:14px}
.live-ticker-track{display:flex;gap:30px;animation:tickerScroll 20s linear infinite;white-space:nowrap}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.live-ticker-item{font-family:'Rubik',sans-serif;font-size:11px;color:#c0c8dc}

/* ========== SECTIONS ========== */
.section{margin:6px 0}
.section-title{margin:0;font-family:'Press Start 2P',Georgia,serif;font-size:14px;color:#d0a0ff;letter-spacing:1px;text-transform:uppercase}
.section-bar{display:flex;align-items:center;justify-content:space-between;margin:0 0 6px}
.more{border:0;background:none;color:#d8a5ff;font-family:'Silkscreen',monospace;font-size:11px;cursor:pointer;transition:.2s}
.more:hover{color:#fff}
.panel{border:1px solid rgba(255,255,255,.1);border-radius:8px;background:linear-gradient(145deg,rgba(20,30,52,.95),rgba(10,16,30,.95))}

/* ========== NEW PROFILE ========== */
.profile-new-container{padding:20px}
.profile-new-header{display:flex;gap:16px;align-items:center;margin-bottom:16px}
.profile-new-avatar{width:72px;height:72px;border-radius:14px;overflow:hidden;position:relative;flex-shrink:0}
.profile-new-avatar img{width:100%;height:100%;object-fit:cover}
.profile-sticker{position:absolute;bottom:-6px;right:-6px;font-size:22px;filter:drop-shadow(0 0 4px rgba(0,0,0,.5))}
.profile-new-info{flex:1}
.profile-new-name{font-family:'Press Start 2P',Georgia,serif;font-size:18px;color:#d0a0ff}
.profile-new-title{font-family:'Silkscreen',monospace;font-size:11px;color:#c0c8dc;margin:4px 0}
.profile-new-rank-row{display:flex;gap:8px;align-items:center;margin-top:6px}
.profile-new-rank-pos{font-family:'Silkscreen',monospace;font-size:12px;color:#ffe08a}

.profile-new-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.profile-metric{padding:10px 6px;border:1px solid rgba(255,255,255,.06);border-radius:8px;text-align:center;background:rgba(8,13,25,.5)}
.profile-metric-value{display:block;font-family:'Silkscreen',monospace;font-size:18px;color:#fff}
.profile-metric-label{display:block;font-size:11px;color:#b0b8cc;margin-top:3px}

.profile-season-bar{margin-bottom:14px;padding:12px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(8,13,25,.5)}
.profile-season-header{display:flex;justify-content:space-between;margin-bottom:8px;font-family:'Silkscreen',monospace;font-size:12px}
.profile-season-header span:last-child{color:var(--t-purple)}

.profile-section{margin-bottom:14px}
.profile-section-title{font-family:'Press Start 2P',Georgia,serif;font-size:11px;color:#d0a0ff;margin-bottom:8px;text-transform:uppercase}
.profile-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.profile-mini-ach{display:flex;align-items:center;gap:6px;padding:8px;border:1px solid rgba(255,200,100,.25);border-radius:8px;background:rgba(255,215,0,.05);font-family:'Silkscreen',monospace;font-size:11px;color:#ffe8b0}
.profile-mini-ach span:first-child{font-size:18px}
.profile-mini-art-row{display:flex;gap:8px}
.profile-mini-art{width:56px;height:56px;display:grid;place-items:center;border:1px solid rgba(192,132,252,.3);border-radius:10px;background:rgba(192,132,252,.05);overflow:hidden}
.profile-mini-art img{width:80%;height:80%;object-fit:contain}
.profile-mini-art span{font-size:20px;color:var(--t-muted)}

.profile-actions{display:flex;flex-direction:column;gap:6px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}
.profile-actions button{padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:transparent;color:var(--t-text);font-family:'Silkscreen',monospace;font-size:12px;cursor:pointer;transition:.2s;text-align:left}
.profile-actions button:hover{border-color:var(--t-purple);background:rgba(192,132,252,.05)}
.profile-actions button:last-child{color:var(--t-red);border-color:rgba(255,100,50,.2)}
.profile-actions button:last-child:hover{background:rgba(255,100,50,.05)}

/* ========== ACHIEVEMENT POPUP ========== */
.treasury-ach-popup{
  position:fixed;
  top:-120px;
  left:50%;
  transform:translateX(-50%);
  z-index:10000;
  display:flex;
  align-items:center;
  gap:14px;
  padding:16px 24px;
  background:linear-gradient(135deg,#1e1a3a,#0f0f2e);
  border:2px solid var(--t-gold);
  border-radius:16px;
  box-shadow:0 0 40px rgba(255,224,138,.5);
  animation:achSlideDown .6s ease forwards, achSlideUp .6s ease 3.4s forwards;
  min-width:300px;
}
@keyframes achSlideDown{
  from{top:-120px;opacity:0}
  to{top:20px;opacity:1}
}
@keyframes achSlideUp{
  from{top:20px;opacity:1}
  to{top:-120px;opacity:0}
}
.treasury-ach-icon{
  font-size:40px;
  animation:achIconPop .5s ease .3s both;
}
@keyframes achIconPop{
  from{transform:scale(0)}
  to{transform:scale(1)}
}
.treasury-ach-content{text-align:left}
.treasury-ach-title{
  font-family:'Silkscreen',monospace;
  font-size:12px;
  color:var(--t-gold);
  text-transform:uppercase;
  letter-spacing:1px;
}
.treasury-ach-name{
  font-family:'Press Start 2P',Georgia,serif;
  font-size:14px;
  color:#fff;
  margin:4px 0;
}
.treasury-ach-desc{
  font-size:12px;
  color:#c0c8dc;
}
/* ========== MINI ACTION PANELS ========== */
.mini-action-panel{
  padding:10px;
  cursor:pointer;
  transition:.2s;
  text-align:center;
}
.mini-action-panel:hover{
  border-color:var(--t-purple);
  box-shadow:0 0 12px rgba(192,132,252,.1);
  transform:translateY(-1px);
}
.mini-action-header{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin-bottom:8px;
}
.mini-action-emoji{
  font-size:20px;
}
.mini-action-header .section-title{
  font-size:12px;
}
.mini-action-value{
  font-family:'Silkscreen',monospace;
  font-size:16px;
  color:#fff;
  margin-bottom:4px;
}
.mini-action-sub{
  font-family:'Silkscreen',monospace;
  font-size:10px;
  color:var(--t-muted);
  transition:.2s;
}
.mini-action-panel:hover .mini-action-sub{
  color:var(--t-purple);
}

@media(max-width:720px){
  .mini-action-panel{
    padding:8px;
  }
  .mini-action-value{
    font-size:14px;
  }
}
/* ========== MINI ACTION PANELS ========== */
.mini-action-panel{
  padding:10px;
  cursor:pointer;
  transition:.2s;
}
.mini-action-panel:hover{
  border-color:var(--t-purple);
  box-shadow:0 0 12px rgba(192,132,252,.1);
}
.mini-action-header{
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:8px;
}
.mini-action-emoji{font-size:16px}
.mini-action-title{
  font-family:'Silkscreen',monospace;
  font-size:12px;
  color:var(--t-text);
  flex:1;
}
.mini-action-more{
  font-size:12px;
  color:var(--t-muted);
  transition:.2s;
}
.mini-action-panel:hover .mini-action-more{color:var(--t-purple)}

.mini-empty{
  font-family:'Silkscreen',monospace;
  font-size:11px;
  color:var(--t-muted);
  text-align:center;
  padding:8px 0;
}

/* Стрик */
.mini-streak-row{
  display:flex;
  gap:4px;
  overflow-x:auto;
}
.mini-streak-item{
  flex-shrink:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:6px;
  font-family:'Silkscreen',monospace;
  font-size:10px;
  color:var(--t-muted);
}
.mini-streak-item.available{
  border-color:rgba(255,224,138,.4);
  background:rgba(255,215,0,.05);
  color:var(--t-gold);
  animation:availableGlow 2s ease-in-out infinite;
}
.mini-streak-item.locked{opacity:.4}

/* Квесты */
.mini-quests-list{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.mini-quest-item{
  display:flex;
  align-items:center;
  gap:6px;
  padding:6px 8px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:6px;
  font-family:'Silkscreen',monospace;
  font-size:10px;
  color:#e8e4f5;
}
.mini-quest-item span:first-child{font-size:14px}
.mini-quest-item span:last-child{margin-left:auto}

/* Поиск */
.mini-search-bar{
  display:flex;
  gap:4px;
}
.mini-search-bar input{
  flex:1;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:6px;
  background:rgba(16,24,42,.8);
  color:var(--t-text);
  font-family:'Rubik',sans-serif;
  font-size:12px;
  outline:none;
  min-width:0;
}
.mini-search-bar input:focus{border-color:var(--t-purple)}
.mini-search-bar button{
  padding:6px 10px;
  border:1px solid var(--t-purple);
  border-radius:6px;
  background:#281642;
  color:#fff;
  font-family:'Silkscreen',monospace;
  font-size:12px;
  cursor:pointer;
}
.mini-search-results{
  margin-top:6px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.mini-search-result{
  display:flex;
  align-items:center;
  gap:6px;
  padding:5px 8px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:6px;
  cursor:pointer;
  transition:.2s;
  font-family:'Silkscreen',monospace;
  font-size:11px;
  color:#e8e4f5;
}
.mini-search-result:hover{
  border-color:var(--t-purple);
  background:rgba(192,132,252,.05);
}
.mini-search-result img{
  width:20px;
  height:20px;
  border-radius:4px;
  object-fit:cover;
}
.mini-search-result span:last-child{
  margin-left:auto;
  font-size:10px;
  color:var(--t-muted);
}

@media(max-width:720px){
  .mini-action-panel{padding:8px}
  .mini-streak-item{padding:4px 8px;font-size:7px}
  .mini-quest-item{font-size:7px;padding:4px 6px}
  .mini-search-bar input{font-size:11px}
}
/* ========== PROFILE SEARCH ========== */
.profile-search-bar{display:flex;gap:6px;padding:8px 10px;margin:0}
.profile-search-input{flex:1;padding:8px 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(8,13,25,.6);color:var(--t-text);font-family:'Rubik',sans-serif;font-size:11px;outline:none}
.profile-search-input:focus{border-color:var(--t-purple)}
.profile-search-btn{padding:8px 14px;border:1px solid var(--t-purple);border-radius:8px;background:#281642;color:#fff;font-family:'Silkscreen',monospace;font-size:11px;cursor:pointer}

@media(max-width:720px){
  .profile-new-container{padding:14px}
  .profile-new-avatar{width:56px;height:56px}
  .profile-new-name{font-size:13px}
  .profile-new-metrics{grid-template-columns:repeat(2,1fr)}
  .profile-mini-art{width:44px;height:44px}
}

.treasury-bottom-actions{
  display:flex;
  gap:8px;
  margin-top:10px;
  padding:10px 0;
}
.treasury-bottom-actions button{
  flex:1;
  padding:10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  background:rgba(8,13,25,.6);
  color:var(--t-text);
  font-family:'Silkscreen',monospace;
  font-size:11px;
  cursor:pointer;
  transition:.2s;
}
.treasury-bottom-actions button:hover{
  border-color:var(--t-purple);
  background:rgba(192,132,252,.05);
}
@media(max-width:720px){
  .treasury-bottom-actions{flex-direction:column}
}
.rare-item{
  text-align:center;
  padding:8px;
  display:flex;
  flex-direction:column;
}
.rare-item .section-title{
  font-size:11px;
  text-align:center;
  margin-bottom:6px;
  flex-shrink:0;
}
.rare-item-full-image{
  flex:1;
  display:grid;
  place-items:center;
  min-height:120px;
  width:100%;
  overflow:hidden;
}
.rare-item-full-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 4px 16px rgba(192,132,252,.5));
  animation:itemFloat 3s ease-in-out infinite;
}
@keyframes itemFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
/* ========== TREASURE GRID — FLEX ========== */
.treasure-grid{
  display:flex;
  gap:8px;
  align-items:stretch;
}
.treasure-grid > article{
  flex:1;
  min-width:0;
}
.treasure-grid .find-list{
  flex:1.6;
}
.treasure-grid .rare-item{
  flex:0.6;
}
.treasure-grid .leaderboard-mini{
  flex:0.8;
}
.find-list,.rare-item,.goals{padding:8px}
.find-row{display:flex;align-items:center;gap:6px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.06);transition:.2s}
.find-row:hover{background:rgba(255,255,255,.03);border-radius:4px;padding:4px 3px}.find-row:last-child{border:0}
.asset-slot{display:grid;place-items:center;flex:none;border:1px dashed rgba(217,128,255,.45);border-radius:6px;background:radial-gradient(circle,#2b1a48,#101828);color:#e0a5ff;overflow:hidden;transition:.3s}
.asset-slot img{width:100%;height:100%;object-fit:contain}
.asset-slot.sm{width:32px;height:32px;font-size:16px}
.asset-slot.lg{width:120px;height:150px;margin:2px auto;font-size:45px;animation:float 3s ease-in-out infinite}
.find-row b{display:block;font-family:'Silkscreen',monospace;font-size:11px;color:#e8e4f5}
.find-row span{display:block;margin-top:1px;color:#b0b8cc;font-family:'Rubik',sans-serif;font-size:11px}
.find-row em{margin-left:auto;color:#c5a0e8;font-family:'Rubik',sans-serif;font-size:11px;font-style:normal}

@media(max-width:720px){
  .treasure-grid{display:block}
  .treasure-grid > article{margin-bottom:8px}
}
/* ========== RARE ITEM — КОМПАКТНЫЙ ========== */
.rare-item{text-align:center;padding:8px}
.rare-item .section-title{font-size:12px;text-align:center;margin-bottom:6px}
.rare-item small{color:#d0a0ff;font-family:'Rubik',sans-serif;font-size:11px;display:block;text-align:center}
.rare-item b{
  display:block;
  font-family:'Press Start 2P',Georgia,serif;
  font-size:12px;
  letter-spacing:0.5px;
  color:#f0edff;
  text-align:center;
  margin-top:2px;
  word-wrap:break-word;
  line-height:1.4;
}
.asset-slot.lg{
  width:100px;
  height:100px;
  margin:4px auto;
  font-size:38px;
  animation:float 3s ease-in-out infinite;
}
.history-item-icon{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:6px;
  background:rgba(192,132,252,.12);
  overflow:hidden;
  flex-shrink:0;
}
.history-item-icon img{
  width:80%;
  height:80%;
  object-fit:contain;
}
/* ========== FIVE BUTTONS ROW ========== */
.five-buttons-row{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
}
.five-collection-btn{
  padding:12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  background:linear-gradient(145deg,rgba(20,30,52,.95),rgba(10,16,30,.95));
  text-align:center;
  cursor:pointer;
  transition:.2s;
}
.five-collection-btn:hover{
  border-color:var(--t-purple);
  box-shadow:0 0 16px rgba(192,132,252,.15);
  transform:translateY(-2px);
}
.five-collection-img{
  width:60px;
  height:60px;
  margin:0 auto 8px;
  display:grid;
  place-items:center;
}
.five-collection-img img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.five-collection-name{
  font-family:'Silkscreen',monospace;
  font-size:11px;
  color:#e8e4f5;
  margin-bottom:4px;
}
.five-collection-count{
  font-family:'Silkscreen',monospace;
  font-size:10px;
  color:#b0b8cc;
  margin-bottom:6px;
}

/* ========== SOCIALS ========== */
.treasury-socials{
  display:flex;
  justify-content:center;
  gap:16px;
  padding:20px 0 10px;
}
.treasury-socials a{
  display:block;
  width:36px;
  height:36px;
  border-radius:50%;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.15);
  transition:.2s;
}
.treasury-socials a:hover{
  border-color:var(--t-purple);
  box-shadow:0 0 12px rgba(192,132,252,.3);
  transform:translateY(-2px);
}
.treasury-socials img{
  width:100%;
  height:100%;
  object-fit:cover;
}

@media(max-width:720px){
  .five-buttons-row{
    grid-template-columns:repeat(3,1fr);
  }
  .five-collection-btn{
    padding:8px;
  }
  .five-collection-img{
    width:40px;
    height:40px;
  }
}
/* ========== GOALS ========== */
.goal{display:grid;grid-template-columns:28px 1fr auto;gap:6px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07);transition:.2s}
.goal:hover{background:rgba(255,255,255,.02);border-radius:4px;padding:7px 4px}.goal:last-child{border:0}
.goal i{display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--t-line);border-radius:50%;color:#d88bff;font-style:normal;font-size:12px}
.goal b{display:block;font-family:'Silkscreen',monospace;font-size:10px;font-weight:500;color:#e8e4f5}
.goal .xp{margin-top:4px}.goal em{color:#c883ff;font-family:'Rubik',sans-serif;font-size:7px;font-style:normal}
.goal-claim-btn{padding:4px 8px;border:1px solid var(--t-green);border-radius:4px;background:rgba(110,231,162,.1);color:var(--t-green);font-family:'Silkscreen',monospace;font-size:7px;cursor:pointer;transition:.2s}
.goal-claim-btn:hover{background:rgba(110,231,162,.2)}

/* ========== ACHIEVEMENTS ========== */
.achievements{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:8px}
.achievement{min-height:50px;padding:6px 4px;border:1px solid rgba(255,190,79,.25);border-radius:8px;background:linear-gradient(145deg,#1d1620,#080d17);transition:.2s;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.achievement.earned{border-color:rgba(255,215,0,.5);box-shadow:0 0 10px rgba(255,215,0,.08)}
.achievement.locked{opacity:.4;filter:grayscale(.6)}
.achievement i{display:block;font-size:40px !important;font-style:normal;line-height:1;margin-bottom:2px}
.achievement i img{width:40px !important;height:40px !important;object-fit:contain;display:inline-block;border-radius:6px}
.achievement b{display:block;margin:0;color:#ffe8b0;font-family:'Oswald',sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:0.3px;line-height:1.2}
.achievement small{display:none !important}

@media (max-width:720px){
  .achievements{grid-template-columns:repeat(3,1fr);gap:4px;padding:4px}
  .achievement{min-height:60px;padding:4px 2px}
  .achievement i{font-size:32px !important}
  .achievement i img{width:32px !important;height:32px !important}
  .achievement b{font-size:8px}
}

/* ========== SEASON ROW ========== */
.season-row{display:grid;grid-template-columns:1.15fr 1fr .9fr;gap:10px;margin-top:10px}
.season{padding:12px}.season .section-title{font-size:12px}
.season strong{display:block;margin:8px 0;color:#fff;font-family:'Press Start 2P',Georgia,serif;font-size:26px}
.season p{margin:0;color:#b0b8cc;font-family:'Rubik',sans-serif;font-size:11px}
.season-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}
.season-stats b{display:block;color:#fff;font-family:'Silkscreen',monospace;font-size:14px}
.season-stats span{color:var(--t-muted);font-family:'Rubik',sans-serif;font-size:10px}

/* ========== PROFILE ========== */
.profile-card{display:flex;gap:8px;align-items:center}
.profile-card .asset-slot{width:48px;height:56px;font-size:28px}
.profile-card b{display:block;font-family:'Silkscreen',monospace;font-size:15px;color:#f0edff}
.profile-card small{display:block;margin:3px 0 6px;color:var(--t-muted);font-family:'Rubik',sans-serif;font-size:11px}
.profile-card button{padding:6px 10px;border:1px solid #9651d6;border-radius:6px;background:#281642;color:#fff;font-family:'Silkscreen',monospace;font-size:11px;cursor:pointer;transition:.2s}
.profile-card button:hover{background:#3a1f5e}

/* ========== REFERRAL ========== */
.referral-block{padding:10px}
.referral-input-group{display:flex;gap:6px;margin:8px 0}
.referral-input{flex:1;padding:7px 10px;border:1px solid var(--t-line);border-radius:6px;background:rgba(18,26,45,.8);color:#e8e4f5;font-family:'Rubik',sans-serif;font-size:11px;outline:none}
.referral-input:focus{border-color:var(--t-purple)}
.referral-copy-btn{padding:7px 12px;border:1px solid var(--t-purple);border-radius:6px;background:#281642;color:#fff;font-family:'Silkscreen',monospace;font-size:11px;cursor:pointer;transition:.2s;white-space:nowrap}
.referral-copy-btn:hover{background:#3a1f5e}
.referral-stats{display:flex;gap:10px;margin-top:8px}
.referral-stat{text-align:center}.referral-stat b{display:block;font-family:'Silkscreen',monospace;font-size:14px;color:var(--t-purple)}
.referral-stat span{font-size:11px;color:#b0b8cc}

/* ========== LEADERBOARD MINI — КОМПАКТНЫЙ ========== */
.leaderboard-mini{padding:8px}
.leaderboard-mini .section-bar{margin-bottom:6px}
.leaderboard-mini .section-title{font-size:12px}
.leaderboard-mini .more{font-size:11px}
.lb-row{display:flex;align-items:center;gap:5px;padding:4px;border-bottom:1px solid rgba(255,255,255,.05);transition:.2s}
.lb-row:hover{background:rgba(255,255,255,.03);border-radius:4px}
.lb-row:last-child{border:0}
.lb-rank{width:20px;text-align:center;font-family:'Silkscreen',monospace;font-size:12px;font-weight:700;flex-shrink:0}
.lb-rank.top-1{color:#ffd700}.lb-rank.top-2{color:#d0d4e0}.lb-rank.top-3{color:#e8a35e}
.lb-avatar{width:22px;height:22px;border-radius:5px;overflow:hidden;border:1px solid rgba(255,255,255,.15);flex-shrink:0}
.lb-avatar img{width:100%;height:100%;object-fit:cover}
.lb-info{flex:1;min-width:0;overflow:hidden}
.lb-name{font-family:'Silkscreen',monospace;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#e8e4f5}
.lb-level{font-size:10px;color:#b0b8cc}
.lb-xp{font-family:'Silkscreen',monospace;font-size:11px;color:#d0a0ff;white-space:nowrap;flex-shrink:0}
.lb-you{border:1px solid rgba(192,132,252,.4);border-radius:6px;background:rgba(192,132,252,.08);margin-top:3px}

/* ========== EMPTY STATES ========== */
.empty-state{text-align:center;padding:20px 12px;color:var(--t-muted)}
.empty-state-icon{font-size:32px;margin-bottom:6px}
.empty-state-text{font-family:'Silkscreen',monospace;font-size:12px;margin-bottom:3px;color:#c0c8dc}
.empty-state-sub{font-family:'Rubik',sans-serif;font-size:12px;color:#8a94ad}

/* ========== ACTION BUTTONS ========== */
.action-buttons{display:flex;gap:6px;margin-top:8px}
.action-btn{padding:6px 12px;border-radius:6px;font-family:'Silkscreen',monospace;font-size:7px;cursor:pointer;transition:.2s;flex:1;text-align:center}
.action-btn.deposit{border:1px solid var(--t-green);background:rgba(110,231,162,.1);color:var(--t-green)}
.action-btn.deposit:hover{background:rgba(110,231,162,.2)}
.action-btn.withdraw{border:1px solid var(--t-gold);background:rgba(255,210,100,.1);color:var(--t-gold)}
.action-btn.withdraw:hover{background:rgba(255,210,100,.2)}

/* ========== MODAL ========== */
.treasury-modal-overlay{position:fixed;inset:0;z-index:9999;background:rgba(3,5,11,.85);backdrop-filter:blur(4px);display:grid;place-items:center;padding:16px;animation:fadeIn .2s ease}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.treasury-modal{width:100%;background:linear-gradient(145deg,#141e34,#0a1020);border:1px solid rgba(185,110,255,.3);border-radius:14px;overflow:hidden;animation:slideUp .3s ease;box-shadow:0 0 30px rgba(192,132,252,.2)}
@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
.treasury-modal-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06)}
.treasury-modal-title{font-family:'Press Start 2P',Georgia,serif;font-size:13px;color:#d0a0ff;letter-spacing:1px;text-transform:uppercase}
.treasury-modal-close{width:26px;height:26px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:transparent;color:var(--t-muted);font-size:12px;cursor:pointer;transition:.2s}
.treasury-modal-close:hover{background:rgba(255,100,50,.1);border-color:var(--t-red);color:var(--t-red)}
.treasury-modal-body{padding:14px;max-height:85vh;overflow-y:auto}
.treasury-modal-body::-webkit-scrollbar{width:3px}.treasury-modal-body::-webkit-scrollbar-track{background:transparent}
.treasury-modal-body::-webkit-scrollbar-thumb{background:rgba(192,132,252,.3);border-radius:3px}

/* ========== PICKER ========== */
.picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.picker-item{padding:8px 6px;border:1px solid rgba(255,255,255,.08);border-radius:8px;text-align:center;cursor:pointer;transition:.2s}
.picker-item:hover{border-color:var(--t-purple);background:rgba(192,132,252,.05)}
.picker-item.selected{border-color:var(--t-gold);background:rgba(255,215,0,.05)}
.picker-item-icon{font-size:24px;margin-bottom:4px}.picker-item-name{font-family:'Silkscreen',monospace;font-size:7px;color:var(--t-muted)}

/* ========== MODAL TABS ========== */
.modal-tabs{display:flex;gap:0;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.06)}
.modal-tab{padding:6px 12px;border:0;background:none;color:var(--t-muted);font-family:'Silkscreen',monospace;font-size:12px;cursor:pointer;transition:.2s;border-bottom:2px solid transparent}
.modal-tab.active{color:var(--t-purple);border-bottom-color:var(--t-purple)}

/* ========== STREAK ========== */
.streak-section{padding:10px}
.streak-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.streak-days{font-family:'Press Start 2P',Georgia,serif;font-size:20px;color:#ffe08a}
.streak-days small{font-size:12px;color:var(--t-muted);display:block;margin-top:3px}
.streak-rewards-row{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px}
.streak-reward-item{flex-shrink:0;width:70px;padding:8px 6px;border:1px solid rgba(255,255,255,.1);border-radius:8px;text-align:center;transition:.2s;cursor:pointer}
.streak-reward-item.claimed{background:rgba(110,231,162,.05);border-color:rgba(110,231,162,.2);opacity:.7}
.streak-reward-item.available{background:rgba(255,215,0,.05);border-color:rgba(255,215,0,.3);animation:availableGlow 2s ease-in-out infinite}
.streak-reward-item.locked{opacity:.4}
@keyframes availableGlow{0%,100%{box-shadow:0 0 6px rgba(255,215,0,.1)}50%{box-shadow:0 0 12px rgba(255,215,0,.3)}}
.streak-reward-item .reward-icon{font-size:22px;margin-bottom:4px}
.streak-reward-item .reward-day{font-family:'Silkscreen',monospace;font-size:12px;margin-bottom:3px;color:#c0c8dc}
.streak-reward-item .reward-amount{font-family:'Silkscreen',monospace;font-size:12px;color:#ffe08a}
.streak-reward-item .reward-status{font-size:12px;margin-top:3px}


/* ========== COLLECTION MODAL — FULLSCREEN ========== */
.collection-modal-container{
  display:flex;
  flex-direction:column;
  height:90vh;
}
.col-modal-topbar{
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border-bottom:1px solid rgba(255,255,255,.06);
  flex-shrink:0;
}
.col-modal-title{font-family:'Press Start 2P',Georgia,serif;font-size:13px;color:#d0a0ff;flex-shrink:0}
/* Мини-коллекции в топбаре */
.col-topbar-badges{
  display:flex;
  gap:5px;
  flex-wrap:wrap;
  flex:1;
  justify-content:flex-end;
}
.col-topbar-badge{
  display:flex;
  align-items:center;
  gap:4px;
  padding:3px 8px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:6px;
  background:rgba(8,13,25,.6);
  cursor:pointer;
  transition:.2s;
  font-size:11px;
  white-space:nowrap;
}
.col-topbar-badge:hover{
  border-color:var(--t-purple);
  background:rgba(192,132,252,.08);
}
.col-topbar-badge-emoji{font-size:14px}
.col-topbar-badge-count{font-family:'Silkscreen',monospace;font-size:11px;color:var(--t-text)}
.col-topbar-badge-count small{font-size:7px;color:var(--t-muted)}

.col-modal-close-btn{
  width:26px;height:26px;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.1);border-radius:6px;
  background:transparent;color:var(--t-muted);cursor:pointer;font-size:12px;flex-shrink:0;
}
.col-modal-close-btn:hover{color:var(--t-red);border-color:var(--t-red)}

.col-modal-content{
  display:flex;
  flex:1;
  overflow:hidden;
  min-height:0;
}
.col-left-panel{
  width:300px;
  flex-shrink:0;
  padding:14px;
  border-right:1px solid rgba(255,255,255,.06);
  overflow-y:auto;
}
.col-right-panel{
  flex:1;
  padding:10px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  min-width:0;
}

/* Категории + счётчик */
.col-categories-row{
  display:flex;
  align-items:center;
  gap:4px;
  margin-bottom:10px;
  flex-wrap:wrap;
  flex-shrink:0;
}
.col-modal-count{font-family:'Silkscreen',monospace;font-size:12px;color:#c0c8dc}
.col-cat-btn{padding:4px 8px;border:1px solid rgba(255,255,255,.1);border-radius:5px;background:transparent;color:#b0b8cc;font-family:'Silkscreen',monospace;font-size:11px;cursor:pointer;transition:.2s;white-space:nowrap}
.col-cat-btn.active,.col-cat-btn:hover{border-color:#d0a0ff;color:#d0a0ff;background:rgba(192,132,252,.08)}
.col-categories-count{font-family:'Silkscreen',monospace;font-size:11px;color:#c0c8dc;margin-left:auto;white-space:nowrap}

/* Сетка */
.col-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(65px,1fr));
  gap:5px;
  overflow-y:auto;
  flex:1;
  padding-right:4px;
  align-content:start;
}
.col-grid::-webkit-scrollbar{width:3px}
.col-grid::-webkit-scrollbar-thumb{background:rgba(192,132,252,.3);border-radius:3px}

/* Карточка */
.col-grid-card{
  aspect-ratio:1;
  border-radius:7px;
  cursor:pointer;
  transition:.15s;
  position:relative;
  overflow:hidden;
}
.col-grid-card:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(192,132,252,.15);z-index:1}
.col-grid-card.selected{border-color:var(--t-gold)!important;box-shadow:0 0 12px rgba(255,215,0,.3)}
.col-grid-img{width:100%;height:100%;display:grid;place-items:center;padding:6px}
.col-grid-img img{width:72%;height:72%;object-fit:contain}
.col-grid-card.locked .col-grid-img{opacity:.3;filter:grayscale(1)}
.col-grid-number{position:absolute;bottom:2px;right:4px;font-family:'Silkscreen',monospace;font-size:12px;color:#8a94ad}
.col-grid-stars{
  position:absolute;
  top:2px;
  left:4px;
  font-size:7px;
}
.col-grid-status{
  position:absolute;
  top:3px;
  left:3px;
  font-size:12px;
}

/* Левая панель — карточка */
.col-item-display{text-align:center;position:relative}
.col-item-glow{
  position:absolute;
  inset:-15px;
  border-radius:50%;
  opacity:.25;
  pointer-events:none;
}
.col-item-image{
  width:240px;
  height:240px;
  margin:0 auto;
  display:grid;
  place-items:center;
  animation:itemFloat 3s ease-in-out infinite;
}
@keyframes itemFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.col-item-image img{width:85%;height:85%;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(192,132,252,.4))}
.col-item-status-flag{
  position:absolute;
  top:8px;
  left:8px;
  font-size:20px;
}
.col-item-owners-block{margin-top:12px}
.col-item-owners-row{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:11px;color:#c0c8dc}
.col-item-owners-row span:first-child{color:#b0b8cc}
.col-item-owners-row span:last-child{font-family:'Silkscreen',monospace;font-size:11px;color:#e8e4f5}
.col-item-bonuses{
  display:flex;
  gap:5px;
  justify-content:center;
  flex-wrap:wrap;
  margin:10px 0;
}
.col-bonus-tag{padding:3px 8px;border-radius:4px;font-family:'Silkscreen',monospace;font-size:11px;background:rgba(141,240,181,.12);color:var(--t-green);border:1px solid rgba(141,240,181,.25)}
.col-item-sources{margin-top:8px}
.col-source{display:flex;align-items:center;gap:5px;padding:5px 7px;border-radius:5px;font-size:12px;margin-bottom:3px;border:1px solid rgba(255,255,255,.07);color:#c0c8dc}
.col-source.obtained{color:var(--t-green);background:rgba(110,231,162,.05);border-color:rgba(110,231,162,.2)}
.col-source.locked{color:var(--t-muted);opacity:.5}
.col-source.available{color:var(--t-gold);border-color:rgba(255,215,0,.2);cursor:pointer}
.col-source-chance{font-size:12px;color:#b0b8cc;margin-left:auto}

.col-progress-footer{
  border-top:1px solid rgba(255,255,255,.06);
  padding:8px 10px;
  display:flex;
  align-items:center;
  gap:8px;
  flex-shrink:0;
}
.col-progress-bar{flex:1}
.col-progress-text{font-family:'Silkscreen',monospace;font-size:12px;color:#c0c8dc;white-space:nowrap}
.col-bonuses-footer{
  display:flex;
  gap:5px;
  margin-top:4px;
}
.col-bonus-footer-tag{padding:3px 8px;border-radius:5px;font-family:'Silkscreen',monospace;font-size:12px;border:1px solid}
.col-bonus-footer-tag.bronze{color:var(--bronze);border-color:rgba(205,127,50,.3);background:rgba(205,127,50,.05)}
.col-bonus-footer-tag.silver{color:var(--silver);border-color:rgba(192,192,192,.3);background:rgba(192,192,192,.05)}
.col-bonus-footer-tag.gold{color:var(--gold-rank);border-color:rgba(255,215,0,.3);background:rgba(255,215,0,.05)}

/* ========== MOBILE ========== */
@media(max-width:720px){
  .collection-modal-container{height:95vh}
  .col-modal-topbar{padding:6px 8px;gap:4px}
  .col-modal-title{font-size:11px}
  .col-topbar-badge{padding:2px 5px;font-size:7px}
  .col-topbar-badge-emoji{font-size:11px}
  .col-topbar-badge-count{font-size:7px}
  .col-modal-content{flex-direction:column}
  .col-left-panel{width:100%;border-right:0;border-bottom:1px solid rgba(255,255,255,.06);padding:10px;max-height:38%;overflow-y:auto;flex-shrink:0}
  .col-right-panel{flex:1;padding:8px;min-height:0}
  .col-item-image{width:200px;height:200px}
  .col-item-status-flag{font-size:16px;top:4px;left:4px}
  .col-grid{grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:4px}
  .col-grid-img{padding:4px}
  .col-grid-img img{width:68%;height:68%}
}
/* ========== QUESTS ========== */
.quests-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px}
.quest-card{padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(8,13,25,.6);transition:.2s}
.quest-card.completed{border-color:rgba(110,231,162,.3);background:rgba(110,231,162,.03)}
.quest-card.claimed{opacity:.6}
.quest-card-header{display:flex;align-items:center;gap:6px;margin-bottom:8px}
.quest-card-icon{font-size:18px}.quest-card-title{font-family:'Silkscreen',monospace;font-size:11px;flex:1;color:#e8e4f5}
.quest-dots{display:flex;gap:3px;margin-bottom:8px}
.quest-dot{width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.2)}
.quest-dot.filled{background:var(--t-purple);border-color:var(--t-purple)}
.quest-reward{display:flex;align-items:center;justify-content:space-between}
.quest-reward-badge{padding:2px 6px;border-radius:4px;font-family:'Silkscreen',monospace;font-size:12px;background:rgba(192,132,252,.12);color:#d0a0ff}
.quest-claim-btn{padding:4px 10px;border:1px solid var(--t-green);border-radius:4px;background:rgba(110,231,162,.1);color:var(--t-green);font-family:'Silkscreen',monospace;font-size:7px;cursor:pointer;transition:.2s}
.quest-claim-btn:hover{background:rgba(110,231,162,.2)}
.quest-claimed-badge{font-family:'Silkscreen',monospace;font-size:7px;color:var(--t-green)}

/* ========== TOAST ========== */
#treasury-toast{font-size:13px;padding:10px 18px;background:#1a2440;color:#ffe08a;border:1px solid rgba(192,132,252,.4)}

/* ========== MOBILE ========== */
/* ========== MOBILE ========== */
.treasury-mobile {
    display: none; /* Скрыт на десктопе */
}

@media(max-width:1050px){
  .treasury{padding:0 10px 24px}.treasury-links{gap:10px}
  .treasure-grid{grid-template-columns:1fr 1fr}.goals{grid-column:1/-1}
  .showcase-grid{grid-template-columns:repeat(2,1fr)}.quests-grid{grid-template-columns:1fr 1fr}
  .collection-tabs{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:720px){
  .treasury{padding:0 8px 80px !important}
  .treasury-nav{height:52px}.treasury-brand{min-width:0}
  .treasury-brand b{font-size:22px}.treasury-brand small,.treasury-links{display:none}
  .treasury-user{display:flex !important;margin-left:auto !important;padding:4px 8px !important;border:1px solid rgba(192,132,252,0.2) !important;border-radius:8px !important;background:rgba(18,26,45,0.8) !important;min-width:auto !important;gap:6px !important}
  .treasury-user-avatar{width:30px !important;height:30px !important}
  .treasury-user b{font-size:11px !important}
  .treasury-user small{font-size:9px !important;margin:0 !important}
  .treasury-user .xp{width:50px !important;height:3px !important}
  .treasury-brand-mark{width:22px !important;height:22px !important}
  
  .treasury-hero{min-height:140px;margin:8px 0;border-radius:10px}
  .treasury-hero-copy{padding:12px}
  .treasury-hero h1{font-size:18px}.treasury-hero p{font-size:10px;max-width:200px;margin:4px 0 10px}
  .treasury-hero:after{font-size:40px;right:8%;top:20%}
  .treasury-stats{gap:8px}.treasury-stat{gap:4px;padding-right:6px}
  .treasury-stat i{font-size:12px}.treasury-stat b{font-size:11px}.treasury-stat span{font-size:10px}
  .collection-tabs{display:flex;overflow:auto;gap:6px}
  .collection-tab{min-width:110px;min-height:80px}
  .collection-icon{height:36px}
  .collection-tab b{font-size:10px}.collection-tab small{font-size:7px}
  .treasure-grid,.showcase-grid,.season-row{display:block}
  .treasure-grid>.panel,.showcase>.panel,.season-row>.panel{margin-bottom:8px}
  .achievements{grid-template-columns:repeat(2,1fr)}
  .achievement{min-height:50px}
  .showcase-grid{grid-template-columns:repeat(2,1fr)}
  .showcase{min-height:100px}
  
  /* Мобильная навигация — ВСЕГДА ВНИЗУ */
  .treasury-mobile {
    display: flex !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 999 !important;
    justify-content: space-around !important;
    padding: 6px 4px max(10px, env(safe-area-inset-bottom)) !important;
    border-top: 1px solid var(--t-line) !important;
    background: rgba(3, 5, 11, 0.97) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    box-shadow: 0 -4px 30px rgba(0, 0, 0, 0.4) !important;
  }
  
  .treasury-mobile button {
    display: grid !important;
    gap: 2px !important;
    place-items: center !important;
    border: 0 !important;
    background: none !important;
    color: #a9a8bb !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 8px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    cursor: pointer !important;
    padding: 4px 8px !important;
    min-width: 44px !important;
    transition: all 0.2s ease !important;
    -webkit-tap-highlight-color: transparent !important;
  }
  
  .treasury-mobile button i {
    font-style: normal !important;
    font-size: 18px !important;
    display: block !important;
  }
  
  .treasury-mobile button.is-active {
    color: #fff !important;
  }
  
  .treasury-mobile button.is-active i {
    color: #d788ff !important;
    text-shadow: 0 0 20px rgba(215, 136, 255, 0.3) !important;
  }
  
  .treasury-mobile button:active {
    transform: scale(0.92) !important;
  }
  
  .picker-grid{grid-template-columns:repeat(3,1fr)}
}
/* ============================================================
   НОВЫЕ УЛУЧШЕНИЯ ДИЗАЙНА v4
   ============================================================ */

/* ---------- 1. ШРИФТЫ ---------- */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Roboto+Condensed:wght@300;400;700&display=swap');

/* Применяем новые шрифты */
.treasury,
.treasury * {
    font-family: inherit;
}

/* Основной текст — Roboto Condensed */
.treasury,
.treasury .find-row span,
.treasury .treasury-stat span,
.treasury .season p,
.treasury .profile-metric-label,
.treasury .empty-state-text,
.treasury .empty-state-sub {
    font-family: 'Roboto Condensed', sans-serif;
}

/* UI заголовки — Oswald (МОИ КОЛЛЕКЦИИ, ИСТОРИЯ и т.д.) */
.treasury .section-title,
.treasury .treasury-links button,
.treasury .five-collection-name,
.treasury .achievement b,
.treasury .mini-action-title,
.treasury .quest-card-title,
.treasury .lb-name,
.treasury .profile-new-name {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

/* Fantasy заголовки — оставляем Press Start 2P только для "МОЯ СОКРОВИЩНИЦА" */
.treasury-hero h1,
.treasury-brand b,
.treasury .treasury-modal-title,
.treasury .collection-modal-title,
.treasury .treasury-error-text,
.treasury .treasury-loading-text {
    font-family: 'Press Start 2P', Georgia, serif;
}

/* ---------- 2. SMOOTH SCROLL & TRANSITIONS ---------- */
.treasury {
    scroll-behavior: smooth;
}

/* Fade-in при загрузке */
.treasury-shell {
    animation: treasuryFadeIn 0.6s ease forwards;
    opacity: 0;
}

@keyframes treasuryFadeIn {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Скелетоны для загрузки */
.skeleton {
    background: linear-gradient(90deg, rgba(255,255,255,0.03) 25%, rgba(255,255,255,0.08) 50%, rgba(255,255,255,0.03) 75%);
    background-size: 200% 100%;
    animation: skeletonShimmer 1.5s ease-in-out infinite;
    border-radius: 6px;
}

@keyframes skeletonShimmer {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ---------- 3. HOVER ЭФФЕКТЫ С ТАКТИЛЬНОЙ ОБРАТНОЙ СВЯЗЬЮ ---------- */
.treasury .panel,
.treasury .five-collection-btn,
.treasury .treasury-user,
.treasury .mini-action-panel,
.treasury .col-grid-card,
.treasury .treasury-hero,
.treasury .treasury-links button,
.treasury .treasury-socials a,
.treasury .referral-copy-btn,
.treasury .profile-actions button {
    transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1),
                box-shadow 0.3s ease,
                border-color 0.3s ease,
                background 0.3s ease;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

/* Desktop hover */
@media (hover: hover) {
    .treasury .panel:hover,
    .treasury .five-collection-btn:hover,
    .treasury .mini-action-panel:hover {
        transform: translateY(-3px) scale(1.01);
        box-shadow: 0 8px 30px rgba(192, 132, 252, 0.15);
    }

    .treasury .treasury-user:hover {
        transform: scale(1.02);
        box-shadow: 0 0 25px rgba(192, 132, 252, 0.15);
    }

    .treasury .treasury-links button:hover {
        transform: translateY(-2px);
        color: #fff;
    }

    .treasury .col-grid-card:hover {
        transform: translateY(-4px) scale(1.04);
        box-shadow: 0 8px 25px rgba(192, 132, 252, 0.2);
        z-index: 2;
    }

    .treasury .treasury-socials a:hover {
        transform: translateY(-4px) scale(1.1);
    }

    .treasury .referral-copy-btn:hover {
        transform: scale(1.05);
        background: rgba(192, 132, 252, 0.2);
    }
}

/* Mobile touch feedback (активация при тапе) */
@media (hover: none) {
    .treasury .panel:active,
    .treasury .five-collection-btn:active,
    .treasury .mini-action-panel:active,
    .treasury .treasury-user:active,
    .treasury .col-grid-card:active {
        transform: scale(0.96);
        transition: transform 0.1s ease;
    }
}

/* ---------- 4. PARTICLE EFFECTS (ЗВЁЗДЫ И ИСКРЫ) ---------- */
.treasury-particles {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}

.treasury-particle {
    position: absolute;
    width: 2px;
    height: 2px;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    animation: particleFloat linear infinite;
    box-shadow: 0 0 4px rgba(192, 132, 252, 0.2);
}

.treasury-particle:nth-child(odd) {
    background: rgba(192, 132, 252, 0.3);
    box-shadow: 0 0 6px rgba(192, 132, 252, 0.2);
}

@keyframes particleFloat {
    0% { transform: translateY(100vh) translateX(0px) scale(0.5); opacity: 0; }
    10% { opacity: 1; }
    90% { opacity: 1; }
    100% { transform: translateY(-10vh) translateX(30px) scale(1.2); opacity: 0; }
}

/* Редкие искры (более яркие) */
.treasury-particle.sparkle {
    width: 3px;
    height: 3px;
    background: #ffd700;
    box-shadow: 0 0 10px rgba(255, 215, 0, 0.4);
    animation-duration: 8s;
}

/* ---------- 5. CTA ВЫДЕЛЕНИЕ - КНОПКА АРТЕФАКТЫ ---------- */
.five-collection-btn[data-collection="artifacts"] {
    border: 2px solid rgba(255, 107, 107, 0.6);
    position: relative;
    animation: ctaPulse 2s ease-in-out infinite;
    background: linear-gradient(145deg, rgba(255, 107, 107, 0.08), rgba(192, 132, 252, 0.05));
}

.five-collection-btn[data-collection="artifacts"]::before {
    content: '';
    position: absolute;
    inset: -2px;
    border-radius: 12px;
    background: linear-gradient(135deg, #ff6b6b, #c084fc, #ff6b6b);
    background-size: 300% 300%;
    animation: ctaBorderGlow 3s ease-in-out infinite;
    z-index: -1;
    filter: blur(4px);
    opacity: 0.3;
}

@keyframes ctaPulse {
    0%, 100% { 
        border-color: rgba(255, 107, 107, 0.6);
        box-shadow: 0 0 15px rgba(255, 107, 107, 0.1);
    }
    50% { 
        border-color: rgba(255, 107, 107, 1);
        box-shadow: 0 0 30px rgba(255, 107, 107, 0.25);
    }
}

@keyframes ctaBorderGlow {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

.five-collection-btn[data-collection="artifacts"] .five-collection-count {
    color: #ff6b6b;
    font-weight: 700;
}

/* ---------- 6. КОНТРАСТНЫЕ РАЗМЕРЫ ШРИФТОВ ---------- */
.treasury-hero h1 {
    font-size: clamp(24px, 4vw, 38px);
    text-shadow: 0 0 30px rgba(187, 93, 255, 0.6);
}

.section-title {
    font-size: clamp(16px, 2vw, 22px);
    letter-spacing: 1.5px;
}

.treasury .five-collection-name {
    font-size: clamp(11px, 1.2vw, 16px);
}

.treasury .achievement b {
    font-size: clamp(10px, 1vw, 14px);
}

.treasury .lb-name {
    font-size: clamp(11px, 1.2vw, 15px);
}

/* ---------- 7. ТЕКСТУРЫ И ГРАДИЕНТЫ ---------- */
/* Шумовая текстура */
.treasury::before {
    content: '';
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    opacity: 0.03;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size: 256px 256px;
}

/* Многослойный градиент для фона */
.treasury {
    background: 
        radial-gradient(circle at 20% 30%, rgba(192, 132, 252, 0.04) 0%, transparent 40%),
        radial-gradient(circle at 80% 70%, rgba(255, 215, 0, 0.02) 0%, transparent 35%),
        radial-gradient(circle at 55% 0%, #251d45 0%, #080d1a 46%);
    position: relative;
    z-index: 1;
}

/* Glow-эффекты вокруг интерактивных элементов */
.treasury .treasury-hero {
    box-shadow: 0 0 40px rgba(192, 132, 252, 0.05), inset 0 0 60px rgba(192, 132, 252, 0.02);
}

.treasury .treasury-user {
    box-shadow: 0 0 20px rgba(192, 132, 252, 0.03);
}

.treasury .panel {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
}

/* ---------- 8. STAGGER-АНИМАЦИЯ ДЛЯ КАРТОЧЕК С ПЕРЕВОРОТОМ ---------- */
.col-grid-card {
    animation: cardFlipIn 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
    opacity: 0;
    transform: perspective(400px) rotateY(90deg) scale(0.8);
    transform-origin: center;
    backface-visibility: hidden;
}

@keyframes cardFlipIn {
    0% {
        opacity: 0;
        transform: perspective(400px) rotateY(90deg) scale(0.6);
    }
    100% {
        opacity: 1;
        transform: perspective(400px) rotateY(0deg) scale(1);
    }
}

.col-grid-card:nth-child(1) { animation-delay: 0.02s; }
.col-grid-card:nth-child(2) { animation-delay: 0.04s; }
.col-grid-card:nth-child(3) { animation-delay: 0.06s; }
.col-grid-card:nth-child(4) { animation-delay: 0.08s; }
.col-grid-card:nth-child(5) { animation-delay: 0.10s; }
.col-grid-card:nth-child(6) { animation-delay: 0.12s; }
.col-grid-card:nth-child(7) { animation-delay: 0.14s; }
.col-grid-card:nth-child(8) { animation-delay: 0.16s; }
.col-grid-card:nth-child(9) { animation-delay: 0.18s; }
.col-grid-card:nth-child(10) { animation-delay: 0.20s; }
.col-grid-card:nth-child(11) { animation-delay: 0.22s; }
.col-grid-card:nth-child(12) { animation-delay: 0.24s; }
.col-grid-card:nth-child(13) { animation-delay: 0.26s; }
.col-grid-card:nth-child(14) { animation-delay: 0.28s; }
.col-grid-card:nth-child(15) { animation-delay: 0.30s; }
.col-grid-card:nth-child(16) { animation-delay: 0.32s; }
.col-grid-card:nth-child(17) { animation-delay: 0.34s; }
.col-grid-card:nth-child(18) { animation-delay: 0.36s; }
.col-grid-card:nth-child(19) { animation-delay: 0.38s; }
.col-grid-card:nth-child(20) { animation-delay: 0.40s; }

/* ---------- 9. EMPTY STATE С ПРИЗЫВОМ К ДЕЙСТВИЮ ---------- */
.empty-state-encouraging {
    text-align: center;
    padding: 30px 20px;
    background: linear-gradient(145deg, rgba(192, 132, 252, 0.05), rgba(8, 13, 26, 0.8));
    border: 1px solid rgba(192, 132, 252, 0.2);
    border-radius: 12px;
    margin: 8px 0;
}

.empty-state-encouraging .empty-icon {
    font-size: 48px;
    display: block;
    margin-bottom: 12px;
    animation: emptyIconFloat 3s ease-in-out infinite;
}

@keyframes emptyIconFloat {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-8px) scale(1.05); }
}

.empty-state-encouraging h3 {
    font-family: 'Oswald', sans-serif;
    font-size: clamp(18px, 2.5vw, 28px);
    color: #e8e4f5;
    margin: 0 0 8px 0;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.empty-state-encouraging p {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: clamp(13px, 1.2vw, 16px);
    color: #b0b8cc;
    margin: 0 0 16px 0;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.empty-state-encouraging .action-btn {
    display: inline-block;
    padding: 12px 28px;
    border: none;
    border-radius: 10px;
    background: linear-gradient(135deg, #7c3aed, #a855f7);
    color: #fff;
    font-family: 'Oswald', sans-serif;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(124, 58, 237, 0.3);
}

.empty-state-encouraging .action-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 8px 30px rgba(124, 58, 237, 0.4);
}

.empty-state-encouraging .action-btn:active {
    transform: scale(0.96);
}

/* ---------- 10. CONFETTI ЭФФЕКТ ---------- */
.confetti-container {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 99999;
    overflow: hidden;
}

.confetti-piece {
    position: absolute;
    width: 10px;
    height: 10px;
    top: -10px;
    animation: confettiFall linear forwards;
}

@keyframes confettiFall {
    0% {
        transform: translateY(0) rotate(0deg) scale(1);
        opacity: 1;
    }
    100% {
        transform: translateY(110vh) rotate(720deg) scale(0.3);
        opacity: 0;
    }
}

/* ---------- 11. АРТЕФАКТ-ПОЛУЧЕНИЕ (сияющая награда) ---------- */
.artifact-reward-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(3, 5, 11, 0.6);
    backdrop-filter: blur(8px);
    animation: rewardFadeIn 0.5s ease forwards;
}

@keyframes rewardFadeIn {
    from { opacity: 0; backdrop-filter: blur(0px); }
    to { opacity: 1; backdrop-filter: blur(8px); }
}

.artifact-reward-card {
    background: linear-gradient(145deg, #1e1a3a, #0f0f2e);
    border: 2px solid rgba(255, 215, 0, 0.4);
    border-radius: 20px;
    padding: 30px 40px;
    text-align: center;
    max-width: 400px;
    width: 90%;
    animation: rewardCardPop 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
    transform: scale(0.5) rotate(-5deg);
    opacity: 0;
}

@keyframes rewardCardPop {
    0% {
        transform: scale(0.5) rotate(-5deg);
        opacity: 0;
    }
    100% {
        transform: scale(1) rotate(0deg);
        opacity: 1;
    }
}

.artifact-reward-icon {
    font-size: 64px;
    display: block;
    animation: rewardIconShine 1.5s ease-in-out infinite;
}

@keyframes rewardIconShine {
    0%, 100% { 
        transform: scale(1) rotate(0deg);
        filter: drop-shadow(0 0 20px rgba(255, 215, 0, 0.3));
    }
    50% { 
        transform: scale(1.15) rotate(5deg);
        filter: drop-shadow(0 0 40px rgba(255, 215, 0, 0.6));
    }
}

.artifact-reward-name {
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    color: #ffe08a;
    margin: 12px 0 4px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.artifact-reward-rarity {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 14px;
    color: #b0b8cc;
    margin-bottom: 8px;
}

.artifact-reward-desc {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 14px;
    color: #c0c8dc;
    margin-bottom: 16px;
}

.artifact-reward-close {
    padding: 10px 30px;
    border: 1px solid rgba(255, 215, 0, 0.3);
    border-radius: 8px;
    background: rgba(255, 215, 0, 0.05);
    color: #ffe08a;
    font-family: 'Oswald', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.artifact-reward-close:hover {
    background: rgba(255, 215, 0, 0.15);
    transform: scale(1.05);
}

.artifact-reward-close:active {
    transform: scale(0.95);
}

/* ---------- 12. ТУТОРИАЛ (всплывашка справа снизу) ---------- */
.tutorial-popup {
    position: fixed;
    bottom: 80px;
    right: 16px;
    z-index: 9998;
    max-width: 320px;
    width: 90%;
    background: linear-gradient(145deg, #1e1a3a, #0f0f2e);
    border: 1px solid rgba(192, 132, 252, 0.3);
    border-radius: 16px;
    padding: 16px 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
    animation: tutorialSlideIn 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
    transform: translateX(120%) scale(0.8);
    opacity: 0;
}

@keyframes tutorialSlideIn {
    0% {
        transform: translateX(120%) scale(0.8);
        opacity: 0;
    }
    100% {
        transform: translateX(0) scale(1);
        opacity: 1;
    }
}

.tutorial-popup.hidden {
    animation: tutorialSlideOut 0.3s ease forwards;
}

@keyframes tutorialSlideOut {
    0% {
        transform: translateX(0) scale(1);
        opacity: 1;
    }
    100% {
        transform: translateX(120%) scale(0.8);
        opacity: 0;
    }
}

.tutorial-popup-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

.tutorial-popup-icon {
    font-size: 24px;
}

.tutorial-popup-title {
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    color: #ffe08a;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.tutorial-popup-text {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 13px;
    color: #c0c8dc;
    line-height: 1.4;
    margin-bottom: 12px;
}

.tutorial-popup-actions {
    display: flex;
    gap: 8px;
}

.tutorial-popup-btn {
    padding: 6px 16px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.03);
    color: #b0b8cc;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.tutorial-popup-btn:hover {
    border-color: rgba(192, 132, 252, 0.3);
    background: rgba(192, 132, 252, 0.05);
    color: #fff;
}

.tutorial-popup-btn.primary {
    border-color: rgba(192, 132, 252, 0.3);
    background: rgba(192, 132, 252, 0.1);
    color: #d19aff;
}

.tutorial-popup-btn.primary:hover {
    background: rgba(192, 132, 252, 0.2);
}

/* ---------- 13. УВЕДОМЛЕНИЕ "ДОСТИЖЕНИЕ ДНЯ" ---------- */
.daily-achievement-notice {
    padding: 10px 14px;
    background: linear-gradient(90deg, rgba(255, 215, 0, 0.05), rgba(192, 132, 252, 0.05));
    border: 1px solid rgba(255, 215, 0, 0.15);
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.daily-achievement-notice:hover {
    border-color: rgba(255, 215, 0, 0.3);
    background: rgba(255, 215, 0, 0.05);
}

.daily-ach-icon {
    font-size: 24px;
    flex-shrink: 0;
}

.daily-ach-info {
    flex: 1;
}

.daily-ach-label {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 11px;
    color: #b0b8cc;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.daily-ach-name {
    font-family: 'Oswald', sans-serif;
    font-size: 14px;
    color: #ffe08a;
}

.daily-ach-progress {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 12px;
    color: #b0b8cc;
    flex-shrink: 0;
}

/* ---------- 14. GRAPHIC PROGRESS (ВИЗУАЛИЗАЦИЯ РОСТА XP) ---------- */
.xp-graph-container {
    padding: 8px 0;
}

.xp-graph-bar {
    height: 6px;
    border-radius: 4px;
    background: #202a44;
    overflow: hidden;
    position: relative;
}

.xp-graph-bar-fill {
    height: 100%;
    border-radius: 4px;
    background: linear-gradient(90deg, #7c3aed, #a855f7, #e879f9);
    transition: width 1.5s cubic-bezier(0.34, 1.56, 0.64, 1);
    position: relative;
}

.xp-graph-bar-fill::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    animation: xpShine 2s ease-in-out infinite;
}

@keyframes xpShine {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

.xp-graph-labels {
    display: flex;
    justify-content: space-between;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 10px;
    color: #b0b8cc;
    margin-top: 4px;
}

/* ---------- 15. СОСТОЯНИЯ ОШИБКИ ---------- */
.treasury-error-state {
    padding: 20px;
    text-align: center;
    background: rgba(255, 100, 50, 0.03);
    border: 1px solid rgba(255, 100, 50, 0.15);
    border-radius: 10px;
    margin: 8px 0;
}

.treasury-error-state .error-icon {
    font-size: 32px;
    display: block;
    margin-bottom: 8px;
}

.treasury-error-state .error-title {
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    color: #ff8a6b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.treasury-error-state .error-desc {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 13px;
    color: #b0b8cc;
    margin: 4px 0 12px;
}

.treasury-error-state .error-btn {
    padding: 8px 20px;
    border: 1px solid rgba(255, 100, 50, 0.3);
    border-radius: 6px;
    background: rgba(255, 100, 50, 0.05);
    color: #ff8a6b;
    font-family: 'Oswald', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.3s ease;
}

.treasury-error-state .error-btn:hover {
    background: rgba(255, 100, 50, 0.1);
    transform: scale(1.02);
}

/* ---------- 16. АДАПТИВНОСТЬ ДЛЯ МОБИЛЬНЫХ ---------- */
@media (max-width: 720px) {
    .tutorial-popup {
        bottom: 80px;
        right: 8px;
        max-width: calc(100% - 16px);
        padding: 14px 16px;
    }
    
    .artifact-reward-card {
        padding: 20px 24px;
    }
    
    .artifact-reward-icon {
        font-size: 48px;
    }
    
    .artifact-reward-name {
        font-size: 20px;
    }
    
    .confetti-piece {
        width: 6px;
        height: 6px;
    }
    
    .daily-achievement-notice {
        padding: 8px 12px;
    }
    
    .daily-ach-name {
        font-size: 12px;
    }
}
/* ============================================================
   ИСПРАВЛЕНИЯ ДЛЯ МОБИЛЬНЫХ И ПОВЕДЕНИЯ НАГРАД
   ============================================================ */

/* ---------- 1. НИЖНЯЯ ПАНЕЛЬ ВСЕГДА ВИДИМА ---------- */
.treasury-mobile {
    display: flex !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 999 !important;
    padding: 6px 4px max(8px, env(safe-area-inset-bottom)) !important;
    border-top: 1px solid var(--t-line);
    background: rgba(3, 5, 11, 0.97) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    justify-content: space-around !important;
    box-shadow: 0 -4px 30px rgba(0, 0, 0, 0.4) !important;
}

.treasury-mobile button {
    display: grid !important;
    gap: 2px !important;
    place-items: center !important;
    border: 0 !important;
    background: none !important;
    color: #a9a8bb !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 8px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    cursor: pointer !important;
    padding: 4px 8px !important;
    min-width: 44px !important;
    transition: all 0.2s ease !important;
    -webkit-tap-highlight-color: transparent !important;
}

.treasury-mobile button i {
    font-style: normal !important;
    font-size: 18px !important;
    display: block !important;
}

.treasury-mobile button.is-active {
    color: #fff !important;
}

.treasury-mobile button.is-active i {
    color: #d788ff !important;
    text-shadow: 0 0 20px rgba(215, 136, 255, 0.3) !important;
}

.treasury-mobile button:active {
    transform: scale(0.92) !important;
}

/* Отступ снизу для контента */
.treasury {
    padding-bottom: 80px !important;
}

@media (max-width: 720px) {
    .treasury {
        padding-bottom: 76px !important;
    }
}

/* ---------- 2. ПРОФИЛЬ В ПРАВОМ ВЕРХНЕМ УГЛУ (МОБИЛЬНЫЙ) ---------- */
@media (max-width: 720px) {
    .treasury-nav {
        position: sticky !important;
        top: 0 !important;
        z-index: 100 !important;
        background: rgba(3, 5, 11, 0.92) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        padding: 4px 0 !important;
        height: 56px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
    }
    
    .treasury-user {
        display: flex !important;
        margin-left: auto !important;
        padding: 4px 8px !important;
        border: 1px solid rgba(192, 132, 252, 0.2) !important;
        border-radius: 8px !important;
        background: rgba(18, 26, 45, 0.8) !important;
        min-width: auto !important;
        gap: 6px !important;
    }
    
    .treasury-user-avatar {
        width: 30px !important;
        height: 30px !important;
    }
    
    .treasury-user b {
        font-size: 11px !important;
    }
    
    .treasury-user small {
        font-size: 9px !important;
        margin: 0 !important;
    }
    
    .treasury-user .xp {
        width: 50px !important;
        height: 3px !important;
    }
    
    .treasury-brand small {
        display: none !important;
    }
    
    .treasury-brand b {
        font-size: 16px !important;
    }
    
    .treasury-brand-mark {
        width: 22px !important;
        height: 22px !important;
    }
    
    .treasury-links {
        display: none !important;
    }
}

/* ---------- 3. РЕДЧАЙШИЙ ПРЕДМЕТ НА МОБИЛЬНЫХ (МЕНЬШЕ, РЯДОМ С ИСТОРИЕЙ) ---------- */
@media (max-width: 720px) {
    .treasure-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
    }
    
    .treasure-grid .find-list {
        flex: 1 !important;
        width: 100% !important;
    }
    
    .treasure-grid .rare-item {
        flex: 0 !important;
        width: 100% !important;
        padding: 6px 8px !important;
        min-height: auto !important;
    }
    
    .rare-item .section-title {
        font-size: 9px !important;
        margin-bottom: 2px !important;
    }
    
    .rare-item .asset-slot.lg {
        width: 50px !important;
        height: 50px !important;
        font-size: 24px !important;
        margin: 2px auto !important;
    }
    
    .rare-item b {
        font-size: 10px !important;
        margin-top: 0 !important;
    }
    
    .rare-item small {
        font-size: 8px !important;
    }
    
    /* Задания идут после редчайшего */
    .treasure-grid .leaderboard-mini {
        width: 100% !important;
        flex: 1 !important;
    }
}

/* ---------- 4. ШКАЛА ВЫПОЛНЕННОСТИ ЗАДАНИЙ ---------- */
.quests-progress-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    margin-bottom: 6px;
    background: rgba(8, 13, 25, 0.5);
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.04);
}

.quests-progress-bar .progress-label {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 10px;
    color: #b0b8cc;
    white-space: nowrap;
}

.quests-progress-bar .progress-track {
    flex: 1;
    height: 4px;
    background: #202a44;
    border-radius: 4px;
    overflow: hidden;
}

.quests-progress-bar .progress-fill {
    height: 100%;
    border-radius: 4px;
    background: linear-gradient(90deg, #7c3aed, #a855f7);
    transition: width 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.quests-progress-bar .progress-text {
    font-family: 'Oswald', sans-serif;
    font-size: 11px;
    color: #d19aff;
    white-space: nowrap;
}

/* Шкала для каждого задания */
.quest-card .quest-progress-track {
    height: 2px;
    background: #202a44;
    border-radius: 2px;
    overflow: hidden;
    margin: 4px 0 6px;
}

.quest-card .quest-progress-fill {
    height: 100%;
    border-radius: 2px;
    background: linear-gradient(90deg, #7c3aed, #a855f7);
    transition: width 0.6s ease;
}

/* ---------- 5. ДОСТИЖЕНИЯ НА ГЛАВНОЙ — БОЛЬШИЕ ИКОНКИ, БЕЗ ОПИСАНИЙ ---------- */
.achievements {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 6px;
    padding: 8px;
}

.achievement {
    min-height: 50px;
    padding: 8px 4px;
    border: 1px solid rgba(255, 190, 79, 0.25);
    border-radius: 8px;
    background: linear-gradient(145deg, #1d1620, #080d17);
    transition: all 0.3s ease;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
}

.achievement.earned {
    border-color: rgba(255, 215, 0, 0.5);
    box-shadow: 0 0 15px rgba(255, 215, 0, 0.08);
}

.achievement.locked {
    opacity: 0.4;
    filter: grayscale(0.6);
}

/* Иконки в 3 раза больше */
.achievement i {
    display: block;
    font-size: 48px !important;
    font-style: normal;
    line-height: 1;
    margin-bottom: 2px;
}

.achievement i img {
    width: 48px !important;
    height: 48px !important;
    object-fit: contain;
}

/* Имя достижения */
.achievement b {
    display: block;
    font-family: 'Oswald', sans-serif;
    font-size: 10px;
    color: #e8e4f5;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    line-height: 1.2;
    margin: 0;
}

/* Описание — скрываем на главной */
.achievement small {
    display: none !important;
}

/* На мобильных — 3 колонки */
@media (max-width: 720px) {
    .achievements {
        grid-template-columns: repeat(3, 1fr);
        gap: 4px;
        padding: 4px;
    }
    
    .achievement {
        min-height: 60px;
        padding: 6px 2px;
    }
    
    .achievement i {
        font-size: 36px !important;
    }
    
    .achievement i img {
        width: 36px !important;
        height: 36px !important;
    }
    
    .achievement b {
        font-size: 8px;
    }
}

/* ---------- 6. ОТКЛЮЧЕНИЕ ПОВТОРНЫХ НАГРАД ПРИ ОБНОВЛЕНИИ ---------- */
.artifact-reward-overlay {
    display: none;
}

.artifact-reward-overlay.active {
    display: flex !important;
}

/* ---------- 7. МИНИ-КВЕСТЫ С ПРОГРЕССОМ ---------- */
.mini-quest-item .quest-mini-progress {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 4px;
}

.mini-quest-item .quest-mini-progress .mini-track {
    width: 40px;
    height: 3px;
    background: #202a44;
    border-radius: 2px;
    overflow: hidden;
}

.mini-quest-item .quest-mini-progress .mini-fill {
    height: 100%;
    border-radius: 2px;
    background: linear-gradient(90deg, #7c3aed, #a855f7);
    transition: width 0.5s ease;
}

.mini-quest-item .quest-mini-progress .mini-text {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 9px;
    color: #b0b8cc;
    min-width: 24px;
    text-align: right;
}
/* ========== TREASURY LOGIN ========== */
.treasury-login {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 80vh;
    text-align: center;
    padding: 40px 20px;
}

.treasury-login-icon {
    font-size: 64px;
    margin-bottom: 16px;
    animation: floatIcon 3s ease-in-out infinite;
}

@keyframes floatIcon {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-12px); }
}

.treasury-login-title {
    font-family: 'Press Start 2P', Georgia, serif;
    font-size: clamp(20px, 4vw, 32px);
    color: #d0a0ff;
    margin: 0 0 8px 0;
    text-shadow: 0 0 30px rgba(187, 93, 255, 0.3);
}

.treasury-login-desc {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 16px;
    color: #b0b8cc;
    margin: 0 0 24px 0;
    max-width: 400px;
}

.treasury-login-btn {
    padding: 16px 40px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, #7c3aed, #a855f7);
    color: #fff;
    font-family: 'Oswald', sans-serif;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 30px rgba(124, 58, 237, 0.3);
}

.treasury-login-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 8px 40px rgba(124, 58, 237, 0.4);
}

.treasury-login-btn:active {
    transform: scale(0.96);
}

.treasury-login-hint {
    margin-top: 20px;
    font-size: 13px;
    color: #8a94ad;
    line-height: 1.6;
}

.treasury-login-hint small {
    color: #6a748d;
    font-size: 12px;
}/* ========== TREASURY LOGIN ========== */
.treasury-login {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 80vh;
    text-align: center;
    padding: 40px 20px;
}

.treasury-login-icon {
    font-size: 64px;
    margin-bottom: 16px;
    animation: floatIcon 3s ease-in-out infinite;
}

@keyframes floatIcon {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-12px); }
}

.treasury-login-title {
    font-family: 'Press Start 2P', Georgia, serif;
    font-size: clamp(20px, 4vw, 32px);
    color: #d0a0ff;
    margin: 0 0 8px 0;
    text-shadow: 0 0 30px rgba(187, 93, 255, 0.3);
}

.treasury-login-desc {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 16px;
    color: #b0b8cc;
    margin: 0 0 24px 0;
    max-width: 400px;
}

.treasury-login-btn {
    padding: 16px 40px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, #7c3aed, #a855f7);
    color: #fff;
    font-family: 'Oswald', sans-serif;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 30px rgba(124, 58, 237, 0.3);
}

.treasury-login-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 8px 40px rgba(124, 58, 237, 0.4);
}

.treasury-login-btn:active {
    transform: scale(0.96);
}

.treasury-login-hint {
    margin-top: 20px;
    font-size: 13px;
    color: #8a94ad;
    line-height: 1.6;
}

.treasury-login-hint small {
    color: #6a748d;
    font-size: 12px;
}
/* ========== ACHIEVEMENT POPUP ========== */
.treasury-ach-popup {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10000;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 24px;
    background: linear-gradient(135deg, #1e1a3a, #0f0f2e);
    border: 2px solid var(--t-gold);
    border-radius: 16px;
    box-shadow: 0 0 40px rgba(255, 224, 138, 0.4);
    animation: achSlideDown 0.5s ease forwards;
    min-width: 300px;
    max-width: 90%;
}

@keyframes achSlideDown {
    from {
        top: -120px;
        opacity: 0;
        transform: translateX(-50%) scale(0.8);
    }
    to {
        top: 20px;
        opacity: 1;
        transform: translateX(-50%) scale(1);
    }
}

.treasury-ach-icon {
    font-size: 40px;
    flex-shrink: 0;
    animation: achIconPop 0.5s ease 0.3s both;
}

@keyframes achIconPop {
    from { transform: scale(0) rotate(-10deg); }
    to { transform: scale(1) rotate(0deg); }
}

.treasury-ach-content {
    text-align: left;
}

.treasury-ach-title {
    font-family: 'Oswald', sans-serif;
    font-size: 11px;
    color: var(--t-gold);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.treasury-ach-name {
    font-family: 'Press Start 2P', Georgia, serif;
    font-size: 14px;
    color: #fff;
    margin: 4px 0;
}

.treasury-ach-desc {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 12px;
    color: #c0c8dc;
}
/* ============================================================
   ОБНОВЛЕНИЯ ДЛЯ КОЛЛЕКЦИИ - ЗАТЕМНЕННЫЕ ЗАМКИ
   ============================================================ */
.col-grid-card.locked .col-grid-img {
    opacity: 0.25;
    filter: blur(1px) grayscale(0.5);
}
.col-grid-card.locked {
    background: rgba(255,255,255,0.02) !important;
}

/* Профиль - линия уровня */
.profile-level-bar {
    margin-bottom: 12px;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 10px;
    background: rgba(8,13,25,.5);
}
.profile-level-header {
    display: flex;
    justify-content: space-between;
    font-family: 'Silkscreen', monospace;
    font-size: 11px;
    color: #b0b8cc;
    margin-bottom: 4px;
}
.profile-level-header span:first-child {
    color: #fff;
}

/* Кнопки в профиле - обводки ярче */
.profile-actions button {
    transition: all 0.3s ease !important;
}
.profile-actions button:hover {
    transform: scale(1.02) !important;
    box-shadow: 0 0 20px rgba(192,132,252,.1) !important;
}
.profile-actions button:nth-child(1):hover {
    border-color: var(--t-purple) !important;
    background: rgba(192,132,252,.05) !important;
}
.profile-actions button:nth-child(2):hover {
    border-color: #ff6b6b !important;
    background: rgba(255,100,50,.05) !important;
}
.profile-actions button:nth-child(3):hover {
    border-color: #6bcb77 !important;
    background: rgba(110,231,162,.05) !important;
}
/* ========== ЯРКИЕ ОБВОДКИ И УВЕЛИЧЕННЫЕ ИКОНКИ ========== */

/* Артефакты в коллекции - ярче */
.col-grid-card.owned {
    border-width: 2px !important;
    box-shadow: 0 0 15px rgba(192,132,252,0.08) !important;
    transition: all 0.3s ease !important;
}
.col-grid-card.owned:hover {
    box-shadow: 0 0 25px rgba(192,132,252,0.2) !important;
    transform: scale(1.05) !important;
}

/* Иконки достижений - больше */
.achievement i {
    font-size: 48px !important;
}
.achievement i img {
    width: 48px !important;
    height: 48px !important;
}
.achievement.earned i img {
    filter: drop-shadow(0 0 10px rgba(255,215,0,0.3)) !important;
}

/* Иконки артефактов в профиле - больше */
.profile-mini-art {
    width: 64px !important;
    height: 64px !important;
    border-width: 2px !important;
}
.profile-mini-art img {
    width: 80% !important;
    height: 80% !important;
}

/* Достижения в профиле - ярче */
.profile-mini-ach {
    border-width: 2px !important;
    padding: 10px !important;
}
.profile-mini-ach img {
    width: 32px !important;
    height: 32px !important;
}

/* Обводки карточек артефактов - ярче */
.col-grid-card {
    border-width: 2px !important;
}
.col-grid-card.owned {
    border-color: rgba(192,132,252,0.4) !important;
}

/* Hero иконки - ярче */
.treasury-hero-artifact img {
    filter: drop-shadow(0 0 20px rgba(192,132,252,0.6)) !important;
}

/* Бейджи рангов - ярче */
.rank-badge {
    padding: 4px 12px !important;
    border-width: 2px !important;
}
.rank-badge img {
    width: 28px !important;
    height: 28px !important;
}

/* Модалка коллекции - крупнее */
.col-item-image {
    width: 240px !important;
    height: 240px !important;
}
.col-item-image img {
    filter: drop-shadow(0 4px 30px rgba(192,132,252,0.4)) !important;
}

/* Кнопки в профиле - ярче */
.profile-actions button {
    border-width: 2px !important;
    padding: 12px 16px !important;
    font-size: 13px !important;
}
.profile-actions button:hover {
    transform: scale(1.02) !important;
    box-shadow: 0 0 30px rgba(192,132,252,0.15) !important;
}

/* Мобильная адаптация */
@media (max-width: 720px) {
    .achievement i {
        font-size: 36px !important;
    }
    .achievement i img {
        width: 36px !important;
        height: 36px !important;
    }
    .profile-mini-art {
        width: 50px !important;
        height: 50px !important;
    }
    .col-item-image {
        width: 180px !important;
        height: 180px !important;
    }
}
/* Подсветка выбранной карточки в коллекции */
.col-grid-card.selected {
    border-color: #ffd700 !important;
    box-shadow: 0 0 25px rgba(255, 215, 0, 0.4) !important;
    transform: scale(1.05) !important;
    z-index: 2 !important;
}

/* Яркие обводки для разных редкостей */
.col-grid-card.owned {
    border-width: 2px !important;
}
.col-grid-card.owned[data-rarity="common"] { border-color: #cd7f32 !important; }
.col-grid-card.owned[data-rarity="rare"] { border-color: #c0c0c0 !important; }
.col-grid-card.owned[data-rarity="epic"] { border-color: #ffd700 !important; }
.col-grid-card.owned[data-rarity="legendary"] { border-color: #ff4444 !important; }
.col-grid-card.owned[data-rarity="artifact"] { border-color: #8b5cf6 !important; }
.col-grid-card.owned[data-rarity="opalium"] { border-color: #7dd3fc !important; }
/* Ранг Opalium */
.rank-badge.opalium {
    background: rgba(125, 211, 252, 0.15) !important;
    color: #7dd3fc !important;
    border: 2px solid #7dd3fc !important;
    box-shadow: 0 0 20px rgba(125, 211, 252, 0.2) !important;
}

/* Обновленные цвета рангов */
.rank-badge.bronze {
    background: rgba(232, 163, 94, 0.15) !important;
    color: #e8a35e !important;
    border: 2px solid #e8a35e !important;
}
.rank-badge.silver {
    background: rgba(216, 219, 228, 0.1) !important;
    color: #d8dbe4 !important;
    border: 2px solid #d8dbe4 !important;
}
.rank-badge.gold {
    background: rgba(255, 224, 112, 0.1) !important;
    color: #ffe070 !important;
    border: 2px solid #ffe070 !important;
}
.rank-badge.obsidian {
    background: rgba(180, 144, 255, 0.15) !important;
    color: #b490ff !important;
    border: 2px solid #b490ff !important;
}
.rank-badge.legendary {
    background: rgba(255, 69, 0, 0.15) !important;
    color: #ff4500 !important;
    border: 2px solid #ff4500 !important;
}
/* ========== КОЛЛЕКЦИЯ: ЗАТЕМНЕННЫЕ КАРТОЧКИ ========== */
.col-grid-card.locked .col-grid-img {
    opacity: 0.25;
    filter: blur(1px) grayscale(0.5);
}

/* ========== КОЛЛЕКЦИЯ: ПОДСВЕТКА ВЫБРАННОЙ КАРТОЧКИ ========== */
.col-grid-card.selected {
    border-color: #ffd700 !important;
    box-shadow: 0 0 25px rgba(255, 215, 0, 0.4) !important;
    transform: scale(1.05) !important;
    z-index: 2;
}

/* ========== ЧАСТИЦЫ (ЗВЁЗДЫ) ========== */
.treasury-particles {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}

.treasury-particle {
    position: absolute;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    animation: floatParticle linear infinite;
}

.treasury-particle.sparkle {
    background: rgba(255, 215, 0, 0.8);
    box-shadow: 0 0 8px rgba(255, 215, 0, 0.5);
}

@keyframes floatParticle {
    0% {
        transform: translateY(100vh) rotate(0deg);
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    90% {
        opacity: 1;
    }
    100% {
        transform: translateY(-10vh) rotate(720deg);
        opacity: 0;
    }
}

/* ========== CONFETTI ========== */
.confetti-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 99998;
    overflow: hidden;
}

.confetti-piece {
    position: absolute;
    top: -20px;
    opacity: 0;
    animation: confettiFall linear forwards;
}

@keyframes confettiFall {
    0% {
        opacity: 1;
        transform: translateY(0) rotate(0deg) scale(1);
    }
    100% {
        opacity: 0;
        transform: translateY(110vh) rotate(720deg) scale(0.5);
    }
}

/* ========== НАГРАДА ЗА АРТЕФАКТ ========== */
.artifact-reward-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(8px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    animation: overlayFadeIn 0.4s ease;
}

.artifact-reward-overlay.active {
    display: flex;
}

.artifact-reward-card {
    background: linear-gradient(145deg, #0a0f1e, #141b2d);
    padding: 30px 40px;
    border-radius: 24px;
    border: 2px solid rgba(255, 215, 0, 0.3);
    text-align: center;
    max-width: 400px;
    width: 90%;
    animation: rewardCardPop 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8);
}

@keyframes overlayFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes rewardCardPop {
    0% {
        transform: scale(0.5) rotate(-5deg);
        opacity: 0;
    }
    100% {
        transform: scale(1) rotate(0deg);
        opacity: 1;
    }
}

@keyframes rewardIconShine {
    0%, 100% {
        transform: scale(1) rotate(0deg);
    }
    50% {
        transform: scale(1.1) rotate(5deg);
        filter: brightness(1.3);
    }
}

.artifact-reward-name {
    font-family: 'Press Start 2P', Georgia, serif;
    font-size: 18px;
    margin: 8px 0 4px;
}

.artifact-reward-rarity {
    font-family: 'Silkscreen', monospace;
    font-size: 11px;
    opacity: 0.7;
    text-transform: uppercase;
}

.artifact-reward-desc {
    font-size: 12px;
    color: #b0b8cc;
    margin: 10px 0 16px;
    font-family: 'Roboto Condensed', sans-serif;
}

.artifact-reward-close {
    padding: 10px 30px;
    border: 2px solid #ffd700;
    border-radius: 12px;
    background: rgba(255, 215, 0, 0.1);
    color: #ffd700;
    font-family: 'Oswald', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    cursor: pointer;
    transition: 0.3s;
}

.artifact-reward-close:hover {
    background: rgba(255, 215, 0, 0.2);
    transform: scale(1.05);
}

.artifact-reward-icon {
    font-size: 64px;
    display: inline-block;
}

/* ========== ТУТОРИАЛ ========== */
.tutorial-popup {
    position: fixed;
    bottom: 100px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(145deg, #0a0f1e, #1a2340);
    border: 1px solid rgba(255, 215, 0, 0.3);
    border-radius: 16px;
    padding: 20px 24px;
    max-width: 420px;
    width: 90%;
    z-index: 99990;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8);
    animation: tutorialSlideUp 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.tutorial-popup.hidden {
    animation: tutorialSlideDown 0.4s ease forwards;
}

@keyframes tutorialSlideUp {
    0% {
        transform: translateX(-50%) translateY(30px);
        opacity: 0;
    }
    100% {
        transform: translateX(-50%) translateY(0);
        opacity: 1;
    }
}

@keyframes tutorialSlideDown {
    0% {
        transform: translateX(-50%) translateY(0);
        opacity: 1;
    }
    100% {
        transform: translateX(-50%) translateY(30px);
        opacity: 0;
    }
}

.tutorial-popup-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}

.tutorial-popup-icon {
    font-size: 32px;
}

.tutorial-popup-title {
    font-family: 'Oswald', sans-serif;
    font-size: 18px;
    color: #ffd700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.tutorial-popup-text {
    font-size: 13px;
    color: #c0c8dc;
    line-height: 1.5;
    margin-bottom: 16px;
    font-family: 'Roboto Condensed', sans-serif;
}

.tutorial-popup-actions {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.tutorial-popup-btn {
    padding: 8px 16px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    background: transparent;
    color: #b0b8cc;
    font-family: 'Silkscreen', monospace;
    font-size: 10px;
    cursor: pointer;
    transition: 0.3s;
}

.tutorial-popup-btn:hover {
    background: rgba(255, 255, 255, 0.05);
}

.tutorial-popup-btn.primary {
    background: rgba(255, 215, 0, 0.15);
    border-color: #ffd700;
    color: #ffd700;
}

.tutorial-popup-btn.primary:hover {
    background: rgba(255, 215, 0, 0.25);
}

/* ========== УВЕДОМЛЕНИЕ О ДОСТИЖЕНИИ ========== */
.daily-achievement-notice {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 18px;
    background: linear-gradient(135deg, rgba(255, 215, 0, 0.08), rgba(192, 132, 252, 0.08));
    border: 1px solid rgba(255, 215, 0, 0.2);
    border-radius: 12px;
    margin: 12px 0;
    cursor: pointer;
    transition: 0.3s;
}

.daily-achievement-notice:hover {
    background: linear-gradient(135deg, rgba(255, 215, 0, 0.15), rgba(192, 132, 252, 0.15));
    transform: scale(1.02);
}

.daily-ach-icon {
    font-size: 28px;
}

.daily-ach-info {
    flex: 1;
}

.daily-ach-label {
    font-size: 10px;
    color: #b0b8cc;
    font-family: 'Silkscreen', monospace;
}

.daily-ach-name {
    font-size: 14px;
    color: #ffd700;
    font-family: 'Oswald', sans-serif;
}

.daily-ach-progress {
    font-size: 12px;
    color: #8df0b5;
    font-family: 'Silkscreen', monospace;
}

/* ========== ПРОГРЕСС ЗАДАНИЙ ========== */
.quests-progress-bar {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    margin-bottom: 10px;
}

.progress-label {
    font-family: 'Silkscreen', monospace;
    font-size: 10px;
    color: #b0b8cc;
    white-space: nowrap;
}

.progress-track {
    flex: 1;
    height: 6px;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 3px;
    overflow: hidden;
}

.progress-fill {
    height: 100%;
    background: linear-gradient(90deg, #7c3aed, #a855f7, #ffd700);
    border-radius: 3px;
    transition: width 0.5s ease;
}

.progress-text {
    font-family: 'Silkscreen', monospace;
    font-size: 10px;
    color: #c0c8dc;
    white-space: nowrap;
}

/* ========== МИНИ-КВЕСТЫ ========== */
.mini-quest-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.quest-mini-progress {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.mini-track {
    width: 40px;
    height: 4px;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 2px;
    overflow: hidden;
}

.mini-fill {
    height: 100%;
    background: linear-gradient(90deg, #7c3aed, #a855f7);
    border-radius: 2px;
    transition: width 0.5s ease;
}

.mini-text {
    font-family: 'Silkscreen', monospace;
    font-size: 9px;
    color: #b0b8cc;
}
/* OPALIUM — профильный патч. Добавить в самый конец текущего CSS. */

/* Компактный профиль в шапке */
.treasury .treasury-user {
    min-width: 218px;
    gap: 10px;
    padding: 7px 10px;
    border: 1px solid rgba(192,132,252,.22);
    border-radius: 10px;
    background: linear-gradient(145deg,rgba(17,25,43,.92),rgba(8,13,25,.92));
    box-shadow: 0 8px 24px rgba(0,0,0,.18);
}

.treasury .treasury-user:hover {
    border-color: rgba(209,154,255,.5);
    box-shadow: 0 10px 28px rgba(0,0,0,.24),0 0 16px rgba(192,132,252,.08);
}

.treasury .treasury-user-avatar {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 9px;
    background: #0b1120;
}

.treasury .treasury-user-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.treasury .treasury-user > div:last-child {
    min-width: 0;
    flex: 1;
}

.treasury .treasury-user b {
    overflow: hidden;
    display: block;
    color: #f6f1ff;
    font-size: 12px;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.treasury .treasury-user small {
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 3px 0 5px;
    color: #aeb6c9;
    white-space: nowrap;
}

.treasury .treasury-user .rank-badge {
    gap: 3px;
    padding: 2px 6px !important;
    border-width: 1px !important;
    font-size: 9px;
}

.treasury .treasury-user .rank-badge img {
    width: 17px !important;
    height: 17px !important;
}

.treasury .treasury-user .xp {
    width: 100%;
    height: 4px;
}

/* Окно профиля — правила ограничены только .profile-modal */
.profile-modal.treasury-modal {
    width: min(560px,calc(100vw - 24px));
    max-width: 560px !important;
    border: 1px solid rgba(192,132,252,.28);
    border-radius: 16px;
    background: linear-gradient(160deg,#111a2d 0%,#090f1d 58%,#070c17 100%);
    box-shadow: 0 26px 80px rgba(0,0,0,.68),0 0 30px rgba(192,132,252,.08);
}

.profile-modal .treasury-modal-body {
    max-height: min(84vh,760px);
    padding: 0 !important;
    background: transparent;
}

.profile-modal .profile-new-container {
    padding: 16px;
}

.profile-modal .profile-new-header {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 12px;
    padding: 14px 48px 14px 14px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 13px;
    background: linear-gradient(135deg,rgba(192,132,252,.08),rgba(8,13,25,.45));
}

.profile-modal .profile-new-avatar {
    position: relative;
    width: 78px;
    height: 78px;
    flex: 0 0 78px;
    overflow: visible;
    border-radius: 14px;
    background: #090f1d;
}

.profile-modal .profile-new-avatar > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}

.profile-modal .profile-sticker {
    position: absolute;
    right: -5px;
    bottom: -5px;
    display: grid;
    width: 25px;
    height: 25px;
    place-items: center;
    border: 2px solid #0b1120;
    border-radius: 50%;
    background: #171f34;
    font-size: 14px;
}

.profile-modal .profile-new-info {
    min-width: 0;
    flex: 1;
}

.profile-modal .profile-new-name {
    overflow: hidden;
    color: #f5edff;
    font-size: 18px;
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.profile-modal .profile-new-name { display:flex;align-items:center;gap:7px; }
.profile-modal .profile-name-icon { width:24px;height:24px;flex:0 0 24px;object-fit:contain; }

.profile-modal .profile-new-title {
    margin: 5px 0 8px;
    color: #aeb6c9;
    font-size: 11px;
}

.profile-modal .profile-new-rank-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
}

.profile-modal .profile-new-rank-row .rank-badge {
    gap: 4px;
    padding: 3px 8px !important;
    border: 1px solid var(--profile-rank-color,rgba(192,132,252,.45)) !important;
    background: color-mix(in srgb,var(--profile-rank-color,#c084fc) 12%,transparent) !important;
    color: #fff !important;
    font-size: 10px;
}

.profile-modal .profile-new-rank-row .rank-badge img {
    width: 21px !important;
    height: 21px !important;
}

.profile-modal .profile-new-rank-pos {
    color: #d8c38d;
    font-size: 10px;
}

.profile-modal-close {
    position: absolute;
    top: 11px;
    right: 11px;
    display: grid;
    width: 30px;
    height: 30px;
    padding: 0;
    place-items: center;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(4,8,16,.35);
    color: #aeb6c9;
    cursor: pointer;
}

.profile-modal-close:hover {
    border-color: rgba(255,138,107,.45);
    background: rgba(255,138,107,.08);
    color: #ffb09a;
}

.profile-modal .profile-new-metrics {
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 7px;
    margin-bottom: 10px;
}

.profile-modal .profile-metric {
    min-width: 0;
    padding: 9px 5px;
    border: 1px solid rgba(255,255,255,.07);
    background: rgba(5,10,20,.42);
}

.profile-modal .profile-metric-value {
    font-size: 15px;
}

.profile-modal .profile-level-bar,
.profile-modal .profile-season-bar,
.profile-modal .profile-section {
    margin: 0 0 10px !important;
    padding: 11px !important;
    border: 1px solid rgba(255,255,255,.07) !important;
    border-radius: 11px !important;
    background: rgba(5,10,20,.38) !important;
}

.profile-modal .profile-section-title {
    margin-bottom: 8px !important;
    color: #c99bea !important;
    font-size: 10px !important;
}

.profile-modal .profile-mini-grid {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 6px !important;
}

.profile-modal .profile-mini-ach {
    min-width: 0;
    padding: 7px !important;
    border-width: 1px !important;
    background: rgba(255,215,0,.035);
    font-size: 9px;
}

.profile-modal .profile-mini-ach span:last-child {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.profile-modal .profile-mini-art-row {
    display: flex;
    flex-wrap: wrap;
    gap: 7px !important;
}

.profile-modal .profile-mini-art {
    width: 54px !important;
    height: 54px !important;
    border-width: 1px !important;
    border-color: rgba(192,132,252,.22) !important;
    background: rgba(192,132,252,.035);
}

.profile-modal .profile-actions {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 7px !important;
    margin-top: 4px !important;
    padding-top: 10px !important;
}

.profile-modal .profile-actions button {
    min-height: 42px;
    padding: 8px 9px !important;
    border-width: 1px !important;
    font-size: 10px !important;
    line-height: 1.25;
    text-align: center !important;
}

@media (max-width:720px) {
    .treasury .treasury-user {
        min-width: 0 !important;
        padding: 4px 7px !important;
    }

    .treasury .treasury-user-avatar {
        width: 32px !important;
        height: 32px !important;
        flex-basis: 32px;
    }

    .profile-modal .profile-new-container {
        padding: 10px;
    }

    .profile-modal .profile-new-header {
        align-items: flex-start;
        gap: 11px;
        padding: 12px 40px 12px 12px;
    }

    .profile-modal .profile-new-avatar {
        width: 62px;
        height: 62px;
        flex-basis: 62px;
    }

    .profile-modal .profile-new-name {
        font-size: 14px;
    }

    .profile-modal .profile-new-rank-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
    }

    .profile-modal .profile-new-metrics {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .profile-modal .profile-mini-grid {
        grid-template-columns: 1fr !important;
    }

    .profile-modal .profile-actions {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   OPALIUM stability/profile/mobile patch
   ============================================================ */

/* Сезон больше не создаёт полноэкранный затемняющий слой. */
.season-card-genesis::before,
.season-card-genesis::after,
.season-modal-v2::before,
.season-modal-v2::after {
    display: none !important;
    content: none !important;
}

.season-card-genesis,
.season-modal-v2 {
    isolation: auto !important;
    background: rgba(8,14,27,.72) !important;
    filter: none !important;
}

.treasury-brand-mark {
    width: 36px !important;
    height: 42px !important;
    flex: 0 0 36px;
    overflow: visible !important;
}

.treasury-brand-mark img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    filter: drop-shadow(0 0 8px rgba(152,102,255,.28));
}

/* Стикер — маленький бейдж снаружи аватара, а не поверх лица. */
.treasury-user-avatar,
.profile-card .avatar-frame,
.profile-modal .profile-new-avatar {
    overflow: visible !important;
}

.treasury-user-avatar .sticker-badge,
.treasury-user-avatar .sticker-badge.image-sticker {
    right: -9px !important;
    bottom: -7px !important;
    width: 19px !important;
    height: 19px !important;
    padding: 1px !important;
    z-index: 4;
}

.profile-modal .profile-sticker,
.profile-modal .profile-sticker.image-sticker {
    right: -11px !important;
    bottom: -8px !important;
    width: 23px !important;
    height: 23px !important;
    padding: 2px !important;
    z-index: 4;
}

.active-sticker-inline {
    width: 17px !important;
    height: 17px !important;
}

.active-profile-icon {
    width: 21px !important;
    height: 21px !important;
    flex: 0 0 21px;
}

.opalium-image-failed { display: none !important; }

.streak-title-icon,
.leader-streak-row img {
    width: 24px;
    height: 24px;
    object-fit: contain;
    vertical-align: middle;
}

.leader-streak-row img { width:18px;height:18px; }
.leader-streak-row b { color:#ffbd6d;font-weight:700; }

/* Для каждого текста титула выбирается свой переливающийся градиент. */
.opalium-title-shimmer {
    display: inline-block;
    max-width: 100%;
    color: transparent !important;
    background-size: 220% 100% !important;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    animation: opaliumTitleFlow 4.8s ease-in-out infinite;
}
.title-shimmer-0 { background-image:linear-gradient(90deg,#ff78cb,#ffe29a,#ff78cb); }
.title-shimmer-1 { background-image:linear-gradient(90deg,#75d8ff,#d8f7ff,#75d8ff); }
.title-shimmer-2 { background-image:linear-gradient(90deg,#b58cff,#f2d9ff,#b58cff); }
.title-shimmer-3 { background-image:linear-gradient(90deg,#ff786f,#ffd18a,#ff786f); }
.title-shimmer-4 { background-image:linear-gradient(90deg,#66e5a4,#ddffe9,#66e5a4); }
.title-shimmer-5 { background-image:linear-gradient(90deg,#ffd05f,#fff2ae,#ffd05f); }
.title-shimmer-6 { background-image:linear-gradient(90deg,#69a7ff,#d3e6ff,#69a7ff); }
.title-shimmer-7 { background-image:linear-gradient(90deg,#dc78ff,#ff9fd8,#dc78ff); }
@keyframes opaliumTitleFlow { 0%,100%{background-position:0 50%} 50%{background-position:100% 50%} }

/* Лёгкий блик внутри заполненной части всех прогресс-баров. */
.progress-fill,
.xp > i,
.profile-xp-fill,
.quest-progress-fill,
.quest-mini-progress .mini-fill,
.mini-track .mini-fill,
.quest-linear i,
.season-linear i,
.col-progress-bar i {
    position: relative;
    overflow: hidden;
}

.progress-fill::after,
.xp > i::after,
.profile-xp-fill::after,
.quest-progress-fill::after,
.quest-mini-progress .mini-fill::after,
.mini-track .mini-fill::after,
.quest-linear i::after,
.season-linear i::after,
.col-progress-bar i::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg,transparent 20%,rgba(255,255,255,.28) 48%,transparent 76%);
    content: '';
    transform: translateX(-115%);
    animation: opaliumProgressGlimmer 3.6s ease-in-out infinite;
}
@keyframes opaliumProgressGlimmer { 0%,58%{transform:translateX(-115%);opacity:0} 68%{opacity:.8} 88%,100%{transform:translateX(115%);opacity:0} }

/* Панель видна только на телефоне и всегда закреплена у нижнего края окна. */
.treasury-mobile { display:none !important; }
@media (max-width:720px) {
    .treasury-mobile {
        display:flex !important;
        position:fixed !important;
        right:0 !important;
        bottom:0 !important;
        left:0 !important;
        z-index:99999 !important;
        overflow-x:auto;
        overscroll-behavior-x:contain;
        transform:translateZ(0);
        will-change:transform;
    }
    .treasury-mobile button { flex:1 0 58px; }
    .treasury { padding-bottom:calc(84px + env(safe-area-inset-bottom)) !important; }
    .treasury-brand-mark { width:27px !important;height:32px !important;flex-basis:27px; }
}

@media (prefers-reduced-motion:reduce) {
    .opalium-title-shimmer,
    .progress-fill::after,
    .xp > i::after,
    .profile-xp-fill::after,
    .quest-progress-fill::after,
    .quest-mini-progress .mini-fill::after,
    .mini-track .mini-fill::after,
    .quest-linear i::after,
    .season-linear i::after,
    .col-progress-bar i::after { animation:none !important; }
}

/* v19: героини MGO и полноценная вкладка «Прочее» */
.heroine-modal-intro { display:flex;align-items:center;gap:12px;margin-bottom:13px;padding:12px;border:1px solid rgba(83,184,255,.18);border-radius:10px;background:rgba(30,91,137,.09); }
.heroine-modal-intro b { color:#83d5ff;font:18px 'Silkscreen',monospace;white-space:nowrap; }
.heroine-modal-intro span { color:#aab5c8;font-size:11px;line-height:1.45; }
.heroine-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:9px;max-height:min(65vh,650px);overflow:auto;padding:2px; }
.heroine-card { display:grid;min-width:0;grid-template-columns:76px minmax(0,1fr);gap:10px;padding:9px;border:1px solid rgba(85,179,242,.16);border-radius:10px;background:linear-gradient(145deg,rgba(24,61,91,.17),rgba(8,14,25,.9));color:#eaf5ff;text-decoration:none;transition:.2s ease; }
.heroine-card:hover { transform:translateY(-2px);border-color:rgba(100,204,255,.42);box-shadow:0 7px 22px rgba(26,111,169,.12); }
.heroine-card.locked { opacity:.7; }
.heroine-card.owned { border-color:rgba(91,219,171,.35);box-shadow:inset 0 0 18px rgba(74,207,153,.04); }
.heroine-image { display:grid;height:98px;place-items:end center;overflow:hidden;border-radius:8px;background:radial-gradient(circle at 50% 72%,rgba(80,185,255,.22),transparent 67%); }
.heroine-image img { width:100%;height:100%;object-fit:contain;object-position:center bottom; }
.heroine-copy { min-width:0; }
.heroine-copy b { display:block;margin:3px 0 6px;color:#edf7ff;font:10px 'Silkscreen',monospace; }
.heroine-copy p { display:-webkit-box;overflow:hidden;margin:0;color:#9facbf;font-size:9px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:3; }
.heroine-copy span { display:block;margin-top:8px;color:#75d9ae;font:7px 'Silkscreen',monospace; }
.heroine-card.locked .heroine-copy span { color:#77bfe7; }
.collection-game-link { display:flex;min-height:39px;align-items:center;justify-content:center;margin-top:12px;border:1px solid rgba(108,196,255,.28);border-radius:8px;background:rgba(48,129,185,.12);color:#a9dcff;text-decoration:none;font:8px 'Silkscreen',monospace; }
.other-collection-v19 { display:grid;gap:16px; }
.cosmetic-section h3 { margin:0 0 8px;color:#d9b7ff;font:10px 'Silkscreen',monospace; }
.cosmetic-section h3 small { color:#758197; }
.cosmetic-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:8px; }
.cosmetic-card { display:grid;min-height:135px;grid-template-rows:82px auto auto;place-items:center;gap:4px;padding:7px;border:1px solid rgba(181,109,255,.14);border-radius:9px;background:rgba(37,21,56,.12);text-align:center; }
.cosmetic-card.owned { border-color:rgba(95,226,166,.34);background:rgba(25,91,63,.1); }
.cosmetic-card img { width:76px;height:76px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(175,102,255,.2)); }
.cosmetic-card b { color:#e8e5ef;font-size:9px; }
.cosmetic-card span { color:#8792a5;font:6px 'Silkscreen',monospace; }
.cosmetic-card.owned span { color:#72d9a6; }
.collection-empty-v19 { grid-column:1/-1;padding:20px;color:#8e99ab;text-align:center;font-size:10px; }
.dori-welcome-v19 { display:grid;grid-template-columns:120px 1fr;align-items:center;gap:14px; }
.dori-welcome-v19 img { width:120px;height:150px;object-fit:contain;filter:drop-shadow(0 0 16px rgba(86,194,255,.25)); }
.dori-welcome-v19 b { color:#bce8ff;font:11px 'Silkscreen',monospace; }
.dori-welcome-v19 p { color:#abb6c9;font-size:11px;line-height:1.6; }

@media (max-width:800px) {
    .treasury-brand small { display:block !important;max-width:120px;overflow:hidden;color:#8d96aa!important;font-size:6px!important;white-space:nowrap;text-overflow:ellipsis; }
    .heroine-grid { grid-template-columns:1fr;max-height:62vh; }
    .heroine-card { grid-template-columns:86px 1fr; }
    .cosmetic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:430px) {
    .dori-welcome-v19 { grid-template-columns:88px 1fr; }
    .dori-welcome-v19 img { width:88px;height:120px; }
}
/* OPALIUM Treasury UI patch. Add after the old calm CSS and profile patch. */

.opalium-ui-icon,
.empty-state-image {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

/* Correct Opalium frame and rank color */
.avatar-frame.opalium,
.treasury-user-avatar.avatar-frame.opalium {
    border: 2px solid #7dd3fc !important;
    border-radius: 9px;
    box-shadow: 0 0 14px rgba(125,211,252,.34) !important;
}

.treasury-user .rank-badge.legendary,
.treasury-user .rank-badge.opalium,
.profile-modal .rank-badge.legendary,
.profile-modal .rank-badge.opalium {
    border-color: rgba(125,211,252,.55) !important;
    background: rgba(125,211,252,.09) !important;
    color: #b9e9ff !important;
}

.active-profile-icon,
.active-sticker-inline {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left: 5px;
    object-fit: contain;
    vertical-align: middle;
    filter: drop-shadow(0 0 5px rgba(192,132,252,.28));
}

.sticker-badge.image-sticker,
.profile-sticker.image-sticker {
    display: grid;
    width: 25px;
    height: 25px;
    padding: 2px;
    place-items: center;
    border: 2px solid #0b1120;
    border-radius: 50%;
    background: #151d30;
}

.active-sticker-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 50%;
}

/* Profile editor */
.profile-editor-modal .treasury-modal {
    width: min(620px,calc(100vw - 24px));
    max-width: 620px !important;
    border-color: rgba(192,132,252,.28);
    border-radius: 16px;
    background: linear-gradient(160deg,#111a2d,#080e1b 70%);
    box-shadow: 0 28px 90px rgba(0,0,0,.7),0 0 30px rgba(192,132,252,.08);
}

.profile-editor-v2 {
    overflow: hidden;
    border-radius: 16px;
}

.profile-editor-head {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 48px 13px 14px;
    border-bottom: 1px solid rgba(255,255,255,.07);
    background: linear-gradient(135deg,rgba(192,132,252,.1),rgba(8,13,25,.35));
}

.profile-editor-avatar {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    border: 1px solid rgba(192,132,252,.34);
    border-radius: 11px;
    object-fit: cover;
}

.profile-editor-heading {
    min-width: 0;
}

.profile-editor-heading b,
.profile-editor-heading span {
    display: block;
}

.profile-editor-heading b {
    overflow: hidden;
    color: #f5efff;
    font-family: 'Oswald',sans-serif;
    font-size: 17px;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.profile-editor-heading span {
    margin-top: 3px;
    color: #9da7bb;
    font-size: 11px;
}

.profile-editor-close {
    position: absolute;
    top: 12px;
    right: 12px;
    display: grid;
    width: 30px;
    height: 30px;
    padding: 0;
    place-items: center;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(5,9,17,.35);
    color: #aeb6c9;
    cursor: pointer;
}

.profile-editor-tabs {
    display: flex;
    gap: 5px;
    padding: 9px 10px;
    overflow-x: auto;
    border-bottom: 1px solid rgba(255,255,255,.06);
    background: rgba(4,8,16,.38);
}

.profile-editor-tab {
    display: flex;
    min-width: 72px;
    padding: 7px 8px;
    align-items: center;
    flex-direction: column;
    gap: 4px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    color: #9fa8ba;
    font-size: 9px;
    cursor: pointer;
}

.profile-editor-tab:hover,
.profile-editor-tab.active {
    border-color: rgba(192,132,252,.28);
    background: rgba(192,132,252,.08);
    color: #eedfff;
}

.profile-editor-tab-icon {
    width: 25px;
    height: 25px;
    object-fit: contain;
}

.profile-editor-content {
    min-height: 270px;
    max-height: 62vh;
    padding: 14px;
    overflow-y: auto;
}

.profile-picker-intro {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 11px;
    padding: 9px 11px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 9px;
    background: rgba(5,10,20,.35);
    color: #aeb6c9;
    font-size: 11px;
}

.profile-picker-intro-icon {
    width: 30px;
    height: 30px;
    object-fit: contain;
}

.profile-image-picker {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 8px;
}

.profile-image-option {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 112px;
    padding: 10px 7px;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 10px;
    background: rgba(5,10,20,.34);
    color: #cbd2df;
    font-size: 9px;
    cursor: pointer;
}

.profile-image-option:hover,
.profile-image-option.selected {
    border-color: rgba(192,132,252,.5);
    background: rgba(192,132,252,.07);
    box-shadow: 0 0 16px rgba(192,132,252,.08);
}

.profile-image-option-img {
    width: 62px;
    height: 62px;
    object-fit: contain;
    filter: drop-shadow(0 0 8px rgba(192,132,252,.18));
}

.profile-option-check {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 18px;
    height: 18px;
    object-fit: contain;
}

.profile-frame-picker {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 9px;
}

.profile-frame-option {
    display: flex;
    padding: 10px 6px;
    align-items: center;
    flex-direction: column;
    gap: 8px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 10px;
    background: rgba(5,10,20,.34);
    color: #cbd2df;
    font-size: 9px;
    cursor: pointer;
}

.profile-frame-option:hover,
.profile-frame-option.selected {
    border-color: var(--frame-color);
    background: color-mix(in srgb,var(--frame-color) 8%,transparent);
}

.profile-frame-preview {
    display: grid;
    width: 64px;
    height: 64px;
    padding: 3px;
    place-items: center;
    border: 3px solid var(--frame-color);
    border-radius: 13px;
    box-shadow: 0 0 13px color-mix(in srgb,var(--frame-color) 42%,transparent);
}

.profile-frame-preview img {
    width: 100%;
    height: 100%;
    border-radius: 8px;
    object-fit: cover;
}

/* Collection cards: restrained permanent accents */
.five-buttons-row .five-collection-btn {
    position: relative;
    overflow: hidden;
}

.five-buttons-row .five-collection-btn:nth-child(1) {
    border-color: rgba(255,105,210,.72) !important;
    box-shadow: inset 0 0 0 1px rgba(255,105,210,.1),0 0 12px rgba(255,105,210,.08);
}

.five-collection-img {
    position: relative;
    isolation: isolate;
}

.five-collection-img::before {
    position: absolute;
    z-index: -1;
    inset: 18%;
    border-radius: 50%;
    content: '';
    opacity: .34;
    filter: blur(18px);
}

.five-buttons-row .five-collection-btn:nth-child(1) .five-collection-img::before { background:#ff69d2; }
.five-buttons-row .five-collection-btn:nth-child(2) .five-collection-img::before { background:#60bfff; }
.five-buttons-row .five-collection-btn:nth-child(3) .five-collection-img::before { background:#ffd45f; }
.five-buttons-row .five-collection-btn:nth-child(4) .five-collection-img::before { background:#ff5f72; }
.five-buttons-row .five-collection-btn:nth-child(5) .five-collection-img::before { background:#9c73ff; }

.five-buttons-row .five-collection-btn:nth-child(1) .five-collection-img img { filter:drop-shadow(0 0 9px rgba(255,105,210,.55)); }
.five-buttons-row .five-collection-btn:nth-child(2) .five-collection-img img { filter:drop-shadow(0 0 9px rgba(96,191,255,.5)); }
.five-buttons-row .five-collection-btn:nth-child(3) .five-collection-img img { filter:drop-shadow(0 0 9px rgba(255,212,95,.5)); }
.five-buttons-row .five-collection-btn:nth-child(4) .five-collection-img img { filter:drop-shadow(0 0 9px rgba(255,95,114,.5)); }
.five-buttons-row .five-collection-btn:nth-child(5) .five-collection-img img { filter:drop-shadow(0 0 9px rgba(156,115,255,.5)); }

/* History value stars */
.history-find-row,
.history-modal-row {
    align-items: center;
}

.history-find-copy,
.history-modal-row > div:last-child {
    min-width: 0;
    flex: 1;
}

.history-find-copy b,
.history-find-copy span,
.history-modal-row b,
.history-modal-row span {
    display: block;
}

.history-stars {
    display: flex !important;
    gap: 1px;
    margin: 3px 0;
}

.history-star {
    width: 10px;
    height: 10px;
    object-fit: contain;
}

.history-modal-row {
    display: flex;
    gap: 10px;
    padding: 9px 4px;
    border-bottom: 1px solid rgba(255,255,255,.06);
}

.history-modal-icon {
    width: 38px;
    height: 38px;
    padding: 4px;
    flex: 0 0 38px;
    border: 1px solid rgba(192,132,252,.14);
    border-radius: 8px;
    object-fit: contain;
    background: rgba(192,132,252,.04);
}

.history-modal-row b { color:#e8e4f5;font-size:11px; }
.history-modal-row > div > span:last-child { color:#818b9f;font-size:9px; }

/* Achievements with player count */
.achievement {
    gap: 7px;
}

.achievement-real-icon {
    width: 46px !important;
    height: 46px !important;
    flex: 0 0 46px;
    object-fit: contain;
}

.achievement-copy {
    min-width: 0;
}

.achievement-copy b,
.achievement-copy small {
    display: block !important;
}

.achievement-copy small {
    margin-top: 4px;
    color: #8f99ac;
    font-size: 8px;
    white-space: nowrap;
}

.achievement-people-icon {
    width: 14px;
    height: 14px;
    margin-right: 3px;
    object-fit: contain;
    vertical-align: middle;
}

.achievements-modal-v2 { padding:14px; }
.achievements-modal-summary { margin-bottom:10px;color:#aeb6c9;font-size:11px; }

.achievement-list-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
    padding: 9px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 9px;
    background: rgba(5,10,20,.35);
}

.achievement-list-row.locked { opacity:.54; }
.achievement-list-icon { width:40px;height:40px;flex:0 0 40px;object-fit:contain; }
.achievement-list-copy { min-width:0;flex:1; }
.achievement-list-copy b,.achievement-list-copy span,.achievement-list-copy small { display:block; }
.achievement-list-copy b { color:#ece6f7;font-size:11px; }
.achievement-list-copy span { margin-top:2px;color:#929caf;font-size:9px; }
.achievement-list-copy small { margin-top:4px;color:#b1a5c4;font-size:8px; }
.achievement-list-row em { color:#8791a4;font-size:8px;font-style:normal;text-transform:uppercase; }

/* Quests */
.quests-progress-v2 {
    display: grid;
    grid-template-columns: 24px auto 1fr auto;
    gap: 7px;
    align-items: center;
    margin-bottom: 7px;
    padding: 7px 8px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 8px;
    background: rgba(5,10,20,.3);
    color: #9da7b9;
    font-size: 9px;
}

.quests-progress-icon { width:22px;height:22px;object-fit:contain; }
.quests-progress-v2 .progress-track { height:5px; }
.quests-progress-v2 b { color:#d6c4e8;font-size:9px; }

.mini-quest-v2 {
    display: grid;
    grid-template-columns: 38px minmax(0,1fr) auto;
    gap: 8px;
    align-items: center;
    min-height: 52px;
    padding: 7px 4px;
    border-bottom: 1px solid rgba(255,255,255,.05);
}

.mini-quest-v2 > img {
    width: 38px;
    height: 38px;
    padding: 3px;
    border-radius: 8px;
    object-fit: contain;
    background: radial-gradient(circle,rgba(192,132,252,.12),transparent 68%);
}

.mini-quest-v2-copy { min-width:0; }
.mini-quest-v2-copy b { overflow:hidden;display:block;color:#dce2ee;font-size:10px;white-space:nowrap;text-overflow:ellipsis; }
.mini-quest-v2-copy .mini-track { width:100%;margin-top:6px; }
.mini-quest-v2 > span { color:#aeb6c9;font-size:9px; }

.quests-modal-v2 { display:grid;gap:8px;padding:2px; }

.quest-card-v2 {
    display: grid;
    grid-template-columns: 58px minmax(0,1fr) auto;
    gap: 11px;
    align-items: center;
    padding: 11px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 11px;
    background: linear-gradient(145deg,rgba(14,22,39,.8),rgba(6,11,22,.8));
}

.quest-card-v2.completed { border-color:rgba(141,240,181,.3); }
.quest-card-v2.claimed { opacity:.62; }

.quest-card-v2-icon {
    width: 58px;
    height: 58px;
    padding: 4px;
    border-radius: 10px;
    object-fit: contain;
    background: radial-gradient(circle,rgba(192,132,252,.13),transparent 68%);
}

.quest-card-v2-main { min-width:0; }
.quest-card-v2-main b { display:block;color:#e9e4f2;font-size:11px; }
.quest-card-v2-main small { display:block;margin-top:4px;color:#8e98aa;font-size:9px; }
.quest-linear { height:5px;margin-top:7px;overflow:hidden;border-radius:5px;background:rgba(255,255,255,.06); }
.quest-linear i { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7c3aed,#c084fc); }

.quest-card-v2-reward {
    display: grid;
    min-width: 80px;
    place-items: center;
    gap: 3px;
    color: #d9c8ee;
}

.quest-reward-icon { width:30px;height:30px;object-fit:contain; }
.quest-card-v2-reward b { font-size:11px; }
.quest-state,.quest-claim-btn { display:flex;align-items:center;gap:4px;font-size:8px; }
.quest-state-icon { width:17px;height:17px;object-fit:contain; }

/* Season */
.season-card-genesis {
    isolation: isolate;
    overflow: hidden;
}

.season-card-genesis::before {
    position: absolute;
    z-index: -2;
    inset: -16px;
    background: url('https://opalium-multiverse.com/wp-content/uploads/2026/07/file_00000000bfd081f4b004133d21a11fd2.png') center/cover;
    content: '';
    opacity: .22;
    filter: blur(6px) saturate(.8);
}

.season-card-genesis::after {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(90deg,rgba(6,11,22,.94),rgba(6,11,22,.65));
    content: '';
}

.season-next-reward-image {
    display: block;
    width: 42px;
    height: 42px;
    margin: 0 auto 4px;
    object-fit: contain;
    filter: drop-shadow(0 0 8px rgba(192,132,252,.25));
}

.summary-stat-icon {
    display: block;
    width: 25px;
    height: 25px;
    margin: 0 auto 3px;
    object-fit: contain;
}

.season-modal-v2 {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 18px;
    border-radius: 12px;
}

.season-modal-v2::before {
    position: absolute;
    z-index: -2;
    inset: -20px;
    background: var(--season-image) center/cover;
    content: '';
    opacity: .27;
    filter: blur(7px);
}

.season-modal-v2::after {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(180deg,rgba(5,9,18,.7),rgba(5,9,18,.96));
    content: '';
}

.season-modal-v2-hero { text-align:center; }
.season-modal-v2-hero > b { display:block;color:#cf9cff;font-size:38px; }
.season-modal-v2-hero > span { color:#aeb6c9;font-size:10px; }
.season-linear { height:7px;margin:13px 0 17px;overflow:hidden;border-radius:7px;background:rgba(255,255,255,.08); }
.season-linear i { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7c3aed,#d17aff); }
.season-modal-v2-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:8px; }
.season-modal-v2-grid > div { padding:10px 6px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(5,10,20,.42);text-align:center; }
.season-modal-v2-grid b,.season-modal-v2-grid span { display:block; }
.season-modal-v2-grid b { margin:4px 0;color:#f0eaf7;font-size:12px; }
.season-modal-v2-grid span { color:#929caf;font-size:8px; }
.season-stat-icon { width:38px;height:38px;object-fit:contain; }
.season-reward-image { width:58px;height:38px;object-fit:contain; }

/* Statistics + graph */
.stats-modal-v2 { padding:2px; }
.stats-rank-v2 { display:grid;grid-template-columns:46px 1fr auto;gap:9px;align-items:center;margin-bottom:10px;padding:10px;border:1px solid rgba(125,211,252,.16);border-radius:10px;background:rgba(125,211,252,.04); }
.stats-rank-v2 img { width:46px;height:46px;object-fit:contain; }
.stats-rank-v2 span { color:#929caf;font-size:9px; }
.stats-rank-v2 b { color:#b9e9ff;font-size:14px; }
.stats-graph-v2 { display:flex;height:150px;gap:8px;align-items:flex-end;margin-bottom:10px;padding:14px 12px 8px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(5,10,20,.36); }
.stats-graph-column { display:flex;height:100%;min-width:0;flex:1;align-items:center;flex-direction:column;justify-content:flex-end;gap:5px; }
.stats-graph-column i { width:min(34px,72%);min-height:8px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#d18aff,#6d38bd);box-shadow:0 0 10px rgba(192,132,252,.12); }
.stats-graph-column span { overflow:hidden;width:100%;color:#8791a3;font-size:7px;text-align:center;white-space:nowrap;text-overflow:ellipsis; }
.stats-cards-v2 { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px; }
.stats-card-v2 { display:flex;min-width:0;align-items:center;gap:7px;padding:8px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(5,10,20,.32); }
.stats-card-icon { width:30px;height:30px;flex:0 0 30px;object-fit:contain; }
.stats-card-v2 b,.stats-card-v2 span { display:block; }
.stats-card-v2 b { color:#eee8f7;font-size:12px; }
.stats-card-v2 span { margin-top:2px;color:#8e98aa;font-size:8px; }

/* Bigger favorite artifact images, scoped to profile */
.profile-modal .profile-mini-art {
    width: 72px !important;
    height: 72px !important;
}

.profile-modal .profile-mini-art img {
    width: 92% !important;
    height: 92% !important;
    filter: drop-shadow(0 0 10px rgba(192,132,252,.22));
}

@media (max-width:720px) {
    .profile-image-picker,.profile-frame-picker { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .profile-editor-content { max-height:66vh;padding:10px; }
    .profile-editor-tab { min-width:64px; }
    .quest-card-v2 { grid-template-columns:48px minmax(0,1fr); }
    .quest-card-v2-icon { width:48px;height:48px; }
    .quest-card-v2-reward { grid-column:2;display:flex;min-width:0;justify-content:flex-start; }
    .season-modal-v2-grid { grid-template-columns:1fr; }
    .stats-cards-v2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .stats-graph-v2 { height:125px;gap:4px; }
    .profile-modal .profile-mini-art { width:62px !important;height:62px !important; }
}

/* ============================================================
   OPALIUM Treasury v-next: navigation, sources and calm accents
   ============================================================ */
.treasury-shell { position:relative;z-index:1; }
.treasury::after {
    position:fixed;
    z-index:0;
    right:2vw;
    bottom:4vh;
    width:min(38vw,520px);
    height:min(62vh,620px);
    background:url('https://opalium-multiverse.com/wp-content/uploads/2026/07/1000080161-removebg-preview.png') right bottom/contain no-repeat;
    content:'';
    opacity:.035;
    pointer-events:none;
}

.treasury-links i,
.treasury-mobile i { display:grid;place-items:center; }
.treasury-links i img { width:30px;height:30px;object-fit:contain; }
.treasury-mobile i img { width:25px;height:25px;object-fit:contain; }
.treasury-links i img,
.treasury-mobile i img { animation:navIconBreath 3.8s ease-in-out infinite; }
@keyframes navIconBreath { 0%,100%{opacity:.78;filter:drop-shadow(0 0 0 transparent)} 50%{opacity:1;filter:drop-shadow(0 0 6px rgba(196,132,252,.28))} }

@media (max-width:1260px) and (min-width:721px) {
    .treasury-nav { height:auto;min-height:68px;gap:12px;padding:6px 0; }
    .treasury-brand { min-width:116px;flex:0 0 116px; }
    .treasury-brand b { font-size:16px; }
    .treasury-brand small { font-size:8px;line-height:1.2; }
    .treasury-links { min-width:0;justify-content:center;gap:5px; }
    .treasury-links button { min-width:0;gap:4px;padding:4px 3px;font-size:7px;white-space:nowrap; }
    .treasury-links i img { width:24px;height:24px; }
    .treasury-user { min-width:145px;padding:6px 8px; }
}

/* Fixed navigation is moved to body by JS, outside transformed app wrappers. */
body > .treasury-mobile { display:none !important; }
@media (max-width:720px) {
    .treasury-shell { animation:none !important;opacity:1 !important;transform:none !important; }
    body > .treasury-mobile {
        display:flex !important;
        position:fixed !important;
        z-index:2147483000 !important;
        right:0 !important;
        bottom:0 !important;
        left:0 !important;
        width:100vw !important;
        max-width:none !important;
        box-sizing:border-box;
        overflow-x:auto;
        justify-content:flex-start !important;
        padding:5px 3px calc(7px + env(safe-area-inset-bottom)) !important;
        transform:none !important;
        border-top:1px solid rgba(192,132,252,.2) !important;
        background:rgba(3,6,13,.97) !important;
    }
    body > .treasury-mobile button { min-width:60px !important;flex:1 0 60px !important;padding:3px 2px !important; }
}

.panel-achievements-tint { background:linear-gradient(145deg,rgba(52,45,18,.34),rgba(10,16,30,.96)) !important; }
.panel-statistics-tint { background:linear-gradient(145deg,rgba(18,45,72,.30),rgba(10,16,30,.96)) !important; }
.panel-profile-tint { background:linear-gradient(145deg,rgba(55,28,74,.30),rgba(10,16,30,.96)) !important; }
.panel-quests-tint { background:linear-gradient(145deg,rgba(18,58,42,.28),rgba(10,16,30,.96)) !important; }
.panel-rare-tint { background:linear-gradient(145deg,rgba(77,23,59,.28),rgba(10,16,30,.96)) !important; }

.stats-card-summary .season-stats > div {
    display:grid;
    min-height:72px;
    grid-template-rows:28px auto auto;
    place-items:center;
    align-content:center;
    gap:2px;
    text-align:center;
}
.stats-card-summary .summary-stat-icon { width:27px;height:27px;margin:0;grid-row:1; }
.stats-card-summary .season-stats b { grid-row:2;line-height:1.1; }
.stats-card-summary .season-stats span { grid-row:3;line-height:1.1; }

.col-source {
    display:flex;
    align-items:center;
    gap:7px;
    margin-bottom:5px;
    padding:7px 9px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:7px;
    color:#cbd3e5;
    background:rgba(255,255,255,.025);
}
.col-source-icon { width:26px;height:26px;flex:0 0 26px;object-fit:contain; }
.col-source-check { width:18px;height:18px;object-fit:contain;filter:drop-shadow(0 0 5px rgba(90,235,145,.35)); }
.col-source.source-world_boss { border-color:rgba(255,80,80,.24);background:rgba(103,20,28,.11); }
.col-source.source-nft_spin { border-color:rgba(190,100,255,.28);background:rgba(74,28,105,.12); }
.col-source.source-mgo { border-color:rgba(80,220,140,.25);background:rgba(24,91,58,.11); }
.col-source.source-telegram { border-color:rgba(85,180,255,.27);background:rgba(24,70,108,.12); }
.col-source.obtained { border-color:rgba(89,235,145,.55) !important;background:rgba(32,117,72,.18) !important;color:#9ff1bf;box-shadow:inset 0 0 12px rgba(89,235,145,.04); }

.achievement.locked { opacity:.72 !important;filter:none !important; }
.achievement.locked i img,.achievement i img { width:42px;height:42px;object-fit:contain; }

.mini-quest-v2-copy small { display:block;margin-top:4px;color:#a8e9c0;font-size:8px; }

.referral-friends-btn {
    min-height:36px;padding:7px 12px;border:1px solid rgba(110,180,255,.25);border-radius:8px;background:rgba(50,110,175,.09);color:#bcdfff;font-size:10px;cursor:pointer;
}
.friend-profile-row { display:grid;width:100%;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;margin-bottom:6px;padding:9px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(255,255,255,.025);color:#e8ecf7;text-align:left;cursor:pointer; }
.friend-profile-row img { width:44px;height:44px;border-radius:9px;object-fit:cover; }
.friend-profile-row b,.friend-profile-row small { display:block; }
.friend-profile-row small { margin-top:3px;color:#929caf;font-size:9px; }
.friend-profile-row em { color:#ffb875;font-size:9px;font-style:normal; }
.friends-loading { padding:24px;color:#aeb7ca;text-align:center; }

.streak-modal-v2,.streak-modal-v2 * { color:#dce3f2; }
.streak-modal-summary { display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;padding:10px;border:1px solid rgba(255,155,85,.18);border-radius:10px;background:rgba(108,48,21,.08); }
.streak-summary-icon { width:40px;height:40px;object-fit:contain; }
.streak-modal-summary b { color:#ffc17c;font-size:24px; }
.streak-modal-summary span { color:#aeb7ca;font-size:10px; }
.streak-reward-v2 { display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;margin-bottom:6px;padding:9px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(255,255,255,.025); }
.streak-reward-v2.available { border-color:rgba(255,193,90,.30);background:rgba(110,68,20,.09); }
.streak-reward-v2.claimed { opacity:.62; }
.streak-reward-v2-icon { width:40px;height:40px;object-fit:contain; }
.streak-reward-v2 b,.streak-reward-v2 span { display:block; }
.streak-reward-v2 b { color:#f0e8da;font-size:11px; }
.streak-reward-v2 span { margin-top:3px;color:#b8c1d2;font-size:9px; }
.streak-claim-v2 { padding:7px 9px;border:1px solid rgba(110,231,162,.35);border-radius:7px;background:rgba(110,231,162,.1);color:#a7f3c3;cursor:pointer;font-size:9px; }
.streak-status-v2 { color:#8f99aa !important;font-size:8px !important; }
.streak-status-v2.claimed { color:#80dba3 !important; }
.streak-hint-v2 { margin:11px 2px 0;color:#8f99aa !important;font-size:9px;line-height:1.5; }

.notification-host { position:relative !important; }
.opalium-notification-dot { position:absolute;z-index:12;top:7px;right:7px;width:8px;height:8px;border:2px solid #101827;border-radius:50%;background:#ff465c;box-shadow:0 0 9px rgba(255,70,92,.62);animation:notificationPulse 2.2s ease-in-out infinite; }
@keyframes notificationPulse { 0%,100%{transform:scale(.9);opacity:.8} 50%{transform:scale(1.12);opacity:1} }

@media (prefers-reduced-motion:reduce) {
    .treasury-links i img,.treasury-mobile i img,.opalium-notification-dot { animation:none !important; }
}
