/* Dari — confort, clarté et premium sobre. Chargé en dernier. */

/* ================= Taille du texte et police (réglage « Aa ») ================= */
html{font-size:16px}
html.fs-s{font-size:15px}
html.fs-l{font-size:18px}
html.fs-xl{font-size:20px}
html.font-legible body,html.font-legible button,html.font-legible input,html.font-legible select,html.font-legible textarea{font-family:"Atkinson Hyperlegible",var(--ui)!important;letter-spacing:.01em}
html.font-system body,html.font-system button,html.font-system input,html.font-system select,html.font-system textarea{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Apple SD Gothic Neo","Malgun Gothic",sans-serif!important}
html.font-legible h1,html.font-legible h2,html.font-legible h3,html.font-system h1,html.font-system h2,html.font-system h3{font-family:inherit!important}
/* la barre d'onglets garde une taille fixe pour ne jamais couper les libellés */
.tab{font-size:10.5px!important}
.tab .ic{width:23px;height:23px}
/* contraste renforcé */
html.hc{--muted:#2E323B;--faint:#4A4F5A;--line:#B9B2A4}
html.hc[data-theme="dark"],html.hc:not([data-theme="light"]) .x-never{--muted:#D4D7DE;--faint:#B5B9C2;--line:#4B5160}
@media (prefers-color-scheme:dark){html.hc:not([data-theme="light"]){--muted:#D4D7DE;--faint:#B5B9C2;--line:#4B5160}}
html.hc a,html.hc .glink{text-decoration:underline}
html.rm *,html.rm *::before,html.rm *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}

/* Bouton Aa dans la barre du haut */
#aaTop{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.02em;min-width:40px}
.aa-in h3{font-family:var(--display);font-size:1.3rem}
.aa-sz{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.aa-sz button{min-height:56px;border-radius:14px;border:1.5px solid var(--line);background:var(--surface);color:var(--fg);font-weight:800;cursor:pointer;line-height:1}
.aa-sz button.on,.aa-font button.on{border-color:var(--fg);background:var(--fg);color:var(--bg)}
.aa-font{display:grid;gap:6px}
.aa-font button{display:flex;justify-content:space-between;align-items:center;min-height:52px;border-radius:14px;border:1.5px solid var(--line);background:var(--surface);color:var(--fg);padding:10px 14px;font-size:1rem;cursor:pointer;text-align:left}
.aa-font button small{color:inherit;opacity:.7;font-size:.8rem}
.aa-prev{background:var(--surface-2);border-radius:12px;padding:12px 14px;margin-top:10px;font-size:1rem}
.acc-seg.three{grid-template-columns:repeat(3,1fr)}
.aa-mini{font-family:var(--display);font-weight:700}

/* ================= Accueil ================= */
.home2 .hello{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.hero.photo{position:relative;overflow:hidden;color:#fff;background:#1E2A4A;border:0;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;padding-top:150px!important}
.hero.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,12,24,0) 0%,rgba(8,12,24,.1) 28%,rgba(8,12,24,.62) 52%,rgba(8,12,24,.9) 100%),var(--ph) center 30%/cover no-repeat;z-index:0;opacity:1!important;transform:none!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:auto!important;height:auto!important;font-size:0!important;color:transparent!important}
.hero.photo>*{position:relative;z-index:1}
.hero.photo>svg{display:none}
.hero.photo .kick{color:#FFD9A0!important}
.hero.photo h1{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.hero.photo p{color:rgba(255,255,255,.88)!important}
.hero.photo .ask-bar{background:rgba(255,255,255,.96);color:#14161B;border-color:transparent}
.hero.photo::after{display:none}
.pcred{position:absolute!important;right:10px;top:10px;z-index:2!important;font-size:10px;line-height:1.2;color:rgba(255,255,255,.85);background:rgba(0,0,0,.35);padding:3px 7px;border-radius:999px;text-decoration:none;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.qt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:96px;border-radius:20px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);color:var(--fg);font:inherit;cursor:pointer;padding:12px 6px}
.qt .qi{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--c) 11%,transparent);color:var(--c)}
.qt .qi .ic{width:25px;height:25px}
.qt b{font-size:.9rem;font-weight:800;text-align:center;line-height:1.2}
.qt:active{transform:scale(.97)}
.hblock{margin-top:22px}
.hh{font-family:var(--display);font-size:1.35rem;margin:0 0 10px;display:flex;align-items:baseline;gap:8px}
.hh .ko{font-family:var(--ui);font-size:.8rem;color:var(--faint);font-weight:700}
.lvl{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px 16px;box-shadow:var(--shadow)}
.lvl-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.lvl-h b{font-weight:800;font-size:1rem}
.lvl-h span{color:var(--muted);font-weight:700;font-size:.85rem}
.lvl-bar{height:8px;border-radius:99px;background:var(--surface-2);margin:9px 0 6px;overflow:hidden}
.lvl-bar i{display:block;height:100%;border-radius:99px;background:var(--saekdong)}
.lvl small{color:var(--muted);font-size:.84rem}
.chal{display:flex;align-items:center;gap:12px;width:100%;margin-top:10px;padding:14px 16px;border-radius:18px;border:1.5px dashed color-mix(in srgb,var(--celadon) 45%,var(--line));background:var(--celadon-soft);color:var(--fg);font:inherit;text-align:left;cursor:pointer}
.chal .chi{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--celadon);color:#fff;font-weight:900}
.chal span:nth-child(2){flex:1;min-width:0}
.chal small{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--celadon)}
.chal b{display:block;font-size:1rem;line-height:1.35}
.chal em{flex:none;font-style:normal;font-weight:800;color:var(--celadon);font-size:.9rem}
.chal.done{border-style:solid;border-color:color-mix(in srgb,var(--ok) 40%,var(--line));background:var(--ok-soft)}
.chal.done .chi{background:var(--ok)}
.chal.done em,.chal.done small{color:var(--ok)}
.hblock .bento{margin-top:10px}
.home2 #v3week .evrow{display:grid;grid-template-columns:1fr;gap:10px;overflow:visible}
.home2 #v3week .evrow .ev:nth-child(n+3){display:none}
.home2 #v3week .evrow .ev{width:auto;min-width:0;max-width:none}
.hsec{background:var(--surface);border:1px solid var(--line);border-radius:20px;margin-top:12px;box-shadow:var(--shadow);overflow:hidden}
.hsec>summary{list-style:none;display:flex;align-items:center;gap:13px;padding:14px 16px;min-height:70px;cursor:pointer}
.hsec>summary::-webkit-details-marker{display:none}
.hsec>summary::after{content:"";width:10px;height:10px;border-right:2.5px solid var(--faint);border-bottom:2.5px solid var(--faint);transform:rotate(45deg);margin:-4px 4px 0 auto;flex:none;transition:transform .2s}
.hsec[open]>summary::after{transform:rotate(-135deg);margin-top:4px}
.hsi{flex:none;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:var(--celadon-soft);color:var(--celadon)}
.hsi .ic,.hsi svg{width:24px;height:24px}
.hst{flex:1;min-width:0}
.hst b{display:block;font-size:1.06rem;font-weight:800;line-height:1.3}
.hst small{display:block;color:var(--muted);font-size:.86rem;margin-top:1px}
.hsb{padding:4px 14px 16px;border-top:1px solid var(--line)}
.hsb>.bento,.hsb>.starts{margin-top:12px}
.hsb .sec-lead{margin-top:12px}
#hs_help .hsi{background:rgba(205,46,58,.1);color:#C2271F}
.offers{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:22px}
.offers>*{margin-top:0!important;grid-column:1/-1!important;width:100%}

/* Guide et Outils en menus déroulants */
.gsec .hsb{padding-top:12px}
.gsec .areas,.gsec .cultlist{margin-top:4px}
.tacc .toolcard{box-shadow:none;border:0;margin:0;padding:6px 0 0;background:transparent}
.tacc .toolcard>.th{display:none}
.tacc .hsb,.tacc>.toolcard{border-top:1px solid var(--line);padding:6px 14px 14px}
.tacc>summary .tlk{flex:none;font-size:.62rem;font-weight:900;letter-spacing:.12em;padding:4px 8px;border-radius:6px;background:var(--fg);color:var(--bg);margin-left:6px}
.tacc .toolcard.tlock .tl-over{top:0}
.phrase{display:grid!important;grid-template-columns:1fr auto;grid-template-areas:"ko play" "rom play" "en play";column-gap:12px;row-gap:2px;align-items:center}
.phrase .ko{grid-area:ko;font-size:1.25rem}
.phrase .rom{grid-area:rom}
.phrase .en{grid-area:en;color:var(--muted)}
.phrase .play{grid-area:play;align-self:center}

/* Photos : villes, bannière Sorties, voyage, guide resto */
button.city.photo{position:relative;overflow:hidden;color:#fff;border-color:transparent;background:#1E2A4A}
button.city.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.62)),var(--ph) center/cover no-repeat;z-index:0}
button.city.photo>*{position:relative;z-index:1}
button.city.photo svg{opacity:0}
button.city.photo b{color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.5)}
button.city.photo span{color:rgba(255,255,255,.85)}
button.city.photo i{background:rgba(255,255,255,.92);color:#14161B}
button.city.photo.on{box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--celadon)}
.cityban{position:relative;overflow:hidden;border-radius:22px;min-height:170px;margin-top:14px;padding:16px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:#1E2A4A}
.cityban::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.65)),var(--ph) center/cover no-repeat}
.cityban>*{position:relative}
.cityban .ck{font-size:.9rem;opacity:.9}
.cityban b{font-family:var(--display);font-size:1.7rem;line-height:1.1}
.thero.photo{background:#0B2E66}
.thero.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,22,56,.55),rgba(6,22,56,.9)),var(--ph) center/cover no-repeat}
.thero.photo>*{position:relative}
.fg-hero.photo{position:relative;overflow:hidden}
.fg-hero.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,16,21,.55),rgba(14,16,21,.93)),var(--ph) center/cover no-repeat}
.fg-hero.photo>*{position:relative}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:90}

