.radio-card{border:2px solid var(--border);cursor:pointer;transition:background var(--transition),border-color var(--transition),box-shadow var(--transition);background:0 0;border-radius:10px;align-items:center;gap:10px;padding:14px 18px;display:flex}.radio-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent)6%,transparent)}.radio-card:focus-within{border-color:var(--accent);background:color-mix(in srgb,var(--accent)8%,transparent);box-shadow:0 0 0 1px var(--accent)}.radio-card--selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent)10%,transparent);box-shadow:0 0 0 1px var(--accent)}.radio-card__content{flex:1}.radio-card__label{font-weight:600}.radio-card__description{font-size:13px}.radio-card__label,.radio-card__description{color:var(--text-secondary)}.radio-card--selected .radio-card__label,.radio-card--selected .radio-card__description{color:var(--text-primary)}.radio-card-fieldset{border:none;margin:0;padding:0}.radio-card-legend{margin-bottom:12px;font-weight:600;display:block}.radio-card-group{flex-direction:column;gap:8px;display:flex}.radio-group{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}
.connectivity-layout{align-items:stretch;gap:1rem;display:flex}.connectivity-buttons{flex-direction:column;gap:.5rem;min-width:220px;display:flex}.connectivity-buttons .radio-card{align-items:center;gap:10px;width:100%;display:flex}.connectivity-detail{border:1px solid var(--border);background:color-mix(in srgb,var(--accent)4%,transparent);border-radius:10px;flex:1;justify-content:center;align-items:center;padding:1rem 1.25rem;display:flex}.connectivity-detail__inner{text-align:center;width:100%}.connectivity-detail__emoji{margin-bottom:.5rem;font-size:2rem;line-height:1}.connectivity-detail__label{color:var(--text-primary);margin-bottom:.25rem;font-size:1rem;font-weight:600}.connectivity-detail__desc{color:var(--text-secondary);font-size:.875rem}.connectivity-detail__placeholder{color:var(--text-secondary);text-align:center;font-size:.875rem}@media (max-width:560px){.connectivity-layout{flex-direction:column}.connectivity-buttons{min-width:unset;width:100%}.connectivity-detail{width:100%}}
.ranked-destination-picker{flex-direction:column;gap:1rem;display:flex}.ranked-destination-loading,.ranked-destination-error,.ranked-destination-empty{text-align:center;padding:2rem 1rem}.ranked-destination-results{flex-direction:column;gap:.5rem;max-height:480px;display:flex;overflow-y:auto}.ranked-destination-row{border:1px solid var(--border);background:var(--card-bg,var(--bg));border-radius:8px;flex-wrap:wrap;align-items:center;transition:border-color .15s;display:flex}.ranked-destination-row:hover{border-color:var(--accent)}.ranked-destination-row.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:color-mix(in srgb,var(--accent)8%,var(--card-bg,var(--bg)))}.ranked-destination-main{cursor:pointer;text-align:left;min-width:0;font:inherit;color:inherit;background:0 0;border:none;flex:1;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.ranked-destination-flag{flex-shrink:0;justify-content:center;align-items:center;width:2rem;font-size:1.4rem;line-height:1;display:flex}.ranked-destination-info{flex-direction:column;flex:1;min-width:0;display:flex}.ranked-destination-name{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.ranked-destination-country{font-size:.85rem}.ranked-destination-meta{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.ranked-destination-badge{background:var(--surface,#eee);white-space:nowrap;border-radius:4px;padding:.15rem .5rem;font-size:.75rem}.ranked-destination-tz{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.85rem}.ranked-destination-score{font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:600}.ranked-destination-expand{border:none;border-left:1px solid var(--border);cursor:pointer;color:var(--muted-fg,#666);background:0 0;flex-shrink:0;padding:.5rem .75rem;font-size:.75rem}.ranked-destination-main:focus-visible,.ranked-destination-expand:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ranked-destination-details{border-top:1px solid var(--border);width:100%;padding:.5rem 1rem .75rem}.ranked-destination-search{border-top:1px solid var(--border);flex-direction:column;gap:.25rem;padding-top:.75rem;display:flex}.ranked-destination-search-label{font-weight:500}.ranked-destination-search-hint{margin:0 0 .25rem;font-size:.85rem}.score-breakdown{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.25rem 1rem;margin:0;display:grid}.score-breakdown-entry{justify-content:space-between;font-size:.85rem;display:flex}.score-breakdown-entry dt{color:var(--muted-fg,#666)}.score-breakdown-entry dd{font-variant-numeric:tabular-nums;margin:0}@media (max-width:520px){.ranked-destination-main{flex-wrap:wrap;row-gap:.25rem}.ranked-destination-meta{flex:0 0 100%;justify-content:flex-start;padding-left:2.75rem}}
.compare-destinations-step,.compare-candidates,.compare-candidates__search,.compare-sections,.compare-section{flex-direction:column;display:flex}.compare-destinations-step{gap:1.5rem}.compare-candidates{gap:.75rem}.compare-candidates__search{gap:.25rem}.compare-candidates__list{gap:.5rem}.compare-sections{gap:1.25rem}.compare-section{gap:.4rem}.compare-candidates__search>label{font-weight:500}.compare-candidates__list{flex-wrap:wrap;align-items:flex-start;margin:0;padding:0;list-style:none;display:flex}.compare-candidates__chip{border:1px solid var(--border);background:var(--card-muted);border-radius:999px;align-items:center;gap:.35rem;max-width:100%;padding:.35rem .45rem .35rem .65rem;display:inline-flex}.compare-candidates__chip.invalid{border-color:var(--color-concern);flex-wrap:wrap}.compare-candidates__origin-note{color:var(--color-concern);flex-basis:100%;padding:0 .2rem .15rem;font-size:.75rem}.compare-candidates__flag{flex-shrink:0;font-size:1rem;line-height:1}.compare-candidates__name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.compare-candidates__remove{cursor:pointer;color:inherit;background:0 0;border:0;border-radius:999px;padding:.15rem .3rem;font-size:1rem;line-height:1}.compare-candidates__remove:focus-visible,.compare-sections__tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.compare-sections__status{min-height:2.4em;margin:0;font-size:.85rem}.compare-sections__tabs{border-bottom:1px solid var(--border);gap:.25rem;display:flex}.compare-sections__tabs button{appearance:none;color:var(--muted-fg);cursor:pointer;font:inherit;background:0 0;border:0;border-bottom:3px solid #0000;padding:.6rem .85rem .5rem;font-weight:600}.compare-sections__tabs button.active{border-bottom-color:var(--accent);color:var(--fg)}.compare-section{border:1px solid var(--border);border-radius:8px;padding:.85rem}.compare-section__meta,.compare-section__caveat{margin:0;font-size:.8rem}.compare-section__scroll{overflow-x:auto}.compare-table{border-collapse:collapse;width:100%;font-size:.85rem}.compare-table th,.compare-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;white-space:nowrap;padding:.4rem .6rem}.compare-table thead th{font-weight:600}.compare-table tbody th{color:var(--muted-fg,#666);font-weight:500}.compare-table td{font-variant-numeric:tabular-nums}.compare-table__unavailable,.compare-table__note{white-space:normal;max-width:12rem;font-size:.75rem;font-weight:400;display:block}.compare-section__meta{min-height:1.2em}.compare-destinations__navigation{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.compare-destinations__choices{flex-direction:column;align-items:flex-end;gap:.6rem;margin-left:auto;display:flex}.compare-destinations__choices h3{margin:0;font-size:1rem}.compare-destinations__choice-buttons{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}@media (max-width:640px){.compare-destinations__navigation{flex-direction:column-reverse;align-items:stretch}.compare-destinations__choices{align-items:stretch;margin-left:0}.compare-destinations__choice-buttons{flex-direction:column}.compare-destinations__choice-buttons .btn{width:100%}}
