/* ========== MegaListFree – Purple & White ========== */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --p900:#2e1065;--p800:#4c1d95;--p700:#5b21b6;--p600:#6d28d9;--p500:#7c3aed;--p400:#a78bfa;--p200:#ddd6fe;--p100:#ede9fe;--p50:#f7f4ff;
  --white:#fff;--ease:cubic-bezier(.22,1,.36,1)
}
html{scroll-behavior:smooth}
body{font-family:'Inter','Segoe UI',system-ui,-apple-system,sans-serif;background:var(--white);color:var(--p900);line-height:1.7;min-height:100vh;overflow-x:hidden}
a{color:var(--p600);text-decoration:none}
::selection{background:var(--p500);color:var(--white)}

/* ---------- keyframes ---------- */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideIn{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}
@keyframes gradientMove{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@keyframes pulseRing{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.35);opacity:0}}
@keyframes bounceDown{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;max-width:100%;padding:16px max(20px,calc((100% - 1200px)/2 + 20px));background:rgba(255,255,255,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--p100);animation:fadeIn .6s var(--ease)}
.logo{font-size:1.4em;font-weight:800;color:var(--p900);letter-spacing:-.3px}
.logo span{background:linear-gradient(90deg,var(--p500),var(--p400),var(--p700),var(--p500));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradientMove 6s ease infinite}
.top-nav a{position:relative;color:var(--p800);margin-left:24px;font-weight:600;font-size:15px}
.top-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--p500);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}
.top-nav a:hover::after{transform:scaleX(1);transform-origin:left}

/* ---------- layout ---------- */
.container{max-width:1200px;margin:28px auto 0;padding:0 20px 20px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:28px;align-items:start}
.main-content{grid-column:2;grid-row:1;background:var(--white);border:1px solid var(--p100);border-radius:24px;padding:40px;animation:fadeUp .8s var(--ease) both}
.sidebar{grid-column:1;grid-row:1;position:sticky;top:90px;background:var(--p50);border:1px solid var(--p100);border-radius:24px;padding:24px;animation:slideIn .8s var(--ease) both}

/* ---------- sidebar ---------- */
.sidebar-title{color:var(--p800);margin-bottom:18px;font-size:1.3em;font-weight:800;text-align:center;position:relative;padding-bottom:12px}
.sidebar-title::after{content:"";position:absolute;left:30%;right:30%;bottom:0;height:3px;border-radius:3px;background:var(--p500);transform-origin:center;animation:grow .9s .3s var(--ease) both}
.now-label{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:var(--p600);font-weight:700;margin:0 0 8px 4px}
.company-list{display:block;max-height:400px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--p400) transparent;padding-right:6px;position:relative}
.company-list::-webkit-scrollbar{width:6px}
.company-list::-webkit-scrollbar-thumb{background:var(--p400);border-radius:3px}
.company-list::after{content:"\2193  Scroll for more companies";position:sticky;bottom:-5px;display:block;text-align:center;padding:10px 5px 6px;margin-top:10px;background:linear-gradient(rgba(247,244,255,0),var(--p50) 55%);color:var(--p600);font-size:11px;font-weight:600;pointer-events:none;animation:bounceDown 1.8s ease-in-out infinite}

.company-item{display:flex;align-items:center;padding:11px 14px;margin-bottom:8px;background:var(--white);border:1px solid var(--p100);border-radius:14px;color:var(--p900);transition:transform .35s var(--ease),background-color .35s var(--ease),border-color .35s var(--ease)}
.company-item:hover{transform:translateX(6px);border-color:var(--p400);background:var(--p100)}
.company-item.active{background:var(--p600);border-color:var(--p600);color:var(--white)}
.company-item.active .company-name,.company-item.active .company-group{color:var(--white)}
.company-item.active .company-number{background:var(--white);color:var(--p700)}
.company-item.now{margin-bottom:16px;cursor:default;position:relative}
.company-item.now:hover{transform:none;background:var(--p600)}
.company-item.now .company-number{position:relative}
.company-item.now .company-number::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--white);animation:pulseRing 1.6s ease-out infinite}
.company-number{background:var(--p600);color:var(--white);width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;margin-right:12px;flex-shrink:0;transition:transform .35s var(--ease)}
.company-item:hover .company-number{transform:rotate(-8deg) scale(1.08)}
.company-info{display:flex;flex-direction:column;min-width:0}
.company-name{font-size:14px;font-weight:600;color:var(--p900)}
.company-group{font-size:11px;color:var(--p600);opacity:.75}