/* ================= Dari Pass : premium sobre (remplace le style « or brillant ») ================= */
:root{--pro-ink:#111214;--pro-ink2:#1A1B1F;--pro-line:rgba(255,255,255,.09);--pro-text:#F3F1EC;--pro-mute:#A6A39B;--champ:#C9A96E;--champ-soft:rgba(201,169,110,.12)}
.vault{background:var(--pro-ink)!important;color:var(--pro-text)!important;border:1px solid var(--pro-line);box-shadow:0 20px 50px -30px rgba(0,0,0,.8)!important;padding:28px 22px 24px!important}
.vault::after{display:none!important}
.vault::before{content:"金"!important;top:20px;right:20px;bottom:auto!important;left:auto;width:34px;height:34px;display:grid;place-items:center;font-size:1rem!important;color:var(--champ)!important;border:1px solid rgba(201,169,110,.55);border-radius:6px;line-height:1;font-family:var(--display)}
.vk{background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;color:var(--champ)!important;letter-spacing:.24em!important;font-size:.7rem!important}
.vault h2{color:#fff!important;font-weight:600;letter-spacing:-.01em;max-width:16ch}
.vault p{color:var(--pro-mute)!important}
.vprice b{background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;color:#fff!important;font-family:var(--ui)!important;font-weight:800;letter-spacing:-.03em}
.vprice span{color:var(--pro-mute)!important}
.vonce{color:var(--pro-mute)!important}
.vsoon{color:var(--champ)!important;border-color:rgba(201,169,110,.45)!important}
.vcount{color:var(--fg)!important;font-size:.95rem!important}
.vcount .g-lock{color:var(--champ)}
/* Boutons : sombres et nets sur fond clair, blancs sur fond sombre */
.gbtn{background:var(--pro-ink)!important;color:#fff!important;box-shadow:none!important;border:0!important;border-radius:14px!important;letter-spacing:.01em}
.gbtn:hover{background:#000!important}
.vault .gbtn,.gwall .gbtn,.up-in.gup .gbtn,.acc-id.gold .gbtn{background:#fff!important;color:var(--pro-ink)!important}
.gbtn.ghost{background:transparent!important;color:var(--fg)!important;border:1.5px solid var(--line)!important}
.gbtn .g-lock{color:var(--champ)}
html[data-theme="dark"] .gbtn{background:#F3F1EC!important;color:#111214!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .gbtn{background:#F3F1EC!important;color:#111214!important}}
/* Trésors : une seule liste propre */
.gtreas{display:block!important;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:4px 16px}
.gt{background:none!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;padding:14px 0!important}
.gt:last-child{border-bottom:0!important}
.gt .gti{background:var(--surface-2)!important;color:var(--fg)!important;border-radius:12px!important;width:40px!important;height:40px!important}
.gt .g-lock{color:var(--faint)!important}
.gt .gck{color:var(--ok)}
.gcmp td.p,.gcmp th.p{color:var(--fg)!important;background:var(--champ-soft)}
/* Mur : aperçu flouté + carte claire au centre */
.gwall{background:var(--surface-2)!important;border:1px solid var(--line)!important;min-height:0}
.gblur{opacity:.5!important;filter:blur(6px)!important}
.gblur i,.gfake i{background:linear-gradient(90deg,var(--line),color-mix(in srgb,var(--line) 50%,var(--surface)),var(--line))!important}
.gfake em{color:var(--muted)!important}
.gover{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 40%,transparent),color-mix(in srgb,var(--surface-2) 92%,transparent) 60%)!important;color:var(--fg)!important;min-height:210px}
.gover b{color:var(--fg)!important;font-weight:700}
.gover span{color:var(--muted)!important}
.gover .g-lock{width:22px!important;height:22px!important;color:var(--champ)!important;padding:10px;box-sizing:content-box;border-radius:50%;background:var(--surface);border:1px solid var(--line)}
.gwall .gbtn{background:var(--pro-ink)!important;color:#fff!important}
html[data-theme="dark"] .gwall .gbtn{background:#F3F1EC!important;color:#111214!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .gwall .gbtn{background:#F3F1EC!important;color:#111214!important}}
.gtag{color:var(--muted)!important;letter-spacing:.16em!important}
.v3-pill.gold-tag{background:transparent!important;color:#8A6A2E!important;border:1px solid rgba(201,169,110,.7);font-weight:800}
html[data-theme="dark"] .v3-pill.gold-tag{color:var(--champ)!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .v3-pill.gold-tag{color:var(--champ)!important}}
.tgold{background:var(--surface-2)!important;border:1px dashed var(--line)!important}
.tgold .g-lock{color:var(--champ)!important}
.tgold em{background:var(--fg)!important;color:var(--bg)!important}
.gchip.on{background:var(--fg)!important;color:var(--bg)!important;border-color:var(--fg)!important}
.gday{border-color:var(--line)!important}
/* Feuille « coffre » : claire et nette */
.up-in.gup{background:var(--surface)!important;color:var(--fg)!important;border:1px solid var(--line)!important}
.up-in.gup .vk{color:#8A6A2E!important}
.up-in.gup h3{color:var(--fg)!important}
.up-in.gup p{color:var(--muted)!important}
.up-in.gup .vprice b{color:var(--fg)!important}
.up-in.gup .vprice span{color:var(--muted)!important}
.up-in.gup .gbtn{background:var(--pro-ink)!important;color:#fff!important}
.gupl .gti{background:var(--surface-2)!important;color:var(--fg)!important}
.glink.light{color:var(--muted)!important}
/* Carte Pass de l'accueil et du compte */
.b.prem{background:var(--pro-ink)!important;border-color:var(--pro-ink)!important;color:var(--pro-text)}
.b.prem .bk{color:var(--champ)!important}
.b.prem .bt{color:#fff}
.b.prem .bs{color:var(--pro-mute)!important}
.acc-id.gold{background:var(--pro-ink)!important;border-color:var(--pro-ink)!important}
.acc-id.gold .acc-ava,#acctBtn.gold .aini{background:var(--champ)!important;color:#111214!important}
.acc-badge{background:transparent!important;color:var(--champ)!important;border:1px solid rgba(201,169,110,.6)}
#s_pass .asi{background:var(--champ-soft)!important;color:#8A6A2E!important}
.acc-status.ok{background:var(--champ-soft)!important;color:#8A6A2E!important}
#premBtn{color:#8A6A2E}
#premBtn.haspass{background:var(--pro-ink)!important;color:var(--champ)!important;border-color:var(--pro-ink)!important}

/* Barre du haut : plus de place pour les boutons sur petit écran */
@media (max-width:430px){.brand::after{display:none}}
@media (max-width:360px){#commBtn{display:none}}
.tai-tag{font-style:normal;font-size:.62rem;font-weight:900;letter-spacing:.08em;color:var(--celadon);background:var(--celadon-soft);border-radius:6px;padding:2px 6px;vertical-align:2px}

/* Villes : icônes seules, sans compteur */
button.city>i{display:none!important}

/* Carrousel « La Corée en images » */
.kcar-wrap{margin-top:24px}
.kcar{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px;scroll-padding:0 16px}
.kcar::-webkit-scrollbar{display:none}
.kslide{position:relative;flex:0 0 86%;height:230px;border:0;padding:0;border-radius:22px;overflow:hidden;scroll-snap-align:start;background:#1E2A4A;cursor:pointer;box-shadow:var(--shadow)}
@media (min-width:640px){.kslide{flex-basis:60%;height:280px}}
.kslide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.kslide:hover img{transform:scale(1.04)}
.kslide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.72))}
.kcap{position:absolute;left:16px;right:16px;bottom:14px;z-index:1;text-align:left;color:#fff}
.kcap small{display:block;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.9}
.kcap b{display:block;font-family:var(--display);font-size:1.25rem;line-height:1.25;margin-top:3px;text-shadow:0 1px 10px rgba(0,0,0,.4)}
.kslide .pcred{z-index:2}
.kdots{display:flex;justify-content:center;gap:6px;margin-top:10px}
.kdots i{width:7px;height:7px;border-radius:99px;background:var(--line);transition:width .25s,background .25s}
.kdots i.on{width:20px;background:var(--celadon)}

/* Diaporama du héros d'accueil */
.hero.photo .hslides{position:absolute!important;inset:0;z-index:0!important;overflow:hidden;border-radius:inherit;background:#1E2A4A;-webkit-mask-image:-webkit-radial-gradient(white,black)}
.hero.photo .hslides i{position:absolute;inset:-4%;background:center 35%/cover no-repeat;opacity:0;animation:hsl 36s linear infinite;animation-delay:calc(var(--i) * 6s - .6s);will-change:opacity,transform}
.hero.photo .hslides i:first-child{opacity:1}
.hero.photo .hslides::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,12,24,0) 0%,rgba(8,12,24,.1) 28%,rgba(8,12,24,.62) 52%,rgba(8,12,24,.9) 100%)}
@keyframes hsl{0%{opacity:0;transform:scale(1.02)}3%{opacity:1}16.6%{opacity:1}20%{opacity:0;transform:scale(1.1)}100%{opacity:0;transform:scale(1.02)}}
.hero.photo .hcreds{position:absolute!important;right:12px;top:10px;z-index:2!important}
.hero.photo .hcreds span{position:absolute;right:0;top:0;white-space:nowrap;opacity:0;animation:hsc 36s linear infinite;animation-delay:calc(var(--i) * 6s - .6s)}
.hero.photo .hcreds span:first-child{opacity:1}
.hero.photo .hcreds .pcred{position:static!important}
@keyframes hsc{0%{opacity:0}3%{opacity:1}16.6%{opacity:1}19%{opacity:0}100%{opacity:0}}
html.rm .hero.photo .hslides i:not(:first-child),html.rm .hero.photo .hcreds span:not(:first-child){display:none}
html.rm .hero.photo .hslides i:first-child,html.rm .hero.photo .hcreds span:first-child{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){.hero.photo .hslides i:not(:first-child),.hero.photo .hcreds span:not(:first-child){display:none}.hero.photo .hslides i,.hero.photo .hcreds span{animation:none!important;opacity:1}}
