/* ═══ PROFILE POPUP — Elite Trading Identity ═══ */
#profilePopup{position:fixed;inset:0;background:rgba(0,0,0,.75);display:none;align-items:center;justify-content:center;z-index:var(--z-call);padding:var(--sp-5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#profilePopup.open{display:flex}
.pp-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r-2xl);width:min(400px,100%);max-height:min(90vh,760px);overflow-y:auto;animation:slideUp .3s var(--ease-out);box-shadow:0 32px 80px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.04)}
.pp-card::-webkit-scrollbar{width:4px}
.pp-card::-webkit-scrollbar-thumb{background:rgba(255,255,255,.08);border-radius:4px}

/* ── Banner — gradient overlay for depth ── */
.pp-banner{height:100px;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);position:relative;background-size:cover;background-position:center}
.pp-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.5) 100%);pointer-events:none}

/* ── Rank badge on banner ── */
.pp-rank-badge{position:absolute;top:var(--sp-3);left:var(--sp-3);padding:var(--sp-1) var(--sp-2h);border-radius:var(--r-full);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.8px;text-transform:uppercase;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:3;display:flex;align-items:center;gap:var(--sp-1);line-height:1.4}
.pp-rank-badge.top1{background:linear-gradient(135deg,rgba(251,191,36,.25),rgba(245,158,11,.18));border:1px solid rgba(251,191,36,.5);color:#fbbf24;box-shadow:0 0 16px rgba(251,191,36,.15)}
.pp-rank-badge.top10{background:linear-gradient(135deg,rgba(168,85,247,.2),rgba(139,92,246,.12));border:1px solid rgba(168,85,247,.4);color:#c084fc;box-shadow:0 0 16px rgba(168,85,247,.1)}
.pp-rank-badge.top25{background:linear-gradient(135deg,rgba(56,189,248,.15),rgba(14,165,233,.1));border:1px solid rgba(56,189,248,.35);color:#7dd3fc;box-shadow:0 0 16px rgba(56,189,248,.08)}

/* ── Tier badge — positioned on banner right ── */
.pp-tier-badge{position:absolute;top:var(--sp-3);right:var(--sp-3);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);font-size:var(--text-2xs);font-weight:var(--weight-extra);letter-spacing:1px;text-transform:uppercase;z-index:3;display:flex;align-items:center;gap:var(--sp-1);line-height:1.4}
.pp-tier-badge.tier-bronze{background:linear-gradient(135deg,rgba(180,130,80,.2),rgba(160,110,60,.12));border:1px solid rgba(180,130,80,.4);color:#cd7f32}
.pp-tier-badge.tier-silver{background:linear-gradient(135deg,rgba(192,192,192,.2),rgba(160,160,160,.12));border:1px solid rgba(192,192,192,.4);color:#c0c0c0}
.pp-tier-badge.tier-gold{background:linear-gradient(135deg,rgba(255,215,0,.2),rgba(218,165,32,.12));border:1px solid rgba(255,215,0,.4);color:#ffd700;box-shadow:0 0 12px rgba(255,215,0,.1)}
.pp-tier-badge.tier-platinum{background:linear-gradient(135deg,rgba(200,220,255,.18),rgba(180,200,240,.1));border:1px solid rgba(200,220,255,.4);color:#e0e8ff;box-shadow:0 0 16px rgba(200,220,255,.08)}
.pp-tier-badge.tier-diamond{background:linear-gradient(135deg,rgba(185,242,255,.2),rgba(0,200,255,.12));border:1px solid rgba(185,242,255,.45);color:#b9f2ff;box-shadow:0 0 20px rgba(185,242,255,.12);animation:tierDiamondGlow 3s ease-in-out infinite alternate}
@keyframes tierDiamondGlow{0%{box-shadow:0 0 12px rgba(185,242,255,.08)}50%{box-shadow:0 0 24px rgba(185,242,255,.18)}100%{box-shadow:0 0 12px rgba(185,242,255,.08)}}

/* ── Avatar — glowing ring for elite feel ── */
.pp-avatar-wrap{position:absolute;bottom:-40px;left:var(--sp-5);overflow:visible;z-index:4}
.pp-avatar{width:82px;height:82px;border-radius:var(--r-full);background:var(--bg5);border:4px solid var(--bg2);display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold);font-size:var(--text-2xl);overflow:visible;position:relative;box-shadow:0 8px 32px rgba(0,0,0,.5);transition:box-shadow var(--dur-slow)}
.pp-avatar img{width:100%;height:100%;object-fit:cover;border-radius:var(--r-full)}
/* Tier-based avatar glow rings */
.pp-avatar.glow-gold{box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 0 3px rgba(255,215,0,.35),0 0 20px rgba(255,215,0,.12)}
.pp-avatar.glow-platinum{box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 0 3px rgba(200,220,255,.35),0 0 20px rgba(200,220,255,.12)}
.pp-avatar.glow-diamond{box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 0 3px rgba(185,242,255,.4),0 0 24px rgba(185,242,255,.15);animation:avatarDiamondPulse 3s ease-in-out infinite alternate}
@keyframes avatarDiamondPulse{0%{box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 0 3px rgba(185,242,255,.35),0 0 20px rgba(185,242,255,.1)}50%{box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 0 4px rgba(185,242,255,.5),0 0 32px rgba(185,242,255,.2)}100%{box-shadow:0 8px 32px rgba(0,0,0,.5),0 0 0 3px rgba(185,242,255,.35),0 0 20px rgba(185,242,255,.1)}}

.pp-close{position:absolute;top:var(--sp-3);right:var(--sp-3);background:rgba(0,0,0,.4);border:none;color:rgba(255,255,255,.7);font-size:var(--text-md);width:28px;height:28px;border-radius:var(--r-full);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--dur-fast),color var(--dur-fast);backdrop-filter:blur(8px);z-index:5}
.pp-close:hover{background:rgba(0,0,0,.65);color:var(--text)}

/* ── Identity header ── */
.pp-body{padding:var(--sp-12) var(--sp-5) var(--sp-5);padding-top:48px}
.pp-identity{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-1)}
.pp-name-row{min-width:0;flex:1}
.pp-name{font-size:var(--text-xl);font-weight:var(--weight-extra);color:var(--text);margin-bottom:2px;line-height:1.2;letter-spacing:-.3px}
.pp-handle{font-size:var(--text-xs);color:var(--muted)}

/* ── P&L hero — the number people show off (BIGGER, BOLDER) ── */
.pp-pnl-hero{text-align:right;flex-shrink:0}
.pp-pnl-value{font-size:var(--text-2xl);font-weight:var(--weight-extra);line-height:1.15;letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-family:var(--font-mono)}
.pp-pnl-value.up{color:var(--up);text-shadow:0 0 24px rgba(61,168,122,.2)}
.pp-pnl-value.down{color:var(--down);text-shadow:0 0 24px rgba(224,80,80,.2)}
.pp-pnl-value.neutral{color:var(--muted)}
.pp-pnl-pct{font-size:var(--text-sm);font-weight:var(--weight-bold);margin-top:2px;font-variant-numeric:tabular-nums;padding:var(--sp-0) var(--sp-2);border-radius:var(--r-sm);display:inline-block}
.pp-pnl-pct.up{color:var(--up);background:var(--up-dim)}
.pp-pnl-pct.down{color:var(--down);background:var(--down-dim)}
.pp-pnl-pct.neutral{color:var(--text-faint)}

.pp-plate{font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:var(--sp-2);font-style:italic;padding-top:var(--sp-2)}

/* ── Stats grid — 2x2 with subtle elevation ── */
.pp-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border2);border-radius:var(--r-xl);overflow:hidden;margin:var(--sp-4) 0;box-shadow:var(--shadow-sm)}
.pp-stat{background:var(--bg2);padding:var(--sp-3) var(--sp-4);text-align:center;transition:background var(--dur-fast)}
.pp-stat:hover{background:var(--surface-0)}
.pp-stat-label{font-size:var(--text-2xs);font-weight:var(--weight-semi);letter-spacing:1px;text-transform:uppercase;color:var(--text-faint);margin-bottom:var(--sp-1)}
.pp-stat-value{font-size:var(--text-lg);font-weight:var(--weight-extra);color:var(--text);font-variant-numeric:tabular-nums}
.pp-stat-value.up{color:var(--up)}
.pp-stat-value.down{color:var(--down)}

/* ── Section titles ── */
.pp-section-title{font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:1.2px;text-transform:uppercase;color:var(--text-faint);margin-bottom:var(--sp-2);padding-top:var(--sp-3)}

/* ── Holdings mini-list ── */
.pp-holdings-section{margin-top:var(--sp-2)}
.pp-holdings-list{display:flex;flex-direction:column;gap:1px}
.pp-hold-item{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2h) 0;gap:var(--sp-2);border-bottom:1px solid var(--border2)}
.pp-hold-item:last-child{border-bottom:none}
.pp-hold-sym{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text);min-width:56px}
.pp-hold-shares{font-size:var(--text-2xs);color:var(--muted);flex:1;text-align:center}
.pp-hold-pnl{font-size:var(--text-sm);font-weight:var(--weight-bold);text-align:right;font-variant-numeric:tabular-nums}
.pp-hold-pnl.up{color:var(--up)}
.pp-hold-pnl.down{color:var(--down)}
.pp-hold-more{font-size:var(--text-2xs);color:var(--text-faint);text-align:center;padding:var(--sp-2) 0}