/* ---------- breadcrumb & header ---------- */
.breadcrumb{font-size:13px;color:var(--p600);margin-bottom:22px}
.breadcrumb a{color:var(--p600);font-weight:500}
.breadcrumb a:hover{color:var(--p900)}
.breadcrumb span{margin:0 5px;opacity:.6}

.review-header{text-align:center;margin-bottom:26px;padding-bottom:24px;position:relative}
.review-header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--p100),var(--p500),var(--p100));transform-origin:center;animation:grow 1s .25s var(--ease) both}
.review-title{font-size:2.6em;font-weight:800;line-height:1.15;letter-spacing:-.8px;margin-bottom:10px;background:linear-gradient(90deg,var(--p800),var(--p500),var(--p700),var(--p800));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fadeUp .8s .1s var(--ease) both,gradientMove 8s ease infinite}
.review-subtitle{font-size:1.2em;color:var(--p700);animation:fadeUp .8s .2s var(--ease) both}
.meta{font-size:13px;color:var(--p600);opacity:.85;margin-top:8px;animation:fadeUp .8s .3s var(--ease) both}

.cta-top{text-align:center;margin-bottom:28px;animation:fadeUp .8s .35s var(--ease) both}

/* ---------- TOC ---------- */
.toc{background:var(--p50);border:1px solid var(--p100);border-radius:18px;padding:20px 24px;margin-bottom:32px;animation:fadeUp .8s .45s var(--ease) both}
.toc-title{font-weight:800;color:var(--p800);margin-bottom:10px}
.toc ol{padding-left:20px;columns:2;column-gap:30px}
.toc li{margin-bottom:5px;font-size:14px;break-inside:avoid;color:var(--p600)}
.toc a{color:var(--p800);background:linear-gradient(var(--p500),var(--p500)) no-repeat left bottom/0 2px;transition:background-size .4s var(--ease),color .3s}
.toc a:hover{color:var(--p600);background-size:100% 2px}

/* ---------- content ---------- */
.review-content-text{font-size:16px;line-height:1.85;color:#3b2a63}
.review-content-text p{margin-bottom:18px}
.review-content-text a{color:var(--p600);font-weight:600;background:linear-gradient(var(--p200),var(--p200)) no-repeat left bottom/100% 30%;transition:background-size .35s var(--ease)}
.review-content-text a:hover{background-size:100% 100%}
.review-content-text section{scroll-margin-top:90px}
.review-content-text h3{color:var(--p800);font-size:1.15em;font-weight:700;margin:24px 0 10px;display:flex;align-items:center;gap:10px}
.review-content-text h3::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--p500);flex-shrink:0}
.review-content-text ul,.review-content-text ol{margin:0 0 18px 22px}
.review-content-text li{margin-bottom:8px}
.review-content-text li::marker{color:var(--p500);font-weight:700}

.section-title{font-size:1.55em;font-weight:800;color:var(--p800);margin:40px 0 18px;line-height:1.3;letter-spacing:-.3px;position:relative;padding-left:18px}
.section-title::before{content:"";position:absolute;left:0;top:.2em;bottom:.2em;width:5px;border-radius:5px;background:var(--p500)}
.section-title a{color:inherit}

/* scroll-driven reveal (modern browsers) */
@supports (animation-timeline:view()){
  .review-content-text section,.cta-section,.related-wrap,.card-grid > .card{animation:fadeUp linear both;animation-timeline:view();animation-range:entry 0% entry 35%}
}

