:root{
  --paper:#FBF9F4;
  --ink:#221E17;
  --ink-soft:#6E675C;
  --line:#E5E0D5;
  --hl:#FFF8B2;
  --hl-deep:#F5E96E;
  --cta:#B83C21;
  --cta-soft:#FBEDE8;
  --card:#FFFFFF;
  --tag-bg:#F4F0E6;
  --official:#496650;
  --radius:14px;
}
.month-directory{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.month-directory h3{font-size:1rem;margin-bottom:10px}
.month-directory>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 12px}
.month-directory a,.trip-guide-index a{color:var(--official);text-decoration:underline;text-underline-offset:3px;min-height:44px;display:flex;align-items:center;padding:8px 0;overflow-wrap:anywhere}
.trip-guide-index ul{list-style:none;margin-top:12px}
.trip-guide-index li{padding:8px 0;border-top:1px solid var(--line)}
.trip-guide-index li span{display:block;color:var(--ink-soft);font-size:.94rem}
.trip-notes h3{margin-top:22px;margin-bottom:8px}
.trip-notes p{margin-bottom:14px}
.trip-notes a,.trip-notes-jump a{color:var(--official);text-decoration:underline;text-underline-offset:3px}
.trip-notes-jump a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0}
.trip-notes th a{display:inline-flex;align-items:center;min-height:44px;padding:6px 4px}
.month-directory a:focus-visible,.trip-guide-index a:focus-visible,.trip-notes a:focus-visible,.trip-notes-jump a:focus-visible{outline:2px solid var(--official);outline-offset:4px}
@media(max-width:420px){.month-directory>div{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-notes .weather-comparison{font-size:.85rem}.trip-notes .weather-comparison th,.trip-notes .weather-comparison td{padding:10px 4px;white-space:normal}}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--paper);
  color:var(--ink);
  line-height:1.55;
  padding-bottom:32px;
}
body[data-page="dest"]{padding-bottom:calc(108px + env(safe-area-inset-bottom))}
button,input{font:inherit}
button{color:inherit}
.mono{font-family:'IBM Plex Mono',monospace}
.wrap{max-width:720px;margin:0 auto;padding:0 18px}
.sr-only{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;
  margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}

/* ---------- header ---------- */
header{
  padding:28px 0 10px;display:flex;align-items:flex-start;
  justify-content:space-between;gap:16px;
}
.brand a{text-decoration:none;color:inherit}
.brand h1,.brand .brand-t{display:block;font-size:26px;font-weight:800;letter-spacing:-.5px}
.brand h1 em,.brand .brand-t em{font-style:normal;background:linear-gradient(transparent 55%,var(--hl) 55%)}
.tagline{font-size:14px;color:var(--ink-soft);margin-top:4px}
.change-dest{
  margin-top:2px;display:inline-flex;align-items:center;min-height:40px;
  padding:7px 11px;border:1px solid var(--line);border-radius:10px;
  background:#fff;color:var(--ink-soft);font-size:13px;font-weight:700;
  text-decoration:none;white-space:nowrap;
}

