.country-artwork{display:block;min-width:0;overflow:hidden;background:var(--surface-surface-lift)}
.country-scene{display:block;width:100%;height:100%;color:var(--color-iris-violet-glow);overflow:hidden}
.scene-halo{fill:var(--color-iris-violet);opacity:.075}
.scene-ground{fill:var(--color-iris-violet);opacity:.12}
.scene-landmark{transform-origin:160px 180px;animation:landmark-rise 6s ease-in-out infinite}
.scene-sim{fill:var(--surface-surface-lift);transform-origin:86px 164px;animation:sim-float 4.5s ease-in-out infinite}
.scene-chip{fill:var(--color-iris-violet);fill-opacity:.25}
.scene-route{opacity:.25;stroke-dashoffset:0;animation:route-flow 16s linear infinite}
.scene-signal{color:var(--color-pulse-green);animation:signal-wave 3s ease-in-out infinite}
.scene-packet{fill:var(--color-pulse-green);offset-path:path('M52 150C52 37 272 41 272 149s-214 88-220 1Z');offset-distance:0%;cx:0;cy:0;animation:packet-travel 8s linear infinite}
.scene-spark{opacity:.6;animation:signal-wave 4s ease-in-out infinite reverse}
@keyframes sim-float{0%,100%{transform:translateY(0) rotate(-9deg)}50%{transform:translateY(-9px) rotate(-3deg)}}
@keyframes landmark-rise{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes signal-wave{0%,100%{opacity:.2}50%{opacity:1}}
@keyframes route-flow{to{stroke-dashoffset:-176}}
@keyframes packet-travel{to{offset-distance:100%}}
.country-flag{display:inline-flex;justify-content:center;align-items:center;width:34px;height:34px;flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--surface-graphite);border:1px solid var(--color-graphite-hairline);line-height:1}
.country-flag>span{font-family:'Apple Color Emoji','Segoe UI Emoji',sans-serif;font-size:39px;line-height:1;flex-shrink:0}
.destination .country-artwork{position:absolute;inset:0;background:var(--surface-surface-lift)}
.destination .country-scene{padding-bottom:100px;max-width:900px;margin:auto}
.device-photos .country-artwork{height:130px;border:1px solid var(--color-graphite-hairline);border-radius:16px}
.preview-countries .country-artwork{height:100px}
.destination-card.illustrated{display:flex;flex-wrap:wrap;gap:14px;padding:0 18px 20px;overflow:hidden;height:100%;align-content:start}
.destination-card.illustrated>.country-artwork{width:calc(100% + 36px);flex:none;margin:0 -18px;height:170px;background:var(--surface-void)}
.destination-card.illustrated>div{flex:1}
.destination-cover.illustrated{background:var(--surface-surface-lift);border-color:var(--color-graphite-hairline);align-items:center;justify-content:space-between}
.destination-cover.illustrated:after{display:none}
.destination-cover.illustrated>div{color:var(--color-white);max-width:65%;padding:28px}
.destination-cover.illustrated p{color:var(--color-smoke-gray)}
.destination-cover.illustrated>.country-artwork{width:35%;height:260px;flex-shrink:0}
.destination-cover.illustrated .cover-tag{background:var(--surface-graphite);border-color:var(--color-charcoal);color:var(--color-smoke-gray)}
.catalog-view-switch{display:flex;gap:5px;margin-left:auto}
.catalog-view-switch button{padding:10px 15px;border:1px solid var(--color-graphite-hairline);border-radius:999px;color:var(--color-smoke-gray);background:var(--surface-surface-lift)}
.catalog-view-switch button[aria-pressed=true]{background:var(--color-iris-violet);color:#fff;border-color:var(--color-iris-violet)}
.destination-grid.country-list{display:grid;grid-template-columns:1fr;gap:8px}
.country-list .destination-card{min-height:70px;width:100%;padding:14px 54px 14px 18px}
.country-list .destination-card small{display:none}
.country-list .destination-favorite{top:20px;right:16px}
.destination-tile{min-width:0}
@media(max-width:760px){.destination-card.illustrated>.country-artwork{height:145px}.destination-cover.illustrated>div{max-width:64%;padding:20px}.destination-cover.illustrated h2{font-size:27px}.destination-cover.illustrated>.country-artwork{width:40%;height:220px;margin-left:-4%}.catalog-view-switch{width:100%;margin-left:0}.device-photos .country-artwork{height:85px}}
@media(prefers-reduced-motion:reduce){.country-scene *{animation:none!important}}
.country-scene:not(.scene-visible) *{animation-play-state:paused}
.destination-cover h2 .country-flag{vertical-align:middle}
.country-list .destination-card{display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:15px}
.country-list .destination-card>div{flex:1;text-align:left}
.catalog-tools{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.destination-favorite{background:var(--surface-surface-lift);color:var(--color-iris-violet-glow);border-color:var(--color-graphite-hairline)}
.filters button.active{background:var(--color-iris-violet);color:#fff;border-color:var(--color-iris-violet)}
/* Flag artwork fills the complete card; the SIM is a floating foreground object. */
.flag-scene{position:relative;display:block;width:100%;height:100%;isolation:isolate;perspective:700px;background:#152039;overflow:hidden}
.scene-flag{position:absolute;inset:-5%;width:110%;height:110%;max-width:none;object-fit:cover;filter:saturate(.92);animation:flag-drift 12s ease-in-out infinite alternate}
.flag-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#06122405 0%,#06122412 35%,#0612249c 72%,#061224f0 100%);pointer-events:none;z-index:2}
.flag-sheen{position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 35%,#ffffff24 48%,transparent 61%);animation:flag-light 10s ease-in-out infinite;z-index:1;pointer-events:none}
.sim-sculpture{position:absolute;top:7%;left:50%;width:120px;height:160px;overflow:visible;filter:drop-shadow(12px 18px 14px #07102060);transform-origin:center;animation:sim-hover 6s ease-in-out infinite;z-index:2}
.sim-sculpture .scene-sim{animation:none;transform:none;fill:none}
.sim-sculpture .scene-chip{fill-opacity:1}
.sim-sculpture .scene-signal{color:#fff;animation:signal-wave 2.6s ease-in-out infinite}
.sim-orbit{position:absolute;left:50%;top:47%;width:170px;height:44px;border:1px solid #ffffff65;border-radius:50%;transform:translate(-50%,-50%) rotate(-15deg);box-shadow:0 0 24px #ffffff18;z-index:1}
.sim-connection-dot{position:absolute;top:29%;left:calc(50% + 61px);width:6px;height:6px;border-radius:50%;background:#c5ffe4;box-shadow:0 0 14px #7bffc0;animation:signal-wave 2.6s ease-in-out infinite;z-index:3}
.country-flag img{width:100%;height:100%;object-fit:cover}
.destination-card.illustrated{position:relative;display:flex;flex-wrap:nowrap;align-items:flex-end;gap:12px;min-height:290px;padding:22px;color:#fff;border-color:#ffffff28;background:#152039;text-align:left}
.destination-card.illustrated>.country-artwork{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;z-index:-1;background:#152039}
.destination-card.illustrated>.country-flag{position:relative;z-index:3;width:34px;height:34px;border:2px solid #ffffff85;margin-bottom:2px}
.destination-card.illustrated>div{position:relative;z-index:3;flex:1;min-width:0}
.destination-card.illustrated strong,.destination-card.illustrated:not(.with-photo) strong{color:#fff;font-size:20px;font-weight:700;letter-spacing:-.4px;text-shadow:0 1px 8px #0005}
.destination-card.illustrated small{color:#ffffffd9;font-size:11px;line-height:1.5;margin-top:6px}
.destination-tile:has(.illustrated)>.destination-favorite{background:#0b142b45;backdrop-filter:blur(12px);border-color:#ffffff65;color:#fff;box-shadow:0 2px 12px #0001}
.destination-tile:has(.illustrated)>.destination-favorite[aria-pressed=true]{color:#ffe298;background:#10172b99}
.destination-card.illustrated:hover .sim-sculpture{filter:drop-shadow(14px 22px 16px #07102080)}
.destination .flag-scene{padding:0;max-width:none}
.destination .sim-sculpture{width:200px;height:270px;top:12%}
.destination-cover.illustrated{min-height:290px;isolation:isolate;overflow:hidden;background:#152039}
.destination-cover.illustrated>.country-artwork{position:absolute;inset:0;width:100%;height:100%;margin:0;z-index:-1}
.destination-cover.illustrated>div{color:#fff;max-width:70%;z-index:3;align-self:flex-end}
.destination-cover.illustrated p{color:#ffffffd9}
.destination-cover.illustrated .sim-sculpture{left:77%;top:10%}
.destination-cover.illustrated .cover-tag{background:#101a3455;border-color:#ffffff66;color:#fff;backdrop-filter:blur(10px)}
.device-photos .sim-sculpture,.preview-countries .sim-sculpture{width:64px;height:88px;top:8%}
.device-photos .sim-orbit,.preview-countries .sim-orbit{width:95px;height:24px}
@keyframes sim-hover{0%,100%{transform:translate(-50%,0) rotate(-12deg) rotateY(-18deg)}50%{transform:translate(-50%,-12px) rotate(3deg) rotateY(15deg)}}
@keyframes flag-drift{from{transform:scale(1.01) translateX(-1%)}to{transform:scale(1.06) translateX(1%)}}
@keyframes flag-light{0%,100%{transform:translateX(-25%);opacity:.25}50%{transform:translateX(25%);opacity:.65}}
.destination-tile:nth-child(3n+2) .sim-sculpture{animation-delay:-2s}
.destination-tile:nth-child(3n+3) .sim-sculpture{animation-delay:-4s}
@media(max-width:760px){.destination-card.illustrated{min-height:240px;padding:15px;gap:8px}.destination-card.illustrated>.country-artwork{width:100%;height:100%}.destination-card.illustrated strong,.destination-card.illustrated:not(.with-photo) strong{font-size:16px}.destination-card.illustrated small{font-size:10px}.destination-card.illustrated>.country-flag{display:none}.sim-sculpture{width:96px;height:130px;top:12%}.sim-orbit{width:135px}.destination-cover.illustrated>.country-artwork{width:100%;height:100%;margin:0}.destination-cover.illustrated>div{max-width:100%}.destination-cover.illustrated .sim-sculpture{left:75%;width:90px;top:4%}}
@media(prefers-reduced-motion:reduce){.flag-scene *{animation:none!important}.sim-sculpture{transform:translateX(-50%) rotate(-8deg)}}
.filters button{background:var(--surface-surface-lift);color:var(--color-smoke-gray)}
.filters button.active,.catalog-view-switch button[aria-pressed=true]{background:var(--color-iris-violet);color:var(--color-void-black)}
/* Shared live connection illustration replaces the former static orbital image. */
.globe.connection-art{display:block;background:none;border:0;box-shadow:none;mix-blend-mode:normal;filter:none;transform:none;overflow:visible;width:290px;height:290px;right:15px;top:-10px;pointer-events:none}
.globe.connection-art:before,.globe.connection-art:after,.auth-story:after{display:none}
.globe.connection-art>.country-scene{display:block}
.connection-scene{background:radial-gradient(ellipse at center,#9281f71f,transparent 70%);overflow:visible}
.connection-scene:after,.connection-scene .flag-sheen{display:none}
.connection-scene .sim-sculpture{top:19%;width:125px;height:165px;z-index:3}
.connection-scene .sim-orbit{top:62%;width:190px;border-color:var(--color-iris-violet-glow);opacity:.5}
.connection-scene .sim-connection-dot{top:35%;left:75%;background:var(--color-pulse-green)}
.connection-earth{position:absolute;left:5%;top:5%;width:92px;height:92px;color:var(--color-iris-violet-glow);stroke:currentColor;stroke-width:1;opacity:.65;animation:earth-float 8s ease-in-out infinite}
.connection-ring{position:absolute;inset:17%;border:1px solid var(--color-iris-violet);border-radius:50%;transform-style:preserve-3d;animation:connection-orbit 15s linear infinite;opacity:.6}
.connection-ring:after{content:'';position:absolute;top:15%;left:11%;width:8px;height:8px;background:var(--color-pulse-green);border-radius:50%;box-shadow:0 0 14px var(--color-pulse-green)}
.connection-ring.ring-two{inset:7%;animation:connection-orbit-two 19s linear infinite;opacity:.35}
.auth-story{position:relative;isolation:isolate;overflow:hidden}
.auth-connection{position:absolute;right:-30px;bottom:0;width:340px;height:340px;z-index:0;pointer-events:none}
.auth-story>div:not(.connection-art),.auth-story>.brand,.auth-story>small{position:relative;z-index:1}
@keyframes earth-float{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-8px) rotate(8deg)}}
@keyframes connection-orbit{from{transform:rotate(-25deg) rotateX(65deg) rotateZ(0)}to{transform:rotate(-25deg) rotateX(65deg) rotateZ(360deg)}}
@keyframes connection-orbit-two{from{transform:rotate(45deg) rotateY(65deg) rotateZ(0)}to{transform:rotate(45deg) rotateY(65deg) rotateZ(-360deg)}}
@media(max-width:760px){.globe.connection-art{right:-70px;top:20px;opacity:.35}.auth-connection{display:none}}
@media(prefers-reduced-motion:reduce){.connection-scene *{animation:none!important}.connection-ring{transform:rotate(-25deg) rotateX(65deg)}.connection-ring.ring-two{transform:rotate(45deg) rotateY(65deg)}}
.application-review-actions{display:grid;gap:10px;margin-top:16px}
.form-feedback:not(:empty){padding:12px 14px;margin:14px 0;border:1px solid currentColor;border-radius:12px;line-height:1.5}