/* ---------- facts table ---------- */
.facts{width:100%;border-collapse:separate;border-spacing:0;margin:12px 0 22px;font-size:15px;border:1px solid var(--p100);border-radius:16px;overflow:hidden}
.facts caption{text-align:left;font-weight:800;color:var(--p800);padding-bottom:10px}
.facts th,.facts td{padding:12px 16px;border-bottom:1px solid var(--p100);text-align:left;transition:background-color .3s}
.facts tr:last-child th,.facts tr:last-child td{border-bottom:0}
.facts th{width:40%;color:var(--p700);font-weight:600;background:var(--p50)}
.facts tr:hover td{background:var(--p50)}

/* ---------- FAQ ---------- */
.faq{border:1px solid var(--p100);border-radius:14px;margin-bottom:10px;background:var(--white);transition:border-color .3s,background-color .3s}
.faq:hover{border-color:var(--p400)}
.faq[open]{background:var(--p50);border-color:var(--p400)}
.faq summary{cursor:pointer;padding:15px 50px 15px 18px;font-weight:700;color:var(--p800);list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:16px;top:50%;width:24px;height:24px;margin-top:-12px;border-radius:50%;background:var(--p600);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;transition:transform .45s var(--ease)}
.faq[open] summary::after{transform:rotate(135deg)}
.faq p{padding:0 18px 16px;margin:0;animation:fadeUp .45s var(--ease)}

/* ---------- CTA ---------- */
.cta-section{text-align:center;margin-top:40px;padding:34px 24px;background:var(--p700);border-radius:24px;color:var(--white);position:relative;overflow:hidden}
.cta-section::before{content:"";position:absolute;inset:-50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.14),transparent 40%),radial-gradient(circle at 70% 70%,rgba(167,139,250,.35),transparent 45%);animation:gradientMove 10s ease infinite;background-size:200% 200%;pointer-events:none}
.cta-section > *{position:relative}
.cta-section h3{color:var(--white);margin-bottom:8px;font-weight:800;font-size:1.5em}
.cta-section p{color:var(--p100);margin-bottom:14px}
.cta-section .rg-note{font-size:12px;color:var(--p200);margin:16px 0 0}
.cta-section .cta-button{background:var(--white);color:var(--p700)}
.cta-section .cta-button:hover{color:var(--white)}
.cta-section .cta-button::before{background:var(--p900)}

.cta-button{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;gap:8px;background:var(--p600);color:var(--white);padding:15px 34px;border-radius:999px;font-size:17px;font-weight:700;transition:transform .4s var(--ease),color .4s var(--ease)}
.cta-button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--p900);transform:translateX(-101%);transition:transform .5s var(--ease)}
.cta-button::after{content:"\2192";display:inline-block;transition:transform .4s var(--ease)}
.cta-button:hover{transform:translateY(-3px);color:var(--white)}
.cta-button:hover::before{transform:translateX(0)}
.cta-button:hover::after{transform:translateX(5px)}
.cta-button:active{transform:translateY(0) scale(.97)}
.cta-button.small{padding:11px 28px;font-size:15px}

/* ---------- related & cards ---------- */
.related{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin:0!important}
.related li{margin:0!important}
.related a{display:block;padding:13px 16px;border:1px solid var(--p100);border-radius:14px;color:var(--p800)!important;background:var(--white)!important;font-weight:600;transition:transform .35s var(--ease),border-color .3s,background-color .3s}
.related a:hover{transform:translateY(-3px);border-color:var(--p500);background:var(--p50)!important}

.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin:10px 0 22px}
.card{display:flex;flex-direction:column;padding:16px 18px;border:1px solid var(--p100);border-radius:16px;background:var(--white);transition:transform .4s var(--ease),border-color .3s,background-color .3s}
.card:hover{transform:translateY(-4px);border-color:var(--p500);background:var(--p50)}
.card-name{color:var(--p900);font-weight:700}
.card-sub{color:var(--p600);font-size:12px;margin-top:4px;transition:letter-spacing .4s var(--ease)}
.card:hover .card-sub{letter-spacing:.6px}

/* ---------- footer ---------- */
.site-footer{max-width:1200px;margin:24px auto 30px;padding:24px 20px 0;border-top:1px solid var(--p100);text-align:center;font-size:13px;color:var(--p700)}
.site-footer .rg{margin-top:6px;color:var(--p600);font-weight:700}

