/* Love Your Country: the dark deep-ink stage. Heart red + sun accents, bold rounded type, mobile-first, RTL-correct.
   Motion: generous but cheap (transforms/opacity only), everything respects prefers-reduced-motion. */
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-latin-ext-800-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Heebo;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/heebo-hebrew-400-normal.woff2) format("woff2");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Heebo;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/heebo-hebrew-700-normal.woff2) format("woff2");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Heebo;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/heebo-hebrew-800-normal.woff2) format("woff2");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Heebo;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/heebo-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Heebo;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/heebo-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Heebo;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/heebo-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ink:#0F1B3D;--ink2:#16244F;--ink3:#1E2F63;--ink0:#0A1330;
  --red:#E0245E;--red2:#FF4D7D;--sun:#FFC65C;--sun2:#FFD98A;--green:#3DDC97;
  --text:#FFFFFF;--soft:#AEB7D6;--soft2:#7E89AD;
  --line:rgba(255,255,255,.09);--line2:rgba(255,255,255,.16);
  --radius:18px;--shadow:0 10px 30px rgba(0,0,0,.35);
  --glow:0 0 24px rgba(224,36,94,.45);
  --font:Inter,Heebo,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--ink)}
body{margin:0;overflow-x:hidden;background:radial-gradient(1200px 600px at 50% -200px,#1C2B5C 0%,var(--ink) 60%) fixed,var(--ink);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.5;min-height:100vh;display:flex;flex-direction:column}
[dir=rtl] body{--font:Heebo,Inter,system-ui,Arial,sans-serif}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit;color:inherit}
h1,h2,h3{line-height:1.12;margin:0 0 .4em;letter-spacing:-.02em}
h1{font-size:clamp(1.8rem,5vw,2.8rem);font-weight:800}
h2{font-size:1.25rem;font-weight:800}
h3{font-size:1.05rem;font-weight:700}
p{margin:.4em 0 .9em}
.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 16px}
.num{font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;display:inline-block}
.muted{color:var(--soft)}
.small{font-size:.875rem}
.tiny{font-size:.78rem}
.center{text-align:center}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
::selection{background:var(--red);color:#fff}

/* header */
.site-header{background:rgba(15,27,61,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
.site-header .wrap{display:flex;align-items:center;gap:14px;min-height:60px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:1.08rem;white-space:nowrap}
.logo:hover{text-decoration:none}
.logo svg{width:28px;height:28px;flex:none;filter:drop-shadow(0 0 8px rgba(224,36,94,.6))}
.nav{display:flex;gap:4px;flex-wrap:wrap;margin-inline-start:auto;align-items:center}
.nav a{padding:7px 11px;border-radius:12px;font-size:.92rem;font-weight:700;color:var(--soft)}
.nav a:hover,.nav a[aria-current]{background:var(--ink3);color:var(--text);text-decoration:none}
.nav a.cta{background:var(--red);color:#fff;box-shadow:var(--glow)}
.nav a.cta:hover{background:var(--red2)}
.langs{display:flex;gap:2px;font-size:.8rem}
.langs a{padding:4px 8px;border-radius:9px;color:var(--soft2);font-weight:700}
.langs a[aria-current]{background:var(--sun);color:var(--ink)}
@media(max-width:759px){
  .site-header .wrap{gap:6px 10px;min-height:52px}
  .logo{font-size:1rem}
  .nav{order:3;flex-basis:100%;justify-content:center;gap:2px;margin-inline-start:0}
  .nav a{padding:5px 9px;font-size:.86rem}
  .nav a.cta{display:none}
  .langs{margin-inline-start:auto}
  .langs a{padding:3px 6px}
}
main{flex:1}
.site-footer{border-top:1px solid var(--line);margin-top:56px;padding:26px 0 96px;color:var(--soft2);font-size:.85rem}
.site-footer .wrap{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
.site-footer a{color:var(--soft)}
.site-footer .geo{flex-basis:100%;font-size:.72rem;color:var(--soft2);opacity:.8}
@media(min-width:760px){.site-footer{padding-bottom:36px}}

/* hero */
.hero{padding:34px 0 8px;text-align:center}
.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--soft);font-size:.95rem;margin:0 0 6px;font-weight:600}
.kicker b{color:var(--text)}
.counter{font-size:clamp(3rem,13vw,7.2rem);font-weight:800;line-height:1;letter-spacing:-.04em;display:flex;align-items:center;justify-content:center;gap:.14em}
.counter .roll{filter:drop-shadow(0 0 22px rgba(255,77,125,.4))}
.counter .heart{width:.74em;height:.74em;color:var(--red);filter:drop-shadow(0 0 18px rgba(224,36,94,.75));animation:beat 1.1s ease-in-out infinite;transform-origin:center}
.tagline{font-size:clamp(1.5rem,4.6vw,2.4rem);margin:18px 0 4px}
.hero .lead{max-width:620px;margin:6px auto 0;font-size:1.05rem;color:var(--soft)}
.hero-cta{margin:18px 0 8px}
.stats-row{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px}
.chip{background:var(--ink2);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:.9rem;display:inline-flex;gap:6px;align-items:center;color:var(--soft)}
.chip b{font-weight:800;color:var(--text)}
.chip.hot{background:rgba(224,36,94,.18);border-color:rgba(224,36,94,.5);color:var(--text)}
.chip:empty{display:none}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--green);display:inline-block;box-shadow:0 0 0 3px rgba(61,220,151,.22);animation:blink 2s infinite}
.live-dot.off{background:var(--sun);box-shadow:0 0 0 3px rgba(255,198,92,.22);animation:none}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.45}}
@keyframes beat{0%,100%{transform:scale(1)}12%{transform:scale(1.14)}24%{transform:scale(1)}36%{transform:scale(1.08)}50%{transform:scale(1)}}