/* ── Recent activity ── */
.pp-activity-section{margin-top:var(--sp-1)}
.pp-activity-list{display:flex;flex-direction:column;gap:2px}
.pp-act-item{display:flex;align-items:center;gap:var(--sp-2h);padding:var(--sp-2) 0}
.pp-act-badge{width:22px;height:22px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:var(--weight-extra);letter-spacing:.5px;flex-shrink:0}
.pp-act-badge.buy{background:var(--up-dim);color:var(--up)}
.pp-act-badge.sell{background:var(--down-dim);color:var(--down)}
.pp-act-info{flex:1;min-width:0}
.pp-act-stock{font-size:var(--text-sm);font-weight:var(--weight-semi);color:var(--text)}
.pp-act-detail{font-size:var(--text-2xs);color:var(--muted);margin-top:1px}
.pp-act-time{font-size:var(--text-2xs);color:var(--text-faint);flex-shrink:0}

/* ── About section ── */
.pp-about-section{margin-top:var(--sp-3);border-top:1px solid var(--border2);padding-top:var(--sp-1)}
.pp-about-text{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed);word-break:break-word}
.pp-no-about{font-size:var(--text-sm);color:var(--text-faint);font-style:italic}

/* ── Actions ── */
.pp-actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-4)}
.pp-dm-btn{flex:1;padding:var(--sp-3);background:var(--text);border:none;border-radius:var(--r-lg);color:var(--bg);font-size:var(--text-sm);font-weight:var(--weight-extra);letter-spacing:.3px;cursor:pointer;font-family:var(--font);transition:background var(--dur-fast),color var(--dur-fast),transform var(--dur-normal) var(--ease-spring),box-shadow var(--dur-fast);min-height:44px;box-shadow:var(--shadow-sm)}
.pp-dm-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.pp-dm-btn:active{background:var(--text-secondary);transform:scale(.98)}