/* ---------- mobile ---------- */
@media (max-width:900px){
  .container{grid-template-columns:1fr;padding:0 12px 12px;gap:18px;margin-top:16px}
  .main-content,.sidebar{grid-column:1;grid-row:auto}
  .sidebar{position:static;order:-1;padding:20px}
  .main-content{padding:22px 18px}
  .review-title{font-size:1.9em}
  .review-subtitle{font-size:1.05em}
  .section-title{font-size:1.3em}
  .toc ol{columns:1}
  .site-header{padding:12px 14px}
  .top-nav a{margin-left:16px}
}

/* ---------- accessibility ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* ---------- logos & bonus ---------- */
.brand-logo{display:block;width:120px;height:120px;object-fit:contain;margin:0 auto 18px;border-radius:24px;border:1px solid var(--p100);background:var(--white);padding:10px;animation:fadeUp .8s var(--ease) both,floatY 5s 1s ease-in-out infinite}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.cta-top{display:flex;flex-direction:column;align-items:center;gap:14px}
.bonus-pill{display:inline-flex;gap:6px;align-items:center;padding:8px 18px;border-radius:999px;background:var(--p100);color:var(--p800);font-size:14px;border:1px solid var(--p200)}
.bonus-pill strong{color:var(--p600)}
.bonus-box{display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px;margin:6px 0 20px;border-radius:20px;background:linear-gradient(120deg,var(--p700),var(--p500),var(--p700));background-size:200% 200%;color:var(--white);text-align:center;animation:gradientMove 7s ease infinite}
.bonus-label{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:var(--p100);font-weight:700}
.bonus-value{font-size:1.6em;font-weight:800;line-height:1.25}
.brand-card{align-items:center;text-align:center;gap:6px}
.brand-card img{width:64px;height:64px;object-fit:contain;border-radius:14px;border:1px solid var(--p100);background:var(--white);padding:4px;transition:transform .5s var(--ease)}
.brand-card:hover img{transform:scale(1.08) rotate(-3deg)}
.card-bonus{font-size:12px;font-weight:700;color:var(--p600);background:var(--p50);border:1px solid var(--p100);padding:3px 10px;border-radius:999px}