/* rolling digits */
.roll{display:inline-flex;align-items:baseline;overflow:hidden;vertical-align:bottom;line-height:1}
.roll .d{display:inline-block;height:1em;overflow:hidden;position:relative;line-height:1}
.roll .strip{display:block;white-space:pre;line-height:1;transition:transform .55s cubic-bezier(.2,.8,.2,1);will-change:transform}
.roll .sep{display:inline-block;line-height:1}
.roll.pop{animation:pop .5s cubic-bezier(.2,.8,.2,1)}
@keyframes pop{0%{transform:scale(1)}30%{transform:scale(1.06)}100%{transform:scale(1)}}
.spark{position:fixed;z-index:60;width:22px;height:22px;pointer-events:none;color:var(--red)}
.spark .heart-ic{width:22px;height:22px;filter:drop-shadow(0 0 6px rgba(224,36,94,.8))}

/* search */
.search{position:relative;max-width:520px;margin:16px auto 0}
.search input{width:100%;padding:14px 18px;border:1px solid var(--line2);border-radius:16px;background:var(--ink2);color:var(--text);font-size:1.05rem;box-shadow:var(--shadow)}
.search input::placeholder{color:var(--soft2)}
.search input:focus{outline:2px solid var(--sun);outline-offset:1px}
.search .results{position:absolute;inset-inline:0;top:calc(100% + 6px);background:var(--ink2);border:1px solid var(--line2);border-radius:16px;box-shadow:var(--shadow);z-index:10;overflow:hidden;display:none;text-align:start}
.search .results.open{display:block}
.search .results a{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line)}
.search .results a:last-child{border-bottom:0}
.search .results a:hover,.search .results a.active{background:var(--ink3);text-decoration:none}
.end{margin-inline-start:auto}

/* flags */
.flag{width:28px;height:21px;border-radius:4px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(255,255,255,.12)}
.flag.md{width:40px;height:30px;border-radius:6px}
.flag.lg{width:96px;height:72px;border-radius:12px}
.flag.xl{width:168px;height:126px;border-radius:18px;box-shadow:0 0 0 1px rgba(255,255,255,.14),0 20px 50px rgba(0,0,0,.45)}
@media(max-width:480px){.flag.xl{width:132px;height:99px}}

