:root{--access-free: #2aa693;--access-visa-free: #6cc04a;--access-online: #e2a93b;--access-visa: #d6766a;--access-unconfirmed: #8a7dc9;--access-none: #5d6a6c;--access-free-text: #1f8a7a;--access-visa-free-text: #4c9a2e;--access-online-text: #b07a12;--access-visa-text: #b8574a;--access-unconfirmed-text: #6a5cb8}:root[data-theme=dark]{--access-free: #3fbfa8;--access-visa-free: #8ad66a;--access-online: #f0b74a;--access-visa: #e08a7c;--access-unconfirmed: #a99df0;--access-none: #2f3a3c;--access-free-text: #3fbfa8;--access-visa-free-text: #8ad66a;--access-online-text: #f0b74a;--access-visa-text: #e08a7c;--access-unconfirmed-text: #a99df0}.passport-page{padding:28px 0 56px}.passport-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,4vw,64px);align-items:start}.passport-list{min-width:0}.passport-context{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0 0 8px;font-size:17px}.context-chip{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;min-height:40px}.context-chip svg{color:var(--interactive)}.context-chip:hover span:first-of-type{text-decoration:underline;text-underline-offset:4px}.context-divider{width:1px;height:28px;background:var(--line-strong)}.passport-page .flag{width:30px;height:22px;border-radius:3px;object-fit:cover;flex:none;box-shadow:0 0 0 1px #1018201f}.passport-page h1{margin:4px 0 22px;font-size:clamp(40px,5vw,76px);line-height:1.02;letter-spacing:-.05em;font-weight:500}.passport-page .change-search{margin:0 0 20px}.passport-page .change-search>summary{font-size:14px;color:var(--muted);min-height:40px;display:flex;align-items:center;gap:10px;cursor:pointer}.passport-page .change-search .requirement-finder{margin:8px 0 16px}.access-stats{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.access-stat a{display:flex;align-items:baseline;gap:8px;padding:16px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper-clear);color:var(--ink);text-decoration:none;min-height:64px}.access-stat a:hover{border-color:var(--line-strong)}.access-stat strong{font-size:26px;font-weight:600;letter-spacing:-.03em;line-height:1}.access-stat span{font-size:13px;color:var(--ink-soft)}.access-stat-free strong{color:var(--access-free-text)}.access-stat-visa-free strong{color:var(--access-visa-free-text)}.access-stat-online strong{color:var(--access-online-text)}.access-stat-visa strong{color:var(--access-visa-text)}.access-stat-unconfirmed strong{color:var(--access-unconfirmed-text)}.destination-filter{margin:0;max-width:none}.destination-filter .search-field{position:relative;display:flex;margin:0;align-items:center;gap:12px;padding:0 16px;min-height:56px;border:1px solid var(--line-strong);border-radius:10px;background:var(--paper-clear);color:var(--ink-soft)}.search-field input{flex:1;min-width:0;border:0;background:none;padding:14px 0;font-size:17px;color:var(--ink)}.search-field input:focus{outline:none}.search-field:focus-within{border-color:var(--interactive);outline:2px solid color-mix(in srgb,var(--interactive) 35%,transparent);outline-offset:1px}.search-field input::-webkit-search-cancel-button{-webkit-appearance:none}.search-field button{border:0;background:none;color:var(--interactive);min-width:36px;min-height:36px;cursor:pointer}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 0}.destination-filter .filter-select{display:inline-flex;margin:0;align-items:center;gap:10px;padding:0 12px 0 14px;min-height:42px;border:1px solid var(--line-strong);border-radius:999px;background:var(--paper-clear);color:var(--ink-soft)}.filter-select select{border:0;background:none;font:inherit;font-size:15px;color:var(--ink);padding-right:6px;min-height:40px}.filter-select:focus-within{border-color:var(--interactive)}.filter-count{margin:16px 0 4px;color:var(--muted);font-size:15px}.destination-changes{margin:8px 0;font-size:14px}.destination-changes summary{color:var(--threshold-text);cursor:pointer;min-height:40px;display:flex;align-items:center}.destination-changes ul{padding-left:1.2em;margin:6px 0 12px;color:var(--ink-soft)}.access-table{width:100%;border-collapse:collapse;margin:8px 0 0}.access-table thead th{text-align:left;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:10px 4px 12px;border-bottom:1px solid var(--line-strong)}.access-table tbody tr{position:relative}.access-table tbody th,.access-table tbody td{padding:10px 4px;border-bottom:1px solid var(--line);vertical-align:middle;font-weight:400;font-size:16px}.access-table tbody th{text-align:left}.access-table tbody th a{display:inline-flex;align-items:center;gap:14px;min-height:40px;color:var(--ink);text-decoration:none;font-weight:500}.access-table tbody th a:after{content:"";position:absolute;inset:0}.access-table tbody tr:hover th,.access-table tbody tr:hover td{background:color-mix(in srgb,var(--interactive) 6%,transparent)}.col-rule{white-space:nowrap}.access-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:10px;vertical-align:middle;background:var(--access-none)}.access-dot.access-free{background:var(--access-free)}.access-dot.access-visa-free{background:var(--access-visa-free)}.access-dot.access-online{background:var(--access-online)}.access-dot.access-visa{background:var(--access-visa)}.access-dot.access-unconfirmed{background:var(--access-unconfirmed)}.access-text-free{color:var(--access-free-text)}.access-text-visa-free{color:var(--access-visa-free-text)}.access-text-online{color:var(--access-online-text)}.access-text-visa{color:var(--access-visa-text)}.access-text-unconfirmed{color:var(--access-unconfirmed-text)}.access-ahead{display:block;margin-left:20px;font-size:12px;color:var(--threshold-text);white-space:normal}.col-stay{color:var(--ink-soft);white-space:nowrap}.col-open{width:24px;text-align:right;color:var(--ink-soft);font-size:20px}.passport-page .destination-empty{border:1px dashed var(--line);padding:32px 24px;border-radius:10px;margin:20px 0}.passport-page .scope-card{margin-top:32px;border-top:0}.passport-map{position:sticky;top:96px}.access-map{margin:0;padding:24px 24px 20px;border:1px solid var(--line);border-radius:14px;background:var(--paper-clear)}.access-map-head h2{margin:0 0 4px;font-size:20px;font-weight:500;letter-spacing:-.01em}.access-map-head p{margin:0 0 12px;color:var(--ink-soft);font-size:14px}.access-map-stage{position:relative;aspect-ratio:900 / 380;overflow:hidden;border-radius:8px;outline:none;touch-action:none}.access-map-stage:focus-visible{outline:2px solid var(--interactive)}.access-map-stage svg{display:block;width:100%;height:100%}.access-map-world path{fill:var(--access-none);stroke:var(--paper-clear);stroke-width:.4;transition:fill .15s ease}.access-map-world path.access-free{fill:var(--access-free)}.access-map-world path.access-visa-free{fill:var(--access-visa-free)}.access-map-world path.access-online{fill:var(--access-online)}.access-map-world path.access-visa{fill:var(--access-visa)}.access-map-world path.access-unconfirmed{fill:var(--access-unconfirmed)}.access-map-world path.access-home{fill:var(--presence-dark)}.access-map-world a:hover path,.access-map-world a:focus-visible path,.access-map-world path.access-focus{fill:var(--interactive);filter:brightness(1.15)}.access-map-world path[data-iso=AQ]{display:none}.access-map-world a{cursor:pointer;outline:none}.access-map-controls{position:absolute;bottom:8px;right:8px;display:grid;gap:4px}.access-map-controls button{width:36px;height:36px;border-radius:8px;border:1px solid var(--line-strong);background:var(--paper-clear);color:var(--ink);font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center}.access-map-controls button:hover{border-color:var(--interactive)}.access-map-tip{position:absolute;left:12px;bottom:10px;margin:0;padding:6px 10px;border-radius:6px;background:var(--ink);color:var(--paper-clear);font-size:13px;pointer-events:none}.access-map-legend{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;margin:16px 0 0;font-size:13px;color:var(--ink-soft)}.access-map-legend ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 20px}.access-map-legend li{display:inline-flex;align-items:center}.access-map-legend p{margin:0;display:inline-flex;gap:6px;align-items:flex-start;max-width:34ch;font-size:12px}.access-map-legend p svg{flex:none;margin-top:1px}@media(max-width:1400px){.access-stat a{padding:14px 10px;gap:6px}.access-stat strong{font-size:24px}.access-stat span{font-size:12px}}@media(max-width:1100px){.access-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.passport-layout{grid-template-columns:1fr}.passport-map{position:static;order:-1}.passport-page h1{font-size:40px}}@media(max-width:560px){.context-divider{display:none}.access-stats{gap:8px}.access-stat a{padding:12px 10px}.access-stat strong{font-size:22px}.col-stay,.access-table thead .col-stay{display:none}.access-map{padding:16px 12px 14px}.access-map-legend p{display:none}}