/* ---------- HTML sitemap ---------- */
.foot-links{margin-top:8px}
.foot-links a{color:var(--p700);font-weight:600}
.sm-container{grid-template-columns:1fr}
.sm-main{grid-column:1}
.sm-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:6px 0 10px}
.sm-stat{border:1px solid var(--p100);border-radius:20px;padding:20px;text-align:center;background:var(--p50);animation:fadeUp .8s var(--ease) both}
.sm-stat:nth-child(2){animation-delay:.1s}.sm-stat:nth-child(3){animation-delay:.2s}
.sm-stat b{display:block;font-size:2.2em;font-weight:800;line-height:1.1;background:linear-gradient(90deg,var(--p700),var(--p400),var(--p700));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradientMove 6s ease infinite}
.sm-stat span{font-size:13px;color:var(--p700);font-weight:600}
.sm-block ul{list-style:none}
.sm-main-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.sm-main-links a{display:flex;flex-direction:column;padding:18px 20px;border-radius:18px;background:var(--p600);color:var(--white);transition:transform .4s var(--ease),background-color .3s}
.sm-main-links a:hover{transform:translateY(-4px);background:var(--p800)}
.sm-main-links span{font-size:13px;color:var(--p100)}
.sm-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.sm-group{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;border:1px solid var(--p100);border-radius:14px;color:var(--p900);font-weight:600;transition:transform .35s var(--ease),border-color .3s,background-color .3s}
.sm-group b{min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:var(--p100);color:var(--p700);display:flex;align-items:center;justify-content:center;font-size:12px;transition:background-color .3s,color .3s}
.sm-group:hover{transform:translateX(5px);border-color:var(--p500);background:var(--p50)}
.sm-group:hover b{background:var(--p600);color:var(--white)}
.az{position:sticky;top:70px;z-index:5;display:flex;flex-wrap:wrap;gap:6px;padding:12px;margin-bottom:10px;border:1px solid var(--p100);border-radius:18px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.az-link{min-width:38px;height:38px;padding:0 8px;display:flex;align-items:center;justify-content:center;border-radius:12px;font-weight:700;font-size:14px;color:var(--p700);background:var(--p50);border:1px solid var(--p100);transition:transform .3s var(--ease),background-color .3s,color .3s}
a.az-link:hover{transform:translateY(-3px);background:var(--p600);color:var(--white);border-color:var(--p600)}
.az-link.off{opacity:.35}
.sm-letter{scroll-margin-top:150px;margin-top:22px}
.sm-letter-title{display:flex;align-items:center;gap:12px;margin-bottom:12px;font-size:1em}
.sm-letter-title span{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--p600);color:var(--white);font-size:1.3em;font-weight:800}
.sm-letter-title small{font-size:13px;color:var(--p600);font-weight:600}
.sm-letter:target .sm-letter-title span{animation:pulseRing2 1s var(--ease)}
@keyframes pulseRing2{0%{transform:scale(1)}40%{transform:scale(1.2) rotate(-6deg)}100%{transform:scale(1)}}
.sm-brands{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.sm-brand{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--p100);border-radius:14px;background:var(--white);transition:transform .35s var(--ease),border-color .3s,background-color .3s}
.sm-brand:hover{transform:translateY(-3px);border-color:var(--p500);background:var(--p50)}
.sm-brand img{width:36px;height:36px;object-fit:contain;border-radius:10px;border:1px solid var(--p100);background:var(--white);flex-shrink:0;transition:transform .4s var(--ease)}
.sm-brand:hover img{transform:rotate(-6deg) scale(1.08)}
.sm-brand-text{display:flex;flex-direction:column;min-width:0}
.sm-brand-name{font-weight:700;color:var(--p900);font-size:14px}
.sm-brand-meta{font-size:12px;color:var(--p600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@supports (animation-timeline:view()){.sm-brands > li{animation:fadeUp linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}
@media (max-width:900px){.sm-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}.sm-stat{padding:14px 6px}.sm-stat b{font-size:1.6em}.az{top:60px}.az-link{min-width:32px;height:32px;font-size:13px}}
.sm-letter{scroll-margin-top:210px}
@media (max-width:900px){
  .az{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:8px}
  .az::-webkit-scrollbar{display:none}
  .az-link{flex-shrink:0}
  .sm-letter{scroll-margin-top:130px}
}
.sm-container{grid-template-columns:minmax(0,1fr)!important}
.sm-main{min-width:0}
.sm-brands{grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr))}
.sm-groups,.sm-main-links{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))}

/* ---------- real promo data ---------- */
.quick-facts{border:1px solid var(--p200);background:var(--p50);border-left:5px solid var(--p600);border-radius:16px;padding:18px 22px;margin-bottom:24px;animation:fadeUp .8s .4s var(--ease) both}
.qf-title{font-weight:800;color:var(--p700);text-transform:uppercase;font-size:12px;letter-spacing:1.2px;margin-bottom:6px}
.quick-facts p:last-child{color:#3b2a63;line-height:1.75}
.table-wrap{overflow-x:auto;margin:10px 0 14px;border:1px solid var(--p100);border-radius:16px}
.promo-table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
.promo-table caption{text-align:left;font-weight:800;color:var(--p800);padding:14px 16px 8px}
.promo-table thead th{background:var(--p600);color:var(--white);text-align:left;padding:10px 14px;font-size:12px;text-transform:uppercase;letter-spacing:.8px}
.promo-table td{padding:10px 14px;border-top:1px solid var(--p100);transition:background-color .3s}
.promo-table tbody tr:hover td{background:var(--p50)}
.promo-table .cat-row th{background:var(--p100);color:var(--p800);text-align:left;padding:9px 14px;font-size:13px}
.promo-table td strong{color:var(--p600)}
.data-note{font-size:13px;color:var(--p600);font-style:italic}
.main-content,.sidebar{min-width:0}
@media (max-width:900px){.container{grid-template-columns:minmax(0,1fr)}}

/* ---------- live transactions & closed brands ---------- */
.live-table{width:100%;border-collapse:collapse;font-size:14px;min-width:420px}
.live-table caption{text-align:left;font-weight:800;color:var(--p800);padding:14px 16px 8px;display:flex;align-items:center;gap:8px}
.live-dot{width:9px;height:9px;border-radius:50%;background:var(--p500);position:relative;flex-shrink:0}
.live-dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--p400);animation:pulseRing 1.6s ease-out infinite}
.live-table thead th{background:var(--p600);color:var(--white);text-align:left;padding:10px 14px;font-size:12px;text-transform:uppercase;letter-spacing:.8px}
.live-table td{padding:10px 14px;border-top:1px solid var(--p100)}
.live-table td.num{font-weight:700;color:var(--p800)}
.live-table tr.fresh td{animation:fadeIn .6s var(--ease)}
.tx-type{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700}
.tx-in{background:var(--p100);color:var(--p700)}
.tx-out{background:var(--p700);color:var(--white)}
.closed-banner{border:2px solid var(--p600);background:var(--p50);color:var(--p900);border-radius:16px;padding:16px 20px;margin-bottom:24px;line-height:1.7}
.closed-banner strong{color:var(--p700)}
.closed-list ul{list-style:none;display:grid;gap:8px}
.closed-list li{padding:10px 14px;border:1px dashed var(--p200);border-radius:12px;color:var(--p800)}
.closed-list li span{font-size:12px;color:var(--p600);margin-left:6px}
.live-table caption{display:table-caption;caption-side:top}
.live-dot{display:inline-block;vertical-align:middle;margin-right:8px}