/* ---------- landing ---------- */
.landing{margin-top:20px;text-align:center;padding:34px 10px 26px}
.landing .big{font-size:22px;font-weight:800;line-height:1.45}
.landing .big em{font-style:normal;background:linear-gradient(transparent 55%,var(--hl) 55%)}
.landing p{font-size:14px;color:var(--ink-soft);margin-top:10px}
.hero-actions{
  display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:22px;
}
.hero-actions a{
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;
  padding:11px 16px;border-radius:11px;font-size:14px;font-weight:750;text-decoration:none;
}
.hero-primary{background:var(--ink);color:#fff}
.hero-secondary{border:1.5px solid var(--line);background:#fff;color:var(--ink)}

/* ---------- destination picker ---------- */
.picker{margin-top:16px}
.picker h2{font-size:18px;margin-bottom:18px}
.region{margin-bottom:20px}
.region-label{font-size:11px;letter-spacing:2px;color:var(--ink-soft);margin-bottom:8px}
.tags{display:flex;flex-wrap:wrap;gap:9px}
a.tag{
  display:flex;align-items:center;gap:8px;min-height:44px;
  background:var(--tag-bg);border:1.5px dashed #BDB5A4;border-radius:10px;
  padding:9px 13px 9px 10px;cursor:pointer;font-size:14px;font-weight:700;
  text-decoration:none;color:inherit;transition:transform .12s ease,background .12s ease;
  position:relative;
}
a.tag::before{
  content:"";width:8px;height:8px;border-radius:50%;
  background:var(--paper);border:1.5px solid #AFA694;flex:0 0 auto;
}
@media (hover:hover){a.tag:hover{background:#EEE8DA}}
a.tag:active{transform:scale(.97)}
a.tag .code{font-size:11px;color:var(--ink-soft);letter-spacing:1px}
a.tag .pct{
  position:absolute;top:-7px;right:-6px;display:none;
  padding:2px 7px;border-radius:20px;background:var(--cta);color:#fff;
  font-size:10px;font-weight:800;
}
a.tag.has-progress .pct{display:block}

/* ---------- landing FAQ ---------- */
.faq{margin:42px 0 18px}
.faq h2{font-size:18px;margin-bottom:12px}
.faq details{
  margin-bottom:8px;border:1px solid var(--line);border-radius:11px;background:#fff;
}
.faq summary{
  min-height:48px;padding:13px 42px 12px 14px;cursor:pointer;
  font-size:14px;font-weight:700;position:relative;list-style:none;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"＋";position:absolute;right:15px;top:12px;color:var(--ink-soft);font-size:18px;
}
.faq details[open] summary::after{content:"−"}
.faq details p{padding:0 14px 14px;color:var(--ink-soft);font-size:13px;line-height:1.7}

/* ---------- trip planner ---------- */
.plan{padding:18px 0 10px}
.plan-heading{margin-bottom:24px}
.eyebrow{display:block;color:var(--cta);font-size:11px;letter-spacing:2px;font-weight:700}
.plan-heading h2{margin-top:4px;font-size:25px;letter-spacing:-.5px}
.plan-heading p{margin-top:7px;color:var(--ink-soft);font-size:14px;line-height:1.7}
.plan-step{
  scroll-margin-top:18px;padding:20px 18px;border:1.5px solid var(--line);
  border-radius:var(--radius);background:#fff;box-shadow:3px 3px 0 rgba(34,30,23,.06);
}
.plan-step[hidden]{display:none}
.step-title{display:flex;align-items:flex-start;gap:11px;margin-bottom:20px}
.step-title>span{
  display:flex;align-items:center;justify-content:center;flex:0 0 30px;height:30px;
  border-radius:50%;background:var(--ink);color:#fff;font-family:'IBM Plex Mono',monospace;
  font-size:13px;font-weight:700;
}
.step-title h3{font-size:18px;line-height:1.35}
.step-title p{margin-top:2px;color:var(--ink-soft);font-size:12.5px}
.plan-region{margin-bottom:17px}
.plan-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.plan-option{
  display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;
  padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;background:#fff;
  font-size:14px;font-weight:700;cursor:pointer;text-align:left;
}
.plan-option .code{color:var(--ink-soft);font-size:10px;letter-spacing:1px}
.plan-option.selected{border-color:var(--ink);background:var(--hl)}
.plan-option.selected::before{content:"✓";font-size:12px}
.plan-option.selected span:first-of-type{margin-right:auto}
.selection-summary{margin:18px 0 10px;color:var(--ink-soft);font-size:12.5px}
.step-next,.step-back{
  min-height:48px;border-radius:10px;padding:11px 16px;font-size:14px;font-weight:750;
  cursor:pointer;
}
.step-next{width:100%;border:0;background:var(--ink);color:#fff}
.step-next:disabled{background:#D8D2C7;color:#777065;cursor:not-allowed}
.step-back{border:1.5px solid var(--line);background:#fff;color:var(--ink-soft)}
.step-row{display:flex;gap:9px;margin-top:20px}
.step-row .step-next{flex:1;width:auto}
.date-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.date-grid label{font-size:12px;font-weight:700;color:var(--ink-soft)}
.date-grid input{
  display:block;width:100%;min-height:48px;margin-top:6px;padding:10px 11px;
  border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);
  font-size:16px;-webkit-appearance:none;appearance:none;
}
.date-grid input[aria-invalid="true"]{border-color:var(--cta);background:var(--cta-soft)}
.field-help{margin-top:9px;color:var(--ink-soft);font-size:11.5px}
.field-help.error{color:var(--cta);font-weight:650}
.mode-options{display:grid;gap:9px}
.mode-option{
  display:flex;align-items:center;gap:11px;min-height:58px;padding:11px 12px;
  border:1.5px solid var(--line);border-radius:11px;background:#fff;text-align:left;cursor:pointer;
}
.mode-check{
  display:flex;align-items:center;justify-content:center;flex:0 0 28px;height:28px;
  border:2px solid var(--line);border-radius:8px;color:transparent;font-weight:800;
}
.mode-option b{display:block;font-size:14px}
.mode-option small{display:block;margin-top:2px;color:var(--ink-soft);font-size:11.5px}
.mode-option.selected{border-color:var(--ink);background:var(--hl)}
.mode-option.selected .mode-check{border-color:var(--ink);background:var(--ink);color:#fff}
.create-trip{background:var(--cta)}

/* ---------- multi-city trip ---------- */
.trip-summary{
  margin-top:18px;padding:19px;border:1.5px solid var(--line);border-radius:var(--radius);
  background:#fff;
}
.trip-summary h2{margin-top:4px;font-size:22px;line-height:1.4}
.trip-summary>p{margin-top:4px;color:var(--ink-soft);font-size:13px}
.trip-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}
.trip-chips span{
  display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:20px;
  background:var(--tag-bg);font-size:12px;font-weight:650;
}
.trip-chips b{font-size:9px;letter-spacing:.5px;color:var(--ink-soft)}
.weather-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.weather-links a{
  min-height:38px;padding:8px 10px;border:1px solid #B7C6BA;border-radius:9px;
  background:#F3F8F4;color:#35503B;font-size:12px;font-weight:700;text-decoration:none;
}
.weather-links p{width:100%;color:var(--ink-soft);font-size:11.5px}
.edit-plan{
  display:inline-flex;margin-top:12px;color:var(--cta);font-size:12.5px;font-weight:750;
}
.item-destinations{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.item-destinations span{
  padding:2px 6px;border-radius:10px;background:var(--tag-bg);color:var(--ink-soft);
  font-size:10px;font-weight:650;
}
.empty-trip{padding:36px 18px;text-align:center}
.empty-trip a{
  display:inline-flex;min-height:46px;align-items:center;padding:10px 16px;
  border-radius:10px;background:var(--ink);color:#fff;font-weight:700;text-decoration:none;
}

/* ---------- progress strip ---------- */
.strip{
  margin-top:22px;padding:17px 18px;background:var(--card);
  border:1.5px solid var(--ink);border-radius:var(--radius);
  box-shadow:4px 4px 0 rgba(34,30,23,.08);
}
.strip-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.strip-route{font-size:22px;font-weight:700;letter-spacing:1px}
.strip-route span{font-family:inherit;color:var(--ink-soft);font-size:12px;margin-left:5px;letter-spacing:0}
.strip-city{font-size:13px;color:var(--ink-soft);margin-top:2px}
.strip-pct{font-size:30px;font-weight:800;text-align:right;line-height:1}
.strip-pct small{
  display:block;margin-bottom:3px;color:var(--ink-soft);
  font-size:11px;font-weight:600;letter-spacing:1.5px;
}
progress.bar{
  display:block;width:100%;height:10px;margin-top:14px;border:0;border-radius:6px;
  overflow:hidden;background:var(--tag-bg);appearance:none;-webkit-appearance:none;
}
progress.bar::-webkit-progress-bar{background:var(--tag-bg);border-radius:6px}
progress.bar::-webkit-progress-value{
  border-radius:6px;background:linear-gradient(90deg,var(--hl-deep),var(--cta));
  transition:width .35s ease;
}
progress.bar::-moz-progress-bar{
  border-radius:6px;background:linear-gradient(90deg,var(--hl-deep),var(--cta));
}
.strip-msg{font-size:12.5px;color:var(--ink-soft);margin-top:8px}

/* ---------- shared list notice ---------- */
.shared-note{
  display:none;margin-top:16px;padding:12px 14px;border-radius:10px;
  background:var(--cta-soft);color:#8D2C18;font-size:13px;font-weight:650;
}
.shared-note.show{display:block}
.shared-actions{display:none;gap:8px;margin-top:10px}
.shared-actions.show{display:flex}
.shared-actions button{
  min-height:40px;padding:7px 11px;border:1px solid #D8B3A8;border-radius:8px;
  background:#fff;color:#762715;font-size:12.5px;font-weight:750;cursor:pointer;
}
.shared-actions button:first-child{background:var(--cta);border-color:var(--cta);color:#fff}

/* ---------- guide copy ---------- */
.seo-intro,.city-guide{font-size:14px;color:var(--ink-soft);line-height:1.75}
.seo-intro{margin-top:15px}
.city-guide{
  margin-top:10px;padding:12px 14px;border-left:3px solid var(--hl-deep);
  border-radius:0 10px 10px 0;background:rgba(255,255,255,.62);color:#514B42;
}

/* ---------- checklist ---------- */
.list{margin-top:24px}
.cat{margin-bottom:24px}
.cat-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.cat-head .c-label{font-size:12px;font-weight:650;letter-spacing:1.5px;color:var(--ink-soft)}
.cat-head .c-count{font-size:11px;color:var(--ink-soft)}
.cat-head::after{content:"";flex:1;height:1px;background:var(--line)}
.item{
  display:grid;grid-template-columns:32px minmax(0,1fr) auto;
  align-items:start;gap:11px;margin-bottom:8px;padding:13px 13px;
  background:var(--card);border:1px solid var(--line);border-radius:12px;
  transition:background .15s ease,border-color .15s ease,opacity .15s ease;
}
.item.special{border-left:3px solid var(--hl-deep)}
.chk{
  display:flex;align-items:center;justify-content:center;width:32px;height:32px;
  margin-top:0;border:2px solid var(--ink);border-radius:9px;background:#fff;
  cursor:pointer;transition:background .15s ease;
}
.chk svg{width:16px;height:16px;opacity:0;transform:scale(.5);transition:all .18s ease}
.item.done .chk{background:var(--ink)}
.item.done .chk svg{opacity:1;transform:scale(1)}
.item-body{min-width:0;padding-top:3px}
.item-name{
  display:inline;padding:0;border:0;background:transparent;
  font-size:15px;font-weight:650;line-height:1.5;text-align:left;cursor:pointer;
  position:relative;
}
.item-name::after{
  content:"";position:absolute;z-index:-1;left:-3px;right:-3px;top:48%;
  height:.72em;border-radius:2px;background:var(--hl);
  transform:translateY(-50%) scaleX(0);transform-origin:left center;
  transition:transform .3s cubic-bezier(.2,.8,.3,1);
}
.item.done .item-name::after{transform:translateY(-50%) scaleX(1)}
.item.done .item-name{color:var(--ink-soft)}
.item-note{font-size:12.5px;color:var(--ink-soft);margin-top:3px}
.item.done .item-note{opacity:.72}
.item-skip{
  min-height:34px;margin-top:0;padding:5px 8px;border:1px solid var(--line);
  border-radius:8px;background:#fff;color:var(--ink-soft);
  font-size:11.5px;font-weight:650;cursor:pointer;white-space:nowrap;
}
.item.skipped{background:#F2EEE5;border-style:dashed}
.item.skipped .item-name{text-decoration:line-through;color:var(--ink-soft)}
.item.skipped .item-note,.item.skipped .solve{display:none}
.item.skipped .chk{opacity:.38}
.item.skipped .item-skip{border-color:#9F9686;color:#4D473E;background:#fff}
.solve{
  display:inline-flex;align-items:center;gap:5px;margin-top:8px;
  padding:7px 11px;border-radius:8px;background:var(--cta);color:#fff;
  font-size:12.5px;font-weight:750;text-decoration:none;
}
.solve::after{content:"→"}
.solve.official{background:var(--official)}
.item.done .solve{display:none}
.del{
  min-height:34px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;
  background:#fff;color:var(--ink-soft);font-size:11.5px;font-weight:700;cursor:pointer;
}

/* ---------- custom items ---------- */
.adder{display:flex;gap:8px;margin-top:4px}
.adder input{
  flex:1;min-width:0;min-height:46px;padding:11px 14px;
  border:1.5px dashed #BDB5A4;border-radius:10px;background:transparent;
  font-size:16px;color:var(--ink);
}
.adder input:focus{outline:none;border-color:var(--ink);border-style:solid;background:#fff}
.adder button{
  min-width:68px;border:0;border-radius:10px;background:var(--ink);color:#fff;
  padding:0 17px;font-size:14px;font-weight:750;cursor:pointer;
}
.privacy-note{margin-top:8px;color:var(--ink-soft);font-size:11.5px}

/* ---------- bottom actions ---------- */
.actions{
  position:fixed;z-index:20;left:0;right:0;bottom:0;
  padding:24px 18px calc(14px + env(safe-area-inset-bottom));
  background:linear-gradient(transparent,var(--paper) 30%);
}
.actions .inner{max-width:720px;margin:0 auto;display:flex;gap:10px}
.btn-share{
  flex:1;min-height:52px;border:0;border-radius:12px;background:var(--ink);color:#fff;
  padding:14px 10px;font-size:15px;font-weight:750;cursor:pointer;
  box-shadow:0 4px 14px rgba(34,30,23,.18);
}
.btn-reset{
  min-height:52px;padding:0 17px;border:1.5px solid var(--line);border-radius:12px;
  background:#fff;color:var(--ink-soft);font-size:14px;font-weight:650;cursor:pointer;
}
.toast{
  position:fixed;z-index:99;left:50%;bottom:105px;max-width:calc(100vw - 32px);
  padding:11px 18px;border-radius:30px;background:var(--ink);color:#fff;
  font-size:13.5px;font-weight:650;text-align:center;opacity:0;pointer-events:none;
  transform:translateX(-50%) translateY(20px);transition:all .25s ease;
}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- footer ---------- */
footer{margin-top:42px;padding:0 0 28px;text-align:center;font-size:12px;color:var(--ink-soft)}
.affiliate-notice{
  max-width:620px;margin:8px auto 0;padding-top:8px;
  border-top:1px solid var(--line);font-size:11px;line-height:1.55;
}

:focus-visible{outline:3px solid #2F6CC4;outline-offset:3px}

@media (min-width:720px){
  .wrap{padding:0 28px}
  header{padding-top:38px}
  .landing{padding-top:46px}
  .landing .big{font-size:26px}
  .picker h2{font-size:20px}
  a.tag{font-size:15px;padding-left:12px;padding-right:15px}
  .strip{padding:20px 22px}
  .item{padding:14px 16px}
  .plan-options{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:420px){
  .wrap{padding:0 14px}
  header{padding-top:22px}
  .brand h1,.brand .brand-t{font-size:24px}
  .change-dest{font-size:12px;padding-left:9px;padding-right:9px}
  .landing{padding-left:0;padding-right:0}
  .landing .big{font-size:20px}
  .hero-actions{display:grid}
  .hero-actions a{width:100%}
  .plan{padding-top:10px}
  .plan-step{padding:18px 14px}
  .date-grid{grid-template-columns:1fr}
  .item{grid-template-columns:30px minmax(0,1fr) auto;gap:9px;padding:12px 10px}
  .chk{width:30px;height:30px}
  .item-skip{padding-left:6px;padding-right:6px;font-size:10.5px}
  .actions{padding-left:14px;padding-right:14px}
  .btn-reset{padding-left:14px;padding-right:14px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
}

/* ---------- 실시간 라이브캠 ---------- */
.live-cam{
  display:flex;align-items:center;gap:12px;
  margin-top:14px;padding:13px 15px;
  background:var(--card);border:1px solid var(--line);border-radius:12px;
  text-decoration:none;color:var(--ink);
}
.live-cam b{font-size:14px;font-weight:750;display:block}
.live-cam small{font-size:12px;color:var(--ink-soft);display:block;margin-top:2px}
.webcam-intro,.webcam-coverage{font-size:13px;color:var(--ink-soft);line-height:1.65}
.webcam-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:12px 0}
.webcam-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);text-decoration:none;min-width:0}
.webcam-card:hover{border-color:var(--cta)}
.webcam-card b{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.webcam-card small{font-size:12px;color:var(--ink-soft)}
.webcam-type{font-size:10px;border:1px solid var(--line);border-radius:20px;padding:3px 7px;color:var(--ink-soft)}
.webcam-open{font-size:12px;color:var(--cta);margin-top:auto;padding-top:6px}
.webcam-note{font-size:11px;line-height:1.7;color:var(--ink-soft);margin-bottom:4px}
.webcam-date{font-size:10px;color:var(--ink-soft)}
.webcam-badge{display:inline-block;font-size:9px;line-height:1.5;color:var(--cta);text-decoration:none;margin-top:4px}
.hub-city-wrap{flex:0 0 72px;min-width:0}
.hub-city-wrap .hub-city{display:block}
.live-dot{
  flex:0 0 auto;width:9px;height:9px;border-radius:50%;
  background:#E5372B;box-shadow:0 0 0 3px rgba(229,55,43,.16);
}
@media (prefers-reduced-motion: no-preference){
  .live-dot{animation:livePulse 1.6s ease-in-out infinite}
  @keyframes livePulse{
    0%,100%{box-shadow:0 0 0 3px rgba(229,55,43,.16)}
    50%{box-shadow:0 0 0 6px rgba(229,55,43,.06)}
  }
}
.live-inline{
  display:inline-flex;align-items:center;gap:6px;
}
.live-inline .live-dot{width:7px;height:7px}

/* ---------- 여행지 검색 ---------- */
.search{margin-top:18px;text-align:left}
.search-row{display:flex;gap:8px}
.search-row input{
  flex:1;min-width:0;min-height:48px;padding:0 14px;
  border:1.5px solid var(--ink);border-radius:12px;background:#fff;
  font-size:16px;color:var(--ink);font-family:inherit;
}
.search-row input:focus{outline:none;box-shadow:0 0 0 3px var(--hl)}
.search-row select{
  flex:0 0 auto;min-height:48px;padding:0 10px;
  border:1.5px solid var(--line);border-radius:12px;background:#fff;
  font-size:16px;color:var(--ink);font-family:inherit;
}
.search-row button{
  flex:0 0 auto;min-height:48px;padding:0 18px;border:none;border-radius:12px;
  background:var(--ink);color:#fff;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;
}
.search-sugg{display:none;margin-top:6px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.search-sugg.open{display:block}
.search-sugg button{
  display:flex;justify-content:space-between;align-items:center;width:100%;
  padding:12px 14px;border:none;border-bottom:1px solid var(--line);background:#fff;
  font-family:inherit;font-size:15px;color:var(--ink);text-align:left;cursor:pointer;min-height:46px;
}
.search-sugg button:last-child{border-bottom:none}
.search-sugg button.hl{background:var(--hl)}
.search-sugg button span{font-size:12px;color:var(--ink-soft);font-family:'IBM Plex Mono',monospace}
.search-none{padding:12px 14px;font-size:13.5px;color:var(--ink-soft)}
.search-ex{margin-top:8px;font-size:12.5px;color:var(--ink-soft);display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.search-ex a{color:var(--ink);text-decoration:none;background:var(--tag-bg);padding:3px 9px;border-radius:20px;font-size:12.5px}
@media (max-width:400px){
  .search-row{flex-wrap:wrap}
  .search-row input{flex-basis:100%}
  .search-row select{flex:1}
}

/* ---------- 월별 날씨 ---------- */
.wx{margin-top:22px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 16px 12px}
.wx-head h2{font-size:17px;font-weight:800;letter-spacing:-.3px}
.wx-head p{font-size:12.5px;color:var(--ink-soft);margin-top:3px}
.wx-chips{
  display:flex;gap:6px;margin:12px -16px 0;padding:0 16px 8px;
  overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;
}
.wx-chips::-webkit-scrollbar{display:none}
.wx-chip{
  flex:0 0 auto;min-height:38px;padding:0 14px;border-radius:20px;
  border:1.5px solid var(--line);background:#fff;color:var(--ink);
  font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;position:relative;
}
.wx-chip::after{content:"";position:absolute;left:50%;bottom:4px;width:5px;height:5px;border-radius:50%;transform:translateX(-50%);opacity:.9}
.wx-chip[data-g="A"]::after{background:#3CB371}
.wx-chip[data-g="B"]::after{background:#8FCB4E}
.wx-chip[data-g="C"]::after{background:#E8B23A}
.wx-chip[data-g="D"]::after{background:#E5372B}
.wx-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.wx-panel{display:none;margin-top:12px}
.wx-panel.on{display:block}
.wx-panel h3{font-size:15px;font-weight:700}
.wx-grade{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;border-radius:20px;font-size:12.5px;font-weight:600;border:1px solid}
.wx-grade b{font-family:'IBM Plex Mono',monospace;letter-spacing:1px}
.wx-grade.gA{color:#1E7A45;background:#EAF6EE;border-color:#BFE3CC}
.wx-grade.gB{color:#4E7A1E;background:#F0F7E6;border-color:#D2E6B6}
.wx-grade.gC{color:#8A6112;background:#FBF3E0;border-color:#EEDBA6}
.wx-grade.gD{color:#A32E1F;background:#FBEDE8;border-color:#F0C2B8}
.wx-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.wx-stat{background:var(--paper);border-radius:10px;padding:10px 12px;min-width:0}
.wx-stat small{display:block;font-size:11px;color:var(--ink-soft);letter-spacing:.5px}
.wx-stat b{display:block;font-size:24px;font-weight:800;line-height:1.15;margin-top:2px;font-family:'IBM Plex Mono',monospace;letter-spacing:-.5px}
.wx-stat b i{font-style:normal;font-size:13px;font-weight:600;margin-left:2px;color:var(--ink-soft)}
.wx-stat b.wx-yrs{font-size:13px;font-weight:700;letter-spacing:0;margin-top:6px;white-space:normal;word-break:keep-all}
.wx-stat span{display:block;font-size:11.5px;color:var(--ink-soft);margin-top:3px}
.wx-advice{margin-top:12px;font-size:14px;line-height:1.65;word-break:keep-all}
.wx-extras-label{margin-top:12px;font-size:11.5px;color:var(--ink-soft);letter-spacing:.3px}
.wx-extras{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}
.wx-extra{
  display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:0 12px 0 9px;
  border:1.5px dashed #BDB5A4;border-radius:20px;background:#fff;
  font-family:inherit;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;
}
.wx-extra span{font-weight:800;color:var(--cta)}
.wx-extra.added{border-style:solid;border-color:var(--ink);background:var(--hl)}
.wx-extra.added span{color:var(--ink)}
.wx-extra.added span::before{content:"✓"}
.wx-extra.added span{font-size:0}
.wx-extra.added span::before{font-size:13px}
.wx-source{margin-top:12px;font-size:11px;color:var(--ink-soft)}

/* ---------- 날씨 전용 페이지 ---------- */
.crumb{font-size:12.5px;color:var(--ink-soft);margin-top:4px}
.crumb a{color:var(--ink-soft);text-decoration:none}
.wx-h1{font-size:26px;font-weight:800;letter-spacing:-.5px;margin-top:16px;word-break:keep-all}
.wx-sub{font-size:13.5px;color:var(--ink-soft);margin-top:4px;word-break:keep-all}
.wx-grade.big{margin-top:14px;font-size:14px;padding:6px 14px}
.wx-summary{margin-top:12px;font-size:15px;line-height:1.65;word-break:keep-all}
.cmp{margin-top:10px;padding:10px 14px;background:var(--hl);border-radius:10px;font-size:13.5px;line-height:1.5;word-break:keep-all}
.wx-block{margin-top:22px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px}
.wx-block h2{font-size:16px;font-weight:800;letter-spacing:-.3px}
.wx-block h2 + h2{margin-top:16px}
.wx-hint{font-size:12px;color:var(--ink-soft);margin-top:3px}
.wx-cta{
  display:block;margin-top:14px;padding:13px 16px;border-radius:12px;
  background:var(--ink);color:#fff;font-size:14.5px;font-weight:700;text-decoration:none;text-align:center;
}
.wx-more{display:inline-block;margin-top:12px;font-size:13px;font-weight:600;color:var(--cta);text-decoration:none}
.wx-extra.static{cursor:default;border-style:solid;border-color:var(--line)}
.wx-extra.static span{display:none}

/* 12개월 바 */
.mb{display:flex;align-items:flex-end;gap:4px;height:120px;margin-top:12px;padding-top:6px}
.mb-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;text-decoration:none;min-width:0}
.mb-bar{display:block;width:100%;border-radius:6px 6px 3px 3px;min-height:8px;transition:transform .12s}
.mb-col.on .mb-bar{outline:2px solid var(--ink);outline-offset:1px}
.mb-col:active .mb-bar{transform:scaleY(.96)}
.mb-m{font-size:11px;color:var(--ink-soft);margin-top:5px;font-family:'IBM Plex Mono',monospace}
.mb-col.on .mb-m{color:var(--ink);font-weight:700}
.mb-legend{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:11px;color:var(--ink-soft)}
.mb-legend i{flex:1;height:6px;border-radius:3px;background:linear-gradient(90deg,#BFD3F2,#D8EBD5,#F3E7A6,#F5C98B,#E88A72)}

/* 연도별 */
.yrs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.yr{background:var(--paper);border-radius:10px;padding:10px 12px}
.yr small{display:block;font-size:11px;color:var(--ink-soft)}
.yr b{display:block;font-size:22px;font-weight:800;font-family:'IBM Plex Mono',monospace;margin-top:2px}
.yr span{display:block;font-size:11.5px;color:var(--ink-soft);margin-top:2px}

/* 일별 달력 */
.dg-head{margin-top:16px}
.dg-head h3{font-size:14px;font-weight:700}
.dg-head p{font-size:11.5px;color:var(--ink-soft);margin-top:2px}
.dg{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:8px}
.dg-cell{border-radius:7px;padding:5px 3px 4px;text-align:center;min-height:52px;line-height:1.15}
.dg-cell small{display:block;font-size:9.5px;color:rgba(34,30,23,.55);font-family:'IBM Plex Mono',monospace;overflow-wrap:anywhere}
.dg-cell b{display:block;font-size:12.5px;font-weight:800;margin-top:1px}
.dg-cell span{display:block;font-size:10px;color:rgba(34,30,23,.6)}
.dg-cell em{display:inline-block;font-style:normal;font-size:9px;font-weight:700;color:#fff;background:#3B7DD8;border-radius:4px;padding:0 3px;margin-top:2px}

/* 링크 칩 */
.link-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.link-chips a{padding:6px 11px;border-radius:20px;background:var(--tag-bg);color:var(--ink);font-size:13px;font-weight:600;text-decoration:none;min-height:34px;display:inline-flex;align-items:center}
.link-chips a.on{background:var(--ink);color:#fff}
.link-chips.months a{min-width:44px;justify-content:center}

/* 허브 */
.hub{margin-top:18px;display:flex;flex-direction:column;gap:8px}
.hub-row{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.hub-city{flex:0 0 72px;text-decoration:none;color:var(--ink);min-width:0}
.hub-city b{display:block;font-size:14px}
.hub-city small{display:block;font-size:10.5px;color:var(--ink-soft)}
.hub-months{flex:1;display:grid;grid-template-columns:repeat(12,1fr);gap:3px}
.hub-m{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:5px;font-size:10px;font-weight:700;text-decoration:none;color:#222;font-family:'IBM Plex Mono',monospace}
.hub-m.gA{background:#BFE3CC}.hub-m.gB{background:#D9EDB8}.hub-m.gC{background:#F5E4A8}.hub-m.gD{background:#F3C3B8}

/* 광고, 위젯 */
.ad{margin-top:18px;min-height:100px}
.klook{overflow:hidden}
.klook ins{display:block;margin-top:10px}
.klook .klk-aff-widget{min-height:180px;text-decoration:none;max-width:100%}
.klook iframe{max-width:100%;border:0}
.klook .mrt-note{margin-top:14px}

/* Contextual CPA recommendations */
.partner-block{
  margin-top:22px;padding:18px;border:1px solid #E4C9B9;border-radius:16px;
  background:linear-gradient(135deg,#FFF8ED,#FFFDF8);box-shadow:0 8px 24px rgba(91,55,33,.06)
}
.partner-block h2{margin-top:4px;font-size:17px;line-height:1.35}
.partner-block p{margin-top:4px;color:var(--ink-soft);font-size:12.5px;line-height:1.55}
.partner-block small{display:block;margin-top:10px;color:var(--ink-soft);font-size:10.5px;line-height:1.5}
.partner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}
.partner-card{
  display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;
  padding:10px 12px;border-radius:10px;background:#fff;border:1px solid var(--line);
  color:var(--ink);font-size:12.5px;font-weight:750;line-height:1.35;text-decoration:none
}
.partner-card span{color:var(--cta);font-size:17px}
.partner-card:hover{border-color:var(--cta);background:var(--cta-soft)}

.header-actions{display:flex;align-items:center;gap:7px}
.lang-switch{
  display:inline-flex;align-items:center;min-height:38px;padding:7px 10px;border:1px solid var(--line);
  border-radius:9px;background:#fff;color:var(--ink);font-size:12px;font-weight:700;text-decoration:none
}
.empty-page{padding:72px 0;text-align:center}
.empty-page h1{margin-top:6px;font-size:26px}
.empty-page p:not(.eyebrow){margin:8px 0 24px;color:var(--ink-soft)}

@media (max-width:420px){
  .partner-grid{grid-template-columns:1fr}
  .header-actions{gap:4px}
  .lang-switch,.change-dest{font-size:11px;padding-left:7px;padding-right:7px}
}

.dest-h1{font-size:20px;font-weight:800;letter-spacing:-.4px;margin-top:14px;word-break:keep-all}
.foot-nav{margin-top:6px;font-size:12px}
.foot-nav a{color:var(--ink-soft);text-decoration:none;font-weight:600}

/* ---------- 허브 지역 그룹 ---------- */
.wx-h1 small{font-size:14px;font-weight:600;color:var(--ink-soft);margin-left:6px}
.hub-nav{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.hub-nav a{padding:6px 12px;border-radius:20px;background:var(--tag-bg);color:var(--ink);font-size:13px;font-weight:600;text-decoration:none;min-height:34px;display:inline-flex;align-items:center}
.hub-region{margin-top:22px}
.hub-region h2{font-size:16px;font-weight:800;margin-bottom:8px;scroll-margin-top:12px}
.hub-region h2 small{font-size:12px;font-weight:600;color:var(--ink-soft);margin-left:4px}
.hub-city b i{font-style:normal;font-size:11px;color:var(--cta);margin-left:2px}
.link-chips a.more{background:var(--ink);color:#fff}

.nf-en{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);text-align:left}
.nf-en h2{font-size:15px;font-weight:800}
.nf-en p{font-size:13px;color:var(--ink-soft);margin-top:4px}
.nf-en a{color:var(--ink);font-weight:600;font-size:13px}
/* Data tables remain readable on small screens. */
.comparison-scroll{overflow-x:auto;margin:20px 0}
.weather-comparison{width:100%;border-collapse:collapse;font-size:14px;text-align:left}
.weather-comparison caption{text-align:left;font-size:12px;color:#625e55;margin-bottom:10px}
.weather-comparison th,.weather-comparison td{padding:12px 8px;border-bottom:1px solid #ded9cf;white-space:nowrap}
.wx-editorial h3{font-size:18px;margin:24px 0 10px}
.wx-editorial p{line-height:1.8}
.season-months{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:16px 0}
.season-months a{display:block;padding:9px 12px;margin:6px 0;background:var(--paper);border:1px solid var(--line);border-radius:9px;text-decoration:none;color:var(--ink)}
.season-months small{float:right;color:var(--ink-soft);margin-left:8px}
@media(max-width:480px){.season-months{grid-template-columns:1fr}.season-months h3{margin-top:8px}}
.utility-h1{font-size:24px;line-height:1.4;margin-bottom:18px}
.current-weather{border:1px solid var(--line,#ddd);border-radius:16px;padding:20px;background:var(--paper,#fff)}
.current-weather-links{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}
.current-weather-links .wx-cta{margin:0}
.mountain-group{border-top:1px solid var(--line);padding:16px 0}
.mountain-group summary{cursor:pointer;font-weight:700;line-height:1.6}
.mountain-group .wx-block{margin-bottom:0}
.featured-affiliate{border:1px solid var(--line);border-radius:12px;padding:16px;margin:18px 0;background:var(--paper)}
.featured-affiliate h3{font-size:16px;margin:0 0 12px}
.featured-affiliate .mrt-note{margin:10px 0 0}
.weather-toc{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 28px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.weather-toc a{padding:9px 12px;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:13px;color:var(--ink);background:var(--card)}
.weather-toc a:hover{border-color:var(--cta);color:var(--cta)}
.wx-page [id^="wx-"]{scroll-margin-top:24px}
.weather-outfit{padding:0;list-style:none;display:grid;gap:10px;margin:20px 0}
.weather-outfit li{padding:14px;border:1px solid var(--line);border-radius:10px;display:grid;gap:7px;background:var(--paper)}
.weather-outfit span{font-size:14px;line-height:1.6}
.wx-stat .daylight-duration{font-size:20px;line-height:1.4}
.trip-search-frame{max-width:100%;overflow-x:auto;margin:18px 0}
.trip-search-frame iframe{display:block;width:min(320px,100%);height:320px;border:0;margin:0 auto;background:#fff}
.trip-search>p{line-height:1.6}
@media(max-width:420px){.trip-search{padding:16px 0}.trip-search>h2,.trip-search>p{padding:0 12px}}
.mrt-top-five{list-style:none;counter-reset:mrt;padding:0;display:grid;gap:10px;margin:16px 0}
.mrt-top-five li{counter-increment:mrt}
.mrt-top-five a{display:flex;gap:12px;align-items:center;border:1px solid var(--line);padding:16px;border-radius:12px;text-decoration:none;color:var(--ink);background:var(--paper)}
.mrt-top-five a:before{content:counter(mrt);font-weight:800;flex-shrink:0}
.mrt-top-five a span{flex:1;overflow-wrap:anywhere}
.mrt-top-five a b{font-size:12px;flex-shrink:0;color:var(--cta)}
.mrt-note{color:var(--ink-soft);font-size:12px}
.coupang-disclosure{font-size:13px;line-height:1.7;color:#625e55;margin:14px 0;padding:12px;background:#f5f3eb;border-radius:10px}
.solve.coupang-product{display:flex;flex-direction:column;align-items:flex-start;gap:5px;white-space:normal;line-height:1.6;padding:12px;margin-top:10px;border:1px solid #dbe3d9;border-radius:10px;background:#f5f8f2;text-decoration:none;color:#334d40;font-size:13px}
.solve.coupang-product::after{content:none}.packing-products{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.packing-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.packing-product-grid .solve{margin:0}
@media(max-width:480px){.packing-product-grid{grid-template-columns:1fr}}
/* Reading comfort and a user-controlled booking sheet. */
body[data-page="weather"] .wx-page{font-size:15px;line-height:1.75}
.wx-page .wx-block{margin-top:24px;padding:24px;border-radius:18px}
.wx-page .wx-block h2{font-size:20px;line-height:1.45;margin-bottom:12px}
.wx-page .wx-hint,.wx-page .wx-sub{line-height:1.65}
.weather-toc{position:sticky;top:0;z-index:20;flex-wrap:nowrap;overflow-x:auto;padding:10px;background:#faf8f3f5;backdrop-filter:blur(12px);border-radius:12px;scrollbar-width:thin}
.weather-toc a{white-space:nowrap;flex-shrink:0;min-height:44px;display:flex;align-items:center}
.weather-toc a[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}
.wx-page [id^="wx-"],#trip-search{scroll-margin-top:90px}
.has-travel-dock{padding-bottom:calc(90px + env(safe-area-inset-bottom))}
.travel-dock{position:fixed;z-index:40;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,700px);display:flex;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fffefaf5;border:1px solid var(--line);border-bottom:0;border-radius:20px 20px 0 0;box-shadow:0 -6px 28px #28231810;backdrop-filter:blur(12px)}
.travel-dock button,.travel-dock a,.travel-nudge-action,.travel-back{font:inherit;font-weight:700;font-size:14px;min-height:46px;padding:12px 16px;border-radius:12px;cursor:pointer;text-align:center;text-decoration:none;border:1px solid var(--line)}
.travel-open{flex:1;background:#285d50;color:white;border-color:#285d50!important}.travel-hotel{flex:1;background:#f5f4ec;color:var(--ink)}
.travel-dock-inline{position:static;transform:none;width:100%;margin:20px 0;border-radius:16px;border-bottom:1px solid var(--line);box-shadow:none}
.travel-sheet{position:fixed;inset:0;width:min(600px,calc(100% - 24px));max-height:85dvh;margin:auto;padding:28px;border:1px solid var(--line);border-radius:24px;background:#fffefa;color:var(--ink);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 24px 80px #0003}
.travel-sheet::backdrop{background:#17262088;backdrop-filter:blur(3px)}
.travel-sheet-open{overflow:hidden}
.travel-close{position:absolute;right:12px;top:10px;width:44px;height:44px;background:transparent;border:0;border-radius:50%;font-size:28px;cursor:pointer;color:var(--ink)}
.travel-label{display:block;color:#476658;font-size:12px;margin:4px 44px 12px 0}.travel-sheet h2{font-size:24px;line-height:1.4;padding-right:24px}.travel-intro{font-size:14px;line-height:1.7;margin:10px 0 20px;color:#625e55}
.travel-product-list{display:grid;gap:10px}.travel-product{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid #d9dfd7;border-radius:14px;color:var(--ink);background:#fff;text-decoration:none;font-size:15px;line-height:1.6}.travel-product b{font-size:13px;color:#285d50}.travel-product:hover{background:#eff5ed;border-color:#285d50}
.travel-disclosure{font-size:12px;line-height:1.7;color:#625e55;margin:18px 0 14px}.travel-back{width:100%;background:#f1efe8;color:var(--ink)}
.travel-nudge{position:fixed;z-index:41;bottom:calc(90px + env(safe-area-inset-bottom));right:max(16px,calc((100vw - 700px)/2));width:min(350px,calc(100% - 32px));padding:22px;background:#fffefa;border:1px solid #cbd7cc;border-radius:18px;box-shadow:0 12px 40px #17262020}
.travel-nudge[hidden]{display:none}.travel-nudge strong{display:block;padding-right:32px;font-size:16px}.travel-nudge p{font-size:14px;line-height:1.6;margin:10px 0 16px}.travel-nudge-action{background:#285d50;color:white;width:100%}
.travel-sheet :focus-visible,.travel-dock :focus-visible,.travel-nudge :focus-visible,.weather-toc a:focus-visible{outline:3px solid #b06927;outline-offset:3px}
@media(max-width:600px){.wx-page .wx-block{padding:20px 16px}.wx-page .wx-block h2{font-size:18px}.weather-toc{margin:16px -4px 22px}.travel-sheet{inset:auto 0 0;width:100%;max-height:88dvh;border-radius:24px 24px 0 0;padding:24px 20px calc(24px + env(safe-area-inset-bottom))}.wx-page .trip-search{padding-left:0;padding-right:0}.wx-page .trip-search>h2,.wx-page .trip-search>p{padding-left:16px;padding-right:16px}}
@media print{.travel-dock,.travel-nudge,.travel-sheet{display:none!important}.weather-toc{position:static}.has-travel-dock{padding-bottom:0}}
@media(max-width:480px){.mrt-top-five a{flex-wrap:wrap}.mrt-top-five a span{flex-basis:80%}.mrt-top-five a b{margin-left:22px}}
.food-entry-callout{margin:24px 0;padding:22px;border:1px solid #d9b977;border-radius:16px;background:#fff8e9}.food-entry-callout h2{font-size:19px;margin:8px 0 10px}.food-entry-callout p{font-size:14px;line-height:1.8;margin:0 0 14px}.food-entry-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;background:#315749;color:#fff;border-radius:10px;font-size:14px;line-height:1.7;text-decoration:none}
.food-entry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px;margin:20px 0}.food-entry-country,.food-entry-rule{padding:20px;background:#fff;border:1px solid #dedbcf;border-radius:14px}.food-entry-country{color:var(--ink);text-decoration:none}.food-entry-country>span{font-size:28px}.food-entry-country h2,.food-entry-rule h3{margin:10px 0;font-size:17px}.food-entry-country p,.food-entry-rule p{font-size:14px;line-height:1.8}.food-entry-country b{font-size:13px;color:#315749}.food-entry-country:hover{border-color:#315749}.food-entry-rule h3{color:#795621;font-size:14px}
.food-entry-lead{line-height:1.85}.food-entry-date,.food-entry-breadcrumb{font-size:13px;color:#666157;line-height:1.8}.food-entry-breadcrumb{margin:24px 0 16px}.food-entry-nav{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.food-entry-nav a{padding:10px 12px;border:1px solid #dedbcf;border-radius:8px;color:var(--ink);font-size:13px;text-decoration:none;min-height:44px}.food-entry-steps{padding-left:24px;line-height:1.9}.food-entry-steps li{padding:6px 0}.food-entry-faq{border-top:1px solid #dedbcf;padding:16px 0}.food-entry-faq summary{cursor:pointer;font-weight:650;line-height:1.8}.food-entry-faq p{margin:12px 0 0;font-size:15px;line-height:1.85}.food-entry-sources{display:grid;gap:10px}.food-entry-sources a{display:block;padding:12px;border:1px solid #dedbcf;border-radius:10px;color:#315749;font-size:14px;overflow-wrap:anywhere}.food-entry-page section{scroll-margin-top:24px}.food-entry-page a:focus-visible,.food-entry-faq summary:focus-visible{outline:3px solid #9d692a;outline-offset:3px}
@media(max-width:480px){.food-entry-callout{padding:18px}.food-entry-rule{padding:16px}.food-entry-rule h3{margin-top:0}.food-entry-rule p{margin-bottom:0}}