/* ── Share Profile Button ── */
.pp-share-btn{width:100%;padding:var(--sp-3);margin-top:var(--sp-2);background:transparent;border:1px solid var(--border);border-radius:var(--r-lg);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semi);letter-spacing:.3px;cursor:pointer;font-family:var(--font);transition:all var(--dur-normal) var(--ease-out);display:flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:42px}
.pp-share-btn:hover{background:var(--surface-1);border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 1px var(--primary),var(--shadow-sm)}
.pp-share-btn:active{transform:scale(.98)}
.pp-share-btn.generating{pointer-events:none;opacity:.6}
.pp-share-btn .pp-share-spin{display:none;width:14px;height:14px;border:2px solid var(--muted);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite}
.pp-share-btn.generating .pp-share-spin{display:inline-block}
.pp-share-btn.generating svg{display:none}

/* ── Share Preview Overlay ── */
.pp-share-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;z-index:calc(var(--z-call) + 10);padding:var(--sp-5);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);flex-direction:column;gap:var(--sp-5)}
.pp-share-overlay.open{display:flex}
.pp-share-preview{border-radius:var(--r-xl);overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.6);max-width:min(420px,90vw);animation:slideUp .35s var(--ease-out)}
.pp-share-preview img{width:100%;display:block;border-radius:var(--r-xl)}
.pp-share-actions{display:flex;gap:var(--sp-3);animation:fadeUp .4s var(--ease-out) .1s both}
.pp-share-action-btn{padding:var(--sp-3) var(--sp-6);border:none;border-radius:var(--r-full);font-size:var(--text-sm);font-weight:var(--weight-extra);cursor:pointer;font-family:var(--font);transition:all var(--dur-normal) var(--ease-out);display:flex;align-items:center;gap:var(--sp-2);letter-spacing:.3px}
.pp-share-action-btn.primary{background:var(--primary);color:#fff;box-shadow:0 4px 20px rgba(61,168,122,.3)}
.pp-share-action-btn.primary:hover{box-shadow:0 6px 28px rgba(61,168,122,.45);transform:translateY(-1px)}
.pp-share-action-btn.secondary{background:rgba(255,255,255,.08);color:var(--text);border:1px solid var(--border)}
.pp-share-action-btn.secondary:hover{background:rgba(255,255,255,.12)}
.pp-share-action-btn:active{transform:scale(.96)}
.pp-share-close{position:absolute;top:var(--sp-5);right:var(--sp-5);background:rgba(255,255,255,.08);border:none;color:rgba(255,255,255,.6);width:36px;height:36px;border-radius:var(--r-full);cursor:pointer;font-size:var(--text-lg);display:flex;align-items:center;justify-content:center;transition:all var(--dur-fast)}
.pp-share-close:hover{background:rgba(255,255,255,.15);color:#fff}
@keyframes spin{to{transform:rotate(360deg)}}

[data-theme="light"] .pp-share-btn{border-color:rgba(0,0,0,.1);color:rgba(0,0,0,.5)}
[data-theme="light"] .pp-share-btn:hover{border-color:var(--primary);color:var(--primary);background:rgba(61,168,122,.04)}
[data-theme="light"] .pp-share-overlay{background:rgba(255,255,255,.85)}
[data-theme="light"] .pp-share-close{background:rgba(0,0,0,.06);color:rgba(0,0,0,.4)}
[data-theme="light"] .pp-share-action-btn.secondary{background:rgba(0,0,0,.04);color:#111;border-color:rgba(0,0,0,.1)}

/* ── Light mode ── */
[data-theme="light"] .pp-card{box-shadow:0 24px 80px rgba(0,0,0,.15),0 0 0 1px rgba(0,0,0,.06)}
[data-theme="light"] .pp-card::-webkit-scrollbar-thumb{background:rgba(0,0,0,.1)}
[data-theme="light"] .pp-banner{background:linear-gradient(135deg,#c9d6ff,#e2e2e2,#a8c0ff)}
[data-theme="light"] .pp-banner::after{background:linear-gradient(180deg,transparent 40%,rgba(255,255,255,.4) 100%)}
[data-theme="light"] .pp-avatar{background:var(--bg4);box-shadow:0 8px 32px rgba(0,0,0,.12)}
[data-theme="light"] .pp-close{background:rgba(255,255,255,.5);color:var(--muted)}
[data-theme="light"] .pp-pnl-value.neutral{color:rgba(0,0,0,.35)}
[data-theme="light"] .pp-pnl-value.up{text-shadow:none}
[data-theme="light"] .pp-pnl-value.down{text-shadow:none}
[data-theme="light"] .pp-pnl-pct.neutral{color:rgba(0,0,0,.25)}
[data-theme="light"] .pp-stats-grid{background:rgba(0,0,0,.06);box-shadow:var(--shadow-xs)}
[data-theme="light"] .pp-stat{background:var(--bg)}
[data-theme="light"] .pp-stat-label{color:rgba(0,0,0,.35)}
[data-theme="light"] .pp-stat-value{color:#111}
[data-theme="light"] .pp-hold-sym{color:#111}
[data-theme="light"] .pp-hold-shares{color:rgba(0,0,0,.4)}
[data-theme="light"] .pp-act-stock{color:#111}
[data-theme="light"] .pp-act-detail{color:rgba(0,0,0,.4)}
[data-theme="light"] .pp-act-time{color:rgba(0,0,0,.3)}
[data-theme="light"] .pp-section-title{color:rgba(0,0,0,.3)}
[data-theme="light"] .pp-about-section{border-top-color:rgba(0,0,0,.06)}
[data-theme="light"] .pp-rank-badge.top1{background:linear-gradient(135deg,rgba(251,191,36,.12),rgba(245,158,11,.08));border-color:rgba(180,130,20,.35);color:#b47e14}
[data-theme="light"] .pp-rank-badge.top10{background:linear-gradient(135deg,rgba(168,85,247,.08),rgba(139,92,246,.05));border-color:rgba(139,92,246,.3);color:#8b5cf6}
[data-theme="light"] .pp-rank-badge.top25{background:linear-gradient(135deg,rgba(14,165,233,.08),rgba(56,189,248,.05));border-color:rgba(14,165,233,.25);color:#0ea5e9}
[data-theme="light"] .pp-tier-badge.tier-bronze{color:#8b6914}
[data-theme="light"] .pp-tier-badge.tier-silver{color:#6b6b6b}
[data-theme="light"] .pp-tier-badge.tier-gold{color:#b8860b;box-shadow:none}
[data-theme="light"] .pp-tier-badge.tier-platinum{color:#5060a0;box-shadow:none}
[data-theme="light"] .pp-tier-badge.tier-diamond{color:#0088aa;box-shadow:none;animation:none}
[data-theme="light"] .pp-avatar.glow-gold{box-shadow:0 8px 32px rgba(0,0,0,.12),0 0 0 3px rgba(218,165,32,.3)}
[data-theme="light"] .pp-avatar.glow-platinum{box-shadow:0 8px 32px rgba(0,0,0,.12),0 0 0 3px rgba(100,110,160,.25)}
[data-theme="light"] .pp-avatar.glow-diamond{box-shadow:0 8px 32px rgba(0,0,0,.12),0 0 0 3px rgba(0,180,220,.3);animation:none}

/* ═══ NAME FONTS ═══ */
.nf-default{font-family:var(--font)}
.nf-firacode{font-family:'Fira Code',monospace}
.nf-spacemono{font-family:'Space Mono',monospace}
.nf-kanit{font-family:'Kanit',sans-serif}
.nf-righteous{font-family:'Righteous',sans-serif}
.nf-orbitron{font-family:'Orbitron',sans-serif}
.nf-lobster{font-family:'Lobster',cursive}
.nf-pacifico{font-family:'Pacifico',cursive}
.nf-caveat{font-family:'Caveat',cursive}
.nf-dancing{font-family:'Dancing Script',cursive}
.nf-satisfy{font-family:'Satisfy',cursive}
.nf-marker{font-family:'Permanent Marker',cursive}
.nf-press{font-family:'Press Start 2P',monospace}

/* ═══ AVATAR DECOR ═══ */
.sp-decor-preview{display:flex;justify-content:center;padding:var(--sp-5) 0 var(--sp-3)}
.decor-preview-av{width:72px;height:72px;border-radius:var(--r-full);background:var(--bg5);display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold);font-size:var(--text-2xl);position:relative;overflow:visible;border:1px solid var(--border)}
.decor-preview-av img{width:100%;height:100%;object-fit:cover;border-radius:var(--r-full)}
.sp-decor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-2);margin-top:var(--sp-2)}
.sp-decor-item{display:flex;flex-direction:column;align-items:center;gap:5px;padding:var(--sp-3) var(--sp-1);border-radius:var(--r-lg);cursor:pointer;border:2px solid transparent;background:var(--surface-0);transition:background var(--dur-fast),color var(--dur-fast),transform var(--dur-fast)}
.sp-decor-item:hover{background:var(--surface-2);transform:translateY(-2px)}
.sp-decor-item.active{border-color:rgba(88,101,242,.6);background:rgba(88,101,242,.08)}
.sp-decor-thumb{width:44px;height:44px;border-radius:var(--r-full);background:var(--bg5);position:relative;overflow:visible;display:flex;align-items:center;justify-content:center;font-size:var(--text-md);font-weight:var(--weight-bold)}
.sp-decor-name{font-size:9px;color:var(--muted);font-weight:var(--weight-semi);text-align:center;letter-spacing:.3px}
[data-theme="light"] .sp-decor-item.active{background:rgba(88,101,242,.06)}
[data-theme="light"] .sp-decor-thumb{background:var(--bg4)}

/* Decor ring styles — applied to any avatar wrapper */
.av-decor{position:absolute;inset:-4px;border-radius:var(--r-full);pointer-events:none;z-index:3}
.av-decor-lg{position:absolute;inset:-6px;border-radius:var(--r-full);pointer-events:none;z-index:3}

/* d-none = no decor */
/* d-flame */
.decor-flame{border:2.5px solid #ff6a00;box-shadow:0 0 8px rgba(255,106,0,.5),0 0 20px rgba(255,60,0,.25);animation:decorFlame 2s ease-in-out infinite alternate}
@keyframes decorFlame{0%{box-shadow:0 0 6px rgba(255,106,0,.5),0 0 16px rgba(255,60,0,.2)}50%{box-shadow:0 0 12px rgba(255,106,0,.7),0 0 28px rgba(255,60,0,.35)}100%{box-shadow:0 0 6px rgba(255,106,0,.5),0 0 16px rgba(255,60,0,.2)}}
/* d-ice */
.decor-ice{border:2.5px solid #00d4ff;box-shadow:0 0 8px rgba(0,212,255,.4),0 0 20px rgba(0,150,255,.2);animation:decorIce 3s ease-in-out infinite alternate}
@keyframes decorIce{0%{box-shadow:0 0 6px rgba(0,212,255,.4),0 0 16px rgba(0,150,255,.15)}50%{box-shadow:0 0 14px rgba(0,212,255,.6),0 0 30px rgba(0,150,255,.3)}100%{box-shadow:0 0 6px rgba(0,212,255,.4),0 0 16px rgba(0,150,255,.15)}}
/* d-toxic */
.decor-toxic{border:2.5px solid #39ff14;box-shadow:0 0 8px rgba(57,255,20,.4),0 0 20px rgba(57,255,20,.15);animation:decorToxic 2.5s ease-in-out infinite alternate}
@keyframes decorToxic{0%{box-shadow:0 0 6px rgba(57,255,20,.4),0 0 14px rgba(57,255,20,.1)}50%{box-shadow:0 0 12px rgba(57,255,20,.6),0 0 26px rgba(57,255,20,.25)}100%{box-shadow:0 0 6px rgba(57,255,20,.4),0 0 14px rgba(57,255,20,.1)}}
/* d-royal */
.decor-royal{border:2.5px solid #a855f7;box-shadow:0 0 8px rgba(168,85,247,.4),0 0 20px rgba(168,85,247,.15);animation:decorRoyal 3s ease-in-out infinite alternate}
@keyframes decorRoyal{0%{box-shadow:0 0 6px rgba(168,85,247,.4),0 0 14px rgba(168,85,247,.1)}50%{box-shadow:0 0 14px rgba(168,85,247,.6),0 0 28px rgba(168,85,247,.25)}100%{box-shadow:0 0 6px rgba(168,85,247,.4),0 0 14px rgba(168,85,247,.1)}}
/* d-gold */
.decor-gold{border:2.5px solid #fbbf24;box-shadow:0 0 8px rgba(251,191,36,.45),0 0 18px rgba(251,191,36,.15);animation:decorGold 3s ease-in-out infinite alternate}
@keyframes decorGold{0%{box-shadow:0 0 6px rgba(251,191,36,.4),0 0 14px rgba(251,191,36,.1)}50%{box-shadow:0 0 12px rgba(251,191,36,.6),0 0 24px rgba(251,191,36,.25)}100%{box-shadow:0 0 6px rgba(251,191,36,.4),0 0 14px rgba(251,191,36,.1)}}
/* d-blood */
.decor-blood{border:2.5px solid #dc2626;box-shadow:0 0 8px rgba(220,38,38,.45),0 0 18px rgba(220,38,38,.15);animation:decorBlood 2s ease-in-out infinite alternate}
@keyframes decorBlood{0%{box-shadow:0 0 6px rgba(220,38,38,.4),0 0 14px rgba(220,38,38,.1)}50%{box-shadow:0 0 14px rgba(220,38,38,.65),0 0 28px rgba(220,38,38,.3)}100%{box-shadow:0 0 6px rgba(220,38,38,.4),0 0 14px rgba(220,38,38,.1)}}
/* d-shadow */
.decor-shadow{border:2.5px solid rgba(100,100,100,.5);box-shadow:0 0 10px rgba(0,0,0,.6),0 0 25px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,255,255,.08);animation:decorShadow 3s ease-in-out infinite alternate}
@keyframes decorShadow{0%{box-shadow:0 0 8px rgba(0,0,0,.5),0 0 20px rgba(0,0,0,.25),inset 0 0 0 1px rgba(255,255,255,.06)}50%{box-shadow:0 0 16px rgba(0,0,0,.7),0 0 35px rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,255,255,.1)}100%{box-shadow:0 0 8px rgba(0,0,0,.5),0 0 20px rgba(0,0,0,.25),inset 0 0 0 1px rgba(255,255,255,.06)}}
/* d-rainbow */
.decor-rainbow{border:2.5px solid transparent;background:conic-gradient(from 0deg,#ff0000,#ff8800,#ffff00,#00ff00,#0088ff,#8800ff,#ff0000) border-box;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:decorRainbowSpin 3s linear infinite;box-shadow:0 0 10px rgba(255,100,100,.2),0 0 20px rgba(100,100,255,.15)}
@keyframes decorRainbowSpin{from{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}
/* d-sakura */
.decor-sakura{border:2.5px solid #fca5c4;box-shadow:0 0 8px rgba(252,165,196,.4),0 0 18px rgba(252,165,196,.15);animation:decorSakura 3s ease-in-out infinite alternate}
@keyframes decorSakura{0%{box-shadow:0 0 6px rgba(252,165,196,.4),0 0 14px rgba(252,165,196,.1)}50%{box-shadow:0 0 12px rgba(252,165,196,.6),0 0 24px rgba(252,165,196,.2)}100%{box-shadow:0 0 6px rgba(252,165,196,.4),0 0 14px rgba(252,165,196,.1)}}
/* d-electric */
.decor-electric{border:2.5px solid #38bdf8;box-shadow:0 0 6px rgba(56,189,248,.4),0 0 14px rgba(56,189,248,.15);animation:decorElectric 1.5s ease-in-out infinite}
@keyframes decorElectric{0%{box-shadow:0 0 6px rgba(56,189,248,.4),0 0 14px rgba(56,189,248,.15);border-color:#38bdf8}25%{box-shadow:0 0 16px rgba(56,189,248,.8),0 0 30px rgba(56,189,248,.4);border-color:#7dd3fc}50%{box-shadow:0 0 4px rgba(56,189,248,.3),0 0 10px rgba(56,189,248,.1);border-color:#0ea5e9}75%{box-shadow:0 0 14px rgba(56,189,248,.7),0 0 28px rgba(56,189,248,.35);border-color:#7dd3fc}100%{box-shadow:0 0 6px rgba(56,189,248,.4),0 0 14px rgba(56,189,248,.15);border-color:#38bdf8}}
/* d-phantom */
.decor-phantom{border:2.5px solid rgba(148,163,184,.4);box-shadow:0 0 10px rgba(148,163,184,.2),0 0 20px rgba(100,116,139,.1);animation:decorPhantom 4s ease-in-out infinite}
@keyframes decorPhantom{0%{opacity:.5;box-shadow:0 0 8px rgba(148,163,184,.15),0 0 16px rgba(100,116,139,.05)}50%{opacity:1;box-shadow:0 0 14px rgba(148,163,184,.35),0 0 28px rgba(100,116,139,.15)}100%{opacity:.5;box-shadow:0 0 8px rgba(148,163,184,.15),0 0 16px rgba(100,116,139,.05)}}