/* ---------- Fasa 1 ---------- */
.rank-table td.rank{font-weight:800;color:var(--p600);width:48px}
.rank-table tbody tr:nth-child(-n+3) td.rank{color:var(--white);background:var(--p600)}
.quick-facts a{color:var(--p700);font-weight:700}
.highlights{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:14px;margin:6px 0 10px}
.hl-card{display:flex;flex-direction:column;gap:4px;padding:22px;border-radius:20px;color:var(--white);background:linear-gradient(120deg,var(--p800),var(--p500),var(--p700));background-size:200% 200%;animation:gradientMove 8s ease infinite;transition:transform .4s var(--ease)}
.hl-card:hover{transform:translateY(-4px);color:var(--white)}
.hl-card b{font-size:1.25em}
.hl-card span{color:var(--p100);font-size:14px}
.hl-card .hl-kicker{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;font-weight:700;color:var(--p200)}

/* ---------- search & tags ---------- */
.site-search{display:flex;gap:8px;margin:0 0 16px}
.site-search input{flex:1;min-width:0;padding:12px 16px;border:1.5px solid var(--p200);border-radius:999px;background:var(--white);color:var(--p900);font:inherit;font-size:14px;outline:none;transition:border-color .3s,background-color .3s}
.site-search input:focus{border-color:var(--p500);background:var(--p50)}
.site-search input::placeholder{color:var(--p400)}
.site-search button{width:44px;flex-shrink:0;border:0;border-radius:999px;background:var(--p600);color:var(--white);font-size:20px;cursor:pointer;transition:transform .3s var(--ease),background-color .3s}
.site-search button:hover{background:var(--p800);transform:rotate(-12deg) scale(1.05)}
.site-search.big input{padding:16px 22px;font-size:17px}
.site-search.big button{width:56px;font-size:24px}
.company-item[hidden]{display:none!important}
.search-empty{font-size:13px;color:var(--p600);padding:8px 4px}
.search-examples{font-size:14px;color:var(--p700);margin-bottom:18px}
.search-examples a{color:var(--p600);font-weight:600}
.search-head{color:var(--p800);margin:6px 0 14px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.lang-pill{background:var(--p600);color:var(--white);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}
.concepts span{display:inline-block;background:var(--p100);color:var(--p700);border-radius:999px;padding:2px 9px;font-size:11px;margin-right:4px}
.tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0!important}
.tags li{margin:0!important}
.tags a{display:inline-block;padding:6px 14px;border-radius:999px;background:var(--p50)!important;border:1px solid var(--p100);color:var(--p700)!important;font-size:13px;font-weight:600;transition:transform .3s var(--ease),background-color .3s,color .3s}
.tags a:hover{transform:translateY(-2px);background:var(--p600)!important;color:var(--white)!important}