/* the world map */
.map-stage{margin-top:26px}
.map{position:relative;width:100%;aspect-ratio:2651/1166;border-radius:22px;overflow:hidden;background:radial-gradient(700px 400px at 50% 40%,#182A5E 0%,var(--ink0) 85%);border:1px solid var(--line);box-shadow:var(--shadow)}
.map-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--soft2);font-weight:600}
.map.ready .map-loading,.map.failed .map-loading{display:none}
.map-svg,.map-svg svg{position:absolute;inset:0;width:100%;height:100%}
.map-svg svg{overflow:visible}
.worldmap path{fill:#28386E;stroke:var(--ink0);stroke-width:.9;stroke-linejoin:round;transition:fill .5s,filter .3s;vector-effect:non-scaling-stroke}
.worldmap g{cursor:pointer}
.worldmap .hit{fill:rgba(255,255,255,.1);stroke:rgba(255,255,255,.25);stroke-width:1;vector-effect:non-scaling-stroke}
.worldmap .h1 path{fill:#44397A}.worldmap .h2 path{fill:#6B3A86}.worldmap .h3 path{fill:#93368A}.worldmap .h4 path{fill:#BA2F7E}.worldmap .h5 path{fill:#E0245E}.worldmap .h6 path{fill:#FF6A3D}
.worldmap .h5 path,.worldmap .h6 path{filter:drop-shadow(0 0 6px rgba(224,36,94,.55))}
.worldmap .tiny.h1 .hit,.worldmap .tiny.h2 .hit{fill:#6B3A86;stroke:#fff}.worldmap .tiny.h3 .hit,.worldmap .tiny.h4 .hit{fill:#BA2F7E;stroke:#fff}.worldmap .tiny.h5 .hit,.worldmap .tiny.h6 .hit{fill:var(--red);stroke:#fff}
.worldmap g.hover path{fill:var(--sun);filter:drop-shadow(0 0 10px rgba(255,198,92,.7))}
.worldmap g.hover .hit{fill:var(--sun)}
.worldmap g.top path{fill:var(--red);filter:drop-shadow(0 0 14px rgba(255,77,125,.95)) drop-shadow(0 0 30px rgba(224,36,94,.6));animation:mapbeat 1.1s ease-in-out infinite;transform-box:view-box}
.worldmap g.top .hit{fill:var(--red);stroke:#fff;animation:mapbeat 1.1s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.worldmap g.hit path{fill:#fff;transition:none}
@keyframes mapbeat{0%,100%{transform:scale(1)}12%{transform:scale(1.06)}24%{transform:scale(1)}36%{transform:scale(1.035)}50%{transform:scale(1)}}
.map-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.map-layer .p{position:absolute;width:18px;height:18px;color:var(--red);transform:translate(-50%,-50%);will-change:transform,opacity}
.map-layer .p .heart-ic{width:18px;height:18px;filter:drop-shadow(0 0 6px rgba(255,77,125,.9))}
.map-layer .p.rise{color:var(--red2)}
.map-layer .p.flyer{width:26px;height:26px;color:var(--sun);z-index:2}
.map-layer .p.flyer .heart-ic{width:26px;height:26px;filter:drop-shadow(0 0 10px rgba(255,198,92,.95))}
.map-card{position:absolute;left:0;top:0;z-index:5;background:var(--ink2);border:1px solid var(--line2);border-radius:14px;padding:10px 12px;min-width:200px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .15s;transform:translate(-9999px,-9999px)}
.map-card.show{opacity:1;pointer-events:auto}
.map-card .head{display:flex;align-items:center;gap:10px;font-size:1.02rem}
.map-card .line{margin:6px 0 8px;color:var(--soft)}
.map-card .line .num{color:var(--text);font-weight:800}
.map-card .acts{display:flex;gap:6px}
.map-legend{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center;margin:10px 0 0;color:var(--soft2);font-size:.8rem}
.map-legend i{width:16px;height:10px;border-radius:3px;display:inline-block}
.map-legend .h1{background:#44397A}.map-legend .h2{background:#6B3A86}.map-legend .h3{background:#93368A}.map-legend .h4{background:#BA2F7E}.map-legend .h5{background:#E0245E}.map-legend .h6{background:#FF6A3D}
.map-legend .sep{margin:0 4px}
.map-legend .beat-note{color:var(--soft)}
@media(max-width:600px){.map{aspect-ratio:auto;height:52vw;min-height:210px}.map-svg svg{height:100%}}

/* boards (sports leaderboard) */
.boards{display:grid;gap:16px;margin-top:28px}
@media(min-width:860px){.boards.three{grid-template-columns:1.2fr 1fr 1fr}.boards.two{grid-template-columns:1fr 1fr}}
.boards>*,.cards>*{min-width:0}
.board{background:var(--ink2);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.board h2{display:flex;align-items:center;justify-content:space-between;font-size:1.05rem;margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em;color:var(--soft)}
.board h2 .tiny{font-weight:700;color:var(--sun);text-transform:none;letter-spacing:0}
.board.big h2{color:var(--text);font-size:1.15rem}
.rows{list-style:none;margin:0;padding:0}
.rows li{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line)}
.rows li:first-child{border-top:0}
.rows li.in{animation:rowin .5s ease-out}
@keyframes rowin{from{background:rgba(255,198,92,.12)}to{background:transparent}}
.rows .rank{min-width:1.7em;height:1.7em;padding:0 .35em;border-radius:8px;color:var(--soft2);font-weight:800;text-align:center;flex:none;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.05);font-size:.92rem}
.rows .rank.r1{background:var(--sun);color:var(--ink);box-shadow:0 0 14px rgba(255,198,92,.5)}
.rows .rank.r2{background:#CBD3EA;color:var(--ink)}
.rows .rank.r3{background:#D9955A;color:var(--ink)}
.rows .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:1.02rem}
.rows .name .sub{display:block;font-weight:400;color:var(--soft);font-size:.78rem;white-space:normal;margin-top:2px}
.rows .val{font-weight:800;white-space:nowrap;font-size:1.05rem}
.rows .val .heart-ic{color:var(--red)}
.rows a{display:contents}
.rows .bar{display:block;width:100%;height:6px;margin:3px 0 2px}
.rows .bar rect{fill:url(#barfill);fill:var(--red);transition:width .6s cubic-bezier(.2,.8,.2,1)}
.rows li:nth-child(1) .bar rect{fill:var(--sun)}
.board.big .rows li{padding:11px 0}
.board.big .rows .name{font-size:1.12rem}
.board.big .rows li:nth-child(1) .name{font-size:1.3rem}
.board.big .rows li:nth-child(1) .flag{width:40px;height:30px;border-radius:6px}
.board.big .rows li:nth-child(1) .val{font-size:1.3rem;color:var(--sun)}
.delta{font-size:.7rem;margin-inline-start:6px;vertical-align:middle;animation:fadeout 5s forwards}
.delta.up{color:var(--green)}.delta.down{color:var(--red2)}
@keyframes fadeout{0%,80%{opacity:1}100%{opacity:0}}
.pair{display:inline-flex;align-items:center;gap:4px;flex:none}
.pair .arrow{color:var(--soft2);font-weight:800}
.empty{color:var(--soft2);padding:16px 0;text-align:center}
.heart-ic{width:1em;height:1em;vertical-align:-.12em;color:var(--red)}
.badge{display:inline-block;background:var(--sun);color:var(--ink);font-weight:800;font-size:.72rem;border-radius:999px;padding:2px 8px;vertical-align:middle;margin-inline-start:6px}
.badge.pending{background:var(--ink3);color:var(--soft)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:14px;border:0;background:var(--red);color:#fff;font-weight:800;font-size:1rem;cursor:pointer;transition:transform .08s,background .15s,box-shadow .15s;text-decoration:none;box-shadow:var(--glow)}
.btn:hover{background:var(--red2);text-decoration:none;box-shadow:0 0 34px rgba(224,36,94,.6)}
.btn:active{transform:scale(.97)}
.btn.lg{padding:15px 26px;font-size:1.1rem;border-radius:16px}
.btn.xl{padding:18px 34px;font-size:1.25rem;border-radius:20px}
.btn.sm{padding:7px 12px;font-size:.85rem;border-radius:10px;box-shadow:none}
.btn.ghost{background:var(--ink3);color:var(--text);border:1px solid var(--line2);box-shadow:none}
.btn.ghost:hover{background:#27397A;box-shadow:none}
.btn.block{width:100%}
.btn.sun{background:var(--sun);color:var(--ink);box-shadow:0 0 24px rgba(255,198,92,.35)}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.sticky-cta{position:fixed;inset-inline:0;bottom:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(15,27,61,0),rgba(15,27,61,.92) 40%);z-index:25}
@media(min-width:760px){.sticky-cta{display:none}}

/* share bar */
.share-bar{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:16px}
.share-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;border:1px solid var(--line2);background:var(--ink3);color:var(--text);font-weight:700;font-size:.9rem;cursor:pointer;text-decoration:none;transition:transform .08s,background .15s}
.share-btn:hover{text-decoration:none;transform:translateY(-1px)}
.share-btn.wa{background:#1E8E4C;border-color:transparent}.share-btn.wa:hover{background:#25A95B}
.share-btn.x{background:#111;border-color:#333}
.share-btn.tg{background:#1E7FC2;border-color:transparent}
.share-btn.fb{background:#1B5FC9;border-color:transparent}
.share-btn.copy{background:var(--ink2)}
.share-btn.native{display:none;background:var(--sun);color:var(--ink);border-color:transparent}
html.can-share .share-btn.native{display:inline-flex}

/* country page */
.country-hero{background:linear-gradient(180deg,var(--ink2),rgba(22,36,79,.6));border:1px solid var(--line);border-radius:26px;padding:28px 18px 22px;margin-top:22px;box-shadow:var(--shadow);text-align:center;position:relative;overflow:hidden}
.country-hero:before{content:"";position:absolute;inset:-40% -20% auto;height:80%;background:radial-gradient(closest-side,rgba(224,36,94,.28),transparent 70%);pointer-events:none}
.country-hero>*{position:relative}
.country-hero .flagbox{display:flex;justify-content:center;margin-bottom:14px}
.country-hero h1{margin-bottom:4px;font-size:clamp(2rem,6vw,3.2rem)}
.country-hero .counter{font-size:clamp(2.6rem,11vw,5.6rem);margin:6px 0 2px}
.country-hero .ranks{display:flex;justify-content:center;gap:6px 8px;flex-wrap:wrap;margin-top:8px}
.country-hero .actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.country-hero.beat,.trophy.beat{animation:herobeat .6s ease-out}
@keyframes herobeat{0%{transform:scale(1)}30%{transform:scale(1.015)}100%{transform:scale(1)}}
.marquee{display:none;overflow:hidden;margin:14px -16px 0;background:var(--red);color:#fff;font-weight:800;font-size:1.15rem;padding:9px 0;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee.has{display:block}
.marquee .track{display:inline-flex;gap:64px;padding-inline-start:64px;animation:marquee 28s linear infinite;will-change:transform}
[dir=rtl] .marquee .track{animation-name:marquee-rtl}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes marquee-rtl{from{transform:translateX(0)}to{transform:translateX(50%)}}
.slogan{background:linear-gradient(135deg,#1A2B62,#121E47);color:#fff;border:1px solid var(--line);border-radius:22px;padding:22px 20px;margin-top:16px;position:relative;overflow:hidden}
.slogan:before{content:"";position:absolute;inset-inline-end:-40px;top:-40px;width:180px;height:180px;border-radius:50%;background:rgba(224,36,94,.3);filter:blur(10px)}
.slogan .label{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.85rem;color:var(--soft);position:relative}
.slogan .label .countdown{font-variant-numeric:tabular-nums;unicode-bidi:isolate;color:var(--sun);font-weight:700}
.slogan .text{font-size:clamp(1.4rem,4.8vw,2.2rem);font-weight:800;line-height:1.22;margin:10px 0 8px;position:relative;overflow-wrap:anywhere}
.slogan .text.empty{font-weight:500;font-size:1.02rem;color:var(--soft)}
.slogan .by{color:var(--sun);font-weight:700;position:relative}
.cards{display:grid;gap:16px;margin-top:16px}
@media(min-width:760px){.cards{grid-template-columns:1fr 1fr}}
.card{background:var(--ink2);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.card h2{font-size:.9rem;color:var(--soft);font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px;display:flex;justify-content:space-between}
.gift{display:flex;align-items:center;gap:12px}
.gift .avatar{width:46px;height:46px;border-radius:50%;background:rgba(224,36,94,.2);color:var(--red2);display:flex;align-items:center;justify-content:center;font-weight:800;flex:none;font-size:1.15rem}
.gift .who{font-weight:800;font-size:1.12rem}
.gift .what{color:var(--soft);font-size:.9rem}
.gift .bless{margin-top:6px;font-size:1rem;overflow-wrap:anywhere;color:var(--sun2)}
.blessings{list-style:none;margin:0;padding:0}
.blessings li{padding:10px 0;border-top:1px solid var(--line)}
.blessings li:first-child{border-top:0}
.blessings .q{font-weight:700;overflow-wrap:anywhere}
.blessings .m{color:var(--soft);font-size:.85rem;margin-top:2px}
.sponsor{border:1px dashed var(--line2);background:transparent;text-align:center;color:var(--soft)}
.note{background:rgba(255,198,92,.14);border:1px solid rgba(255,198,92,.3);border-radius:12px;padding:10px 14px;font-size:.9rem}

/* trophy page (/h) */
.trophy{position:relative;text-align:center;padding:34px 16px 20px;margin-top:18px;background:linear-gradient(180deg,var(--ink2),rgba(22,36,79,.5));border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}
.trophy>*{position:relative}
.trophy .trophy-flag{display:flex;justify-content:center;margin-bottom:12px;animation:drop .8s cubic-bezier(.2,.9,.3,1.2)}
@keyframes drop{from{transform:translateY(-30px) scale(.8);opacity:0}to{transform:none;opacity:1}}
.trophy .kicker{justify-content:center;display:flex}
.trophy-line{font-size:clamp(1.5rem,5vw,2.5rem);line-height:1.2;margin:4px auto 10px;max-width:760px}
.trophy-line .who{color:var(--sun)}
.trophy-line .plus{display:inline-flex;align-items:center;gap:.1em;color:var(--red2);white-space:nowrap}
.trophy-line .plus .num{font-weight:800}
.trophy-line .country{text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:4px}
.trophy-blessing{margin:8px auto 14px;font-size:clamp(1.25rem,4vw,1.8rem);font-weight:800;color:var(--sun2);max-width:720px;overflow-wrap:anywhere}
.trophy-total{margin:10px 0 6px}
.trophy-total .big{font-size:clamp(2.4rem,9vw,4.4rem);font-weight:800;letter-spacing:-.04em;line-height:1;display:flex;align-items:center;justify-content:center;gap:.14em}
.trophy-total .big .heart{width:.74em;height:.74em;color:var(--red);filter:drop-shadow(0 0 16px rgba(224,36,94,.75));animation:beat 1.1s ease-in-out infinite}
.trophy-total .line{color:var(--soft);margin-top:8px;font-size:1.02rem}
.trophy-total .line b{color:var(--text)}
.trophy-slogan{margin:16px auto 0;max-width:640px;background:var(--red);color:#fff;border-radius:16px;padding:12px 16px}
.trophy-slogan .label{display:block;font-size:.8rem;opacity:.9;margin-bottom:4px}
.trophy-slogan .text{font-weight:800;font-size:1.25rem}
.trophy .actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.burst{position:absolute;inset:0;pointer-events:none;z-index:0}
.burst i{position:absolute;left:50%;top:36%;width:22px;height:22px;background:var(--red);clip-path:path("M11 20s-7.5-4.6-9.6-9.2C-.2 7.3 2 4 5.4 4c2 0 3.3 1 4.1 2.2L11 8l1.5-1.8C13.3 5 14.6 4 16.6 4 20 4 22.2 7.3 20.6 10.8 18.5 15.4 11 20 11 20z");opacity:0;animation:burst 1.6s cubic-bezier(.2,.8,.3,1) forwards}
.burst i:nth-child(odd){background:var(--sun)}
.burst i:nth-child(1){--dx:-220px;--dy:-180px}.burst i:nth-child(2){--dx:200px;--dy:-200px}.burst i:nth-child(3){--dx:-300px;--dy:-40px}.burst i:nth-child(4){--dx:290px;--dy:-60px}
.burst i:nth-child(5){--dx:-160px;--dy:120px}.burst i:nth-child(6){--dx:170px;--dy:130px}.burst i:nth-child(7){--dx:-60px;--dy:-260px}.burst i:nth-child(8){--dx:80px;--dy:-250px}
.burst i:nth-child(9){--dx:-340px;--dy:-150px}.burst i:nth-child(10){--dx:330px;--dy:-140px}.burst i:nth-child(11){--dx:-240px;--dy:60px}.burst i:nth-child(12){--dx:250px;--dy:40px}
.burst i:nth-child(13){--dx:-110px;--dy:-120px}.burst i:nth-child(14){--dx:120px;--dy:-110px}.burst i:nth-child(15){--dx:-30px;--dy:170px}.burst i:nth-child(16){--dx:40px;--dy:190px}
.burst i:nth-child(n+9){animation-delay:.12s;width:16px;height:16px}
@keyframes burst{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}15%{opacity:1}100%{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.2) rotate(25deg);opacity:0}}

/* send form */
.form{background:var(--ink2);border:1px solid var(--line);border-radius:22px;padding:20px 18px;margin-top:22px;box-shadow:var(--shadow);max-width:640px;margin-inline:auto}
.form .head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.form label.lbl{display:block;font-weight:700;margin:16px 0 6px}
.form .hint{color:var(--soft);font-size:.85rem;margin-top:4px}
.form-title{margin:0;font-size:1.5rem}
.packs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media(min-width:520px){.packs{grid-template-columns:repeat(5,1fr)}}
.packs label{position:relative;display:block;cursor:pointer}
.packs input{position:absolute;opacity:0;inset:0}
.packs .box{display:block;border:2px solid var(--line2);border-radius:14px;padding:12px 8px;text-align:center;font-weight:800;font-size:1.1rem;transition:border-color .12s,background .12s;background:var(--ink0)}
.packs .box small{display:block;font-weight:500;color:var(--soft);font-size:.78rem}
.packs input:checked + .box{border-color:var(--red);background:rgba(224,36,94,.18);box-shadow:var(--glow)}
.packs input:focus-visible + .box{outline:2px solid var(--sun)}
.input{width:100%;padding:12px 14px;border:1px solid var(--line2);border-radius:12px;background:var(--ink0);color:var(--text);font-size:1rem}
.input::placeholder{color:var(--soft2)}
.input:focus{outline:2px solid var(--sun);outline-offset:1px}
.input[disabled]{opacity:.5}
select.input option{background:var(--ink2);color:var(--text)}
textarea.input{resize:vertical;min-height:70px}
.counter-left{text-align:end;color:var(--soft2);font-size:.8rem;margin-top:4px;font-variant-numeric:tabular-nums}
.counter-left.over{color:var(--red2);font-weight:700}
.check{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:.95rem}
.check input{width:18px;height:18px;accent-color:var(--red)}
.check.ack{align-items:flex-start;margin-top:14px;font-size:.9rem}.check.ack input{margin-top:3px;flex:none}
.rules{background:var(--ink0);border-radius:14px;padding:12px 14px;margin-top:16px;font-size:.9rem}
.rules h3{margin-bottom:4px;font-size:.95rem}
.rules ul{margin:0;padding-inline-start:18px;color:var(--soft)}
.total{display:flex;justify-content:space-between;align-items:baseline;margin-top:18px;font-weight:800;font-size:1.2rem}
.total .money{font-size:1.5rem;color:var(--sun)}
.err{background:rgba(224,36,94,.2);color:#FFB3C8;border:1px solid rgba(224,36,94,.5);border-radius:12px;padding:10px 14px;margin-top:12px;font-weight:600}
.agree{color:var(--soft2);font-size:.8rem;margin-top:10px}
.legal-line{font-weight:600;color:var(--soft)}
.form .center{text-align:center}

/* generic pages */
.page{max-width:720px;margin:26px auto 0}
.page.wide{max-width:1120px}
.page-hero{text-align:center;padding:30px 0 6px}
.page-hero .lead{max-width:640px;margin:0 auto;color:var(--soft)}
.prose p,.prose li{font-size:1.02rem;color:#E6E9F5}
.prose h2{margin-top:1.4em}
.prose a{color:var(--sun2);text-decoration:underline}
.prose table{border-collapse:collapse;width:100%;font-size:.95rem}
.prose th,.prose td{border-bottom:1px solid var(--line);padding:6px 8px;text-align:start;vertical-align:top}
.how{margin-top:40px;text-align:center}
.how ol{list-style:none;margin:0;padding:0;display:grid;gap:12px;max-width:820px;margin-inline:auto}
@media(min-width:760px){.how ol{grid-template-columns:repeat(3,1fr)}}
.how li{background:var(--ink2);border:1px solid var(--line);border-radius:16px;padding:18px 16px;color:var(--soft)}
.how .n{display:flex;width:36px;height:36px;border-radius:50%;background:var(--sun);color:var(--ink);align-items:center;justify-content:center;font-weight:800;margin:0 auto 10px}
.grid-countries{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px;margin-top:12px}
.grid-countries a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:var(--ink2);border:1px solid var(--line)}
.grid-countries a:hover{text-decoration:none;border-color:var(--sun)}
.grid-countries .n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:.92rem}
.grid-countries .h{color:var(--soft);font-size:.85rem;white-space:nowrap}
details.all{margin-top:30px}
details.all summary{cursor:pointer;font-weight:700;padding:10px 0;color:var(--soft)}
.toast{position:fixed;top:72px;inset-inline-start:50%;transform:translate(-50%,-10px);background:var(--ink2);border:1px solid var(--line2);color:#fff;padding:10px 16px;border-radius:999px;font-weight:700;opacity:0;transition:opacity .25s,transform .25s;pointer-events:none;z-index:50;box-shadow:var(--shadow);display:inline-flex;align-items:center;gap:8px;max-width:92vw}
[dir=rtl] .toast{transform:translate(50%,-10px)}
.toast.show{opacity:1;transform:translate(-50%,0)}
[dir=rtl] .toast.show{transform:translate(50%,0)}
.admin table{border-collapse:collapse;width:100%;font-size:.85rem}
.admin th,.admin td{border-bottom:1px solid var(--line);padding:6px 8px;text-align:start;vertical-align:top}
.admin form.inline{display:inline}
.admin .btn{padding:6px 10px;font-size:.85rem;border-radius:8px;box-shadow:none}
.admin .btn.ghost[aria-current]{border-color:var(--sun)}
.admin code{color:var(--sun2)}

/* utilities (no inline styles: CSP style-src 'self') */
.mt8{margin-top:8px}.mt10{margin-top:10px}.mt12{margin-top:12px}.mt14{margin-top:14px}.mt16{margin-top:16px}.mt28{margin-top:28px}.mt34{margin-top:34px}
.w120{width:120px;padding:4px 6px}
.boards.one{grid-template-columns:1fr}

@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none!important;transition:none!important}
  .marquee .track{animation:none!important}
  .burst{display:none}
}
