/* /Components/Countries/CountrySheet.razor.rz.scp.css */
.country-sheet-meta[b-gb517e8vmn] {
    margin: 0 0 16px;
    color: var(--ink-2);
}

.country-sheet-status[b-gb517e8vmn] {
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    gap: 4px;
}

.country-sheet-note[b-gb517e8vmn] {
    margin: 12px 0 0;
    color: var(--ink-2);
    font-size: 14px;
}

.country-sheet-log[b-gb517e8vmn] {
    width: 100%;
    margin-top: 20px;
}
/* /Components/Countries/CountryTripsSection.razor.rz.scp.css */
.country-trips[b-g1iyse2p7a] {
    margin-top: 24px;
}

.country-trips-title[b-g1iyse2p7a] {
    margin: 0 0 8px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink-2);
}

.country-trips-cities[b-g1iyse2p7a],
.country-trips-rows[b-g1iyse2p7a] {
    margin: 0 0 16px;
    padding: 0;
    list-style: none;
}

.country-trips-cities[b-g1iyse2p7a] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.country-trips-empty[b-g1iyse2p7a] {
    margin: 0;
    color: var(--ink-2);
}
/* /Components/Countries/FindCountrySheet.razor.rz.scp.css */
.find-country-label[b-m54nlx0rx1] {
    display: block;
    margin-bottom: 6px;
    color: var(--ink-2);
    font-size: 14px;
}

.find-country-list[b-m54nlx0rx1] {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.find-country-row[b-m54nlx0rx1] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    min-height: 44px;
    padding: 8px 4px;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: transparent;
    color: var(--ink);
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.find-country-meta[b-m54nlx0rx1] {
    color: var(--ink-2);
    font-size: 13px;
}

.find-country-empty[b-m54nlx0rx1] {
    margin: 16px 0 0;
    color: var(--ink-2);
}
/* /Components/Home/CountryList.razor.rz.scp.css */
.country-empty[b-dv29qp8j9u] {
    margin: 0;
    padding: 24px 0;
    color: var(--ink-2);
    text-align: center;
}

.country-group-heading[b-dv29qp8j9u] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin: 20px 0 4px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink-2);
}

.country-rows[b-dv29qp8j9u] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.country-row[b-dv29qp8j9u] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 44px;
    padding: 0 4px;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: transparent;
    color: var(--ink);
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.country-row:focus-visible[b-dv29qp8j9u] {
    outline: 2px solid var(--ink);
    outline-offset: -2px;
}

.country-pill[b-dv29qp8j9u] {
    padding: 2px 10px;
    border-radius: 999px;
    background: var(--lived);
    color: var(--on-accent);
    font-size: 12px;
    font-weight: 600;
}
/* /Components/Home/NextDepartures.razor.rz.scp.css */
.next-departures[b-y8a4214srm] {
    margin-top: 24px;
}

.next-departures-title[b-y8a4214srm] {
    margin: 0 0 4px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink-2);
}

.departure-rows[b-y8a4214srm] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.departure-row[b-y8a4214srm] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 56px;
    padding: 0 4px;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: transparent;
    color: var(--ink);
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.departure-row:focus-visible[b-y8a4214srm] {
    outline: 2px solid var(--ink);
    outline-offset: -2px;
}

.departure-text[b-y8a4214srm] {
    display: flex;
    flex: 1;
    flex-direction: column;
}

.departure-continent[b-y8a4214srm] {
    font-size: 13px;
    color: var(--ink-2);
}

.departure-code[b-y8a4214srm] {
    font-family: var(--font-mono);
    font-size: 13px;
    color: var(--ink-2);
}
/* /Components/Home/SplitFlapStrip.razor.rz.scp.css */
/* The strip is always dark in both modes; these literal colours are the look.md exception. */
.flap[b-00dxfuqpb1] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin: 0;
    padding: 14px 16px;
    border-radius: var(--radius-card);
    --flap-ground: #111111;
    --flap-tile: #1d1d1d;
    --flap-digit: #f3f3ef;
    --flap-lit: #f2a900;
    --flap-label: #b7b7b2;
    --flap-line: #000000;
    background: var(--flap-ground);
}

.flap-counter[b-00dxfuqpb1] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}

.flap-counter dt[b-00dxfuqpb1] {
    color: var(--flap-label);
    font-size: 12px;
    font-weight: 600;
}

.flap-counter dd[b-00dxfuqpb1] {
    position: relative;
    display: flex;
    gap: 3px;
    margin: 0;
}

.flap-number[b-00dxfuqpb1] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}

.flap-tile[b-00dxfuqpb1] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 32px;
    border-radius: 3px;
    background: var(--flap-tile);
    color: var(--flap-digit);
    font-family: var(--font-mono);
    font-size: 20px;
    font-variant-numeric: tabular-nums;
}

.flap-tile[b-00dxfuqpb1]::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: calc(50% - 1px);
    height: 2px;
    background: var(--flap-line);
}

.flap-counter.is-lit .flap-tile[b-00dxfuqpb1] {
    color: var(--flap-lit);
}
/* /Components/Layout/AuthLayout.razor.rz.scp.css */
.auth[b-rik49j37co] {
    max-width: 480px;
    min-height: 100dvh;
    margin: 0 auto;
    padding: 24px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.auth-wordmark[b-rik49j37co] {
    margin: 0 0 24px;
    font-weight: 700;
    font-size: 1.5rem;
}

.auth-body[b-rik49j37co] {
    width: 100%;
    text-align: center;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.app[b-ijvojfoun7] {
    max-width: var(--column-max);
    min-height: 100dvh;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}

.app-main[b-ijvojfoun7] {
    flex: 1;
    padding: 0 var(--gutter) calc(var(--tab-bar-height) + var(--safe-bottom) + 16px);
}

.app-error[b-ijvojfoun7] {
    padding: 32px 0;
    text-align: center;
}
/* /Components/Layout/Sheet.razor.rz.scp.css */
.sheet[b-3anixzondk] {
    position: fixed;
    inset: 0;
    z-index: 40;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}

.sheet-scrim[b-3anixzondk] {
    position: absolute;
    inset: 0;
    background: color-mix(in srgb, var(--ink) 40%, transparent);
}

.sheet-panel[b-3anixzondk] {
    position: relative;
    width: 100%;
    max-width: var(--column-max);
    max-height: 88dvh;
    display: flex;
    flex-direction: column;
    padding: 8px var(--gutter) calc(16px + var(--safe-bottom));
    border-radius: var(--radius-sheet) var(--radius-sheet) 0 0;
    background: var(--surface);
    color: var(--ink);
    box-shadow: 0 -4px 24px color-mix(in srgb, var(--ink) 20%, transparent);
    animation: sheet-rise-b-3anixzondk 0.2s ease-out;
}

.sheet-handle[b-3anixzondk] {
    align-self: center;
    width: 40px;
    height: 4px;
    margin-bottom: 8px;
    border-radius: 2px;
    background: var(--line);
}

.sheet-header[b-3anixzondk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.sheet-title[b-3anixzondk] {
    margin: 0;
    font-size: 1.125rem;
}

.sheet-close[b-3anixzondk] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    border: 0;
    background: none;
    color: var(--ink);
}

.sheet-body[b-3anixzondk] {
    overflow-y: auto;
}

@keyframes sheet-rise-b-3anixzondk {
    from {
        transform: translateY(100%);
    }

    to {
        transform: translateY(0);
    }
}
/* /Components/Layout/TabBar.razor.rz.scp.css */
.tab-bar[b-b33rfcx9eg] {
    position: fixed;
    bottom: 0;
    left: 50%;
    z-index: 20;
    transform: translateX(-50%);
    width: 100%;
    max-width: var(--column-max);
    height: calc(var(--tab-bar-height) + var(--safe-bottom));
    padding: 0 var(--safe-right) var(--safe-bottom) var(--safe-left);
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    align-items: center;
    border-top: 1px solid var(--line);
    background: var(--surface);
}

.tab[b-b33rfcx9eg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    min-height: 44px;
    color: var(--ink-2);
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
}

.tab[aria-current="page"][b-b33rfcx9eg] {
    color: var(--ink);
}
/* /Components/Map/MapLegend.razor.rz.scp.css */
.map-legend[b-63nmro8had] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.map-legend li[b-63nmro8had] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.map-legend-swatch[b-63nmro8had] {
    width: 16px;
    height: 16px;
    border-radius: 4px;
    border: 1px solid var(--land-edge);
    background: var(--land);
}

.map-legend-swatch.is-been[b-63nmro8had] {
    background: var(--been);
    border-color: var(--been);
}

.map-legend-swatch.is-lived[b-63nmro8had] {
    background: var(--lived);
    border-color: var(--lived);
}

.map-legend-swatch.is-want[b-63nmro8had] {
    background: var(--want-fill);
    border-color: var(--want);
}
/* /Components/Map/WorldMap.razor.rz.scp.css */
.world-map[b-xlijbio0yn] {
    position: relative;
    width: 100%;
    aspect-ratio: 1000 / 520;
    overflow: hidden;
    border-radius: 12px;
    background: var(--sea);
}

.world-map[b-xlijbio0yn]  svg {
    display: block;
    width: 100%;
    height: 100%;
    touch-action: none;
    user-select: none;
}

.world-map[b-xlijbio0yn]  .wg-sea {
    fill: var(--sea);
}

.world-map[b-xlijbio0yn]  .wg-c {
    fill: var(--land);
    fill-rule: evenodd;
    stroke: var(--land-edge);
    stroke-width: 0.6;
    vector-effect: non-scaling-stroke;
}

.world-map[b-xlijbio0yn]  .wg-c.is-been {
    fill: var(--been);
}

.world-map[b-xlijbio0yn]  .wg-c.is-lived {
    fill: var(--lived);
}

.world-map[b-xlijbio0yn]  .wg-c.is-want {
    fill: var(--want-fill);
    stroke: var(--want);
}

.world-map[b-xlijbio0yn]  .wg-route {
    fill: none;
    stroke: var(--route);
    stroke-width: 2;
    vector-effect: non-scaling-stroke;
}

.world-map[b-xlijbio0yn]  .wg-stop {
    fill: var(--route);
}

.world-map[b-xlijbio0yn]  [role="button"]:focus-visible {
    outline: 2px solid var(--route);
    outline-offset: 1px;
}

.world-map[b-xlijbio0yn]  .wg-dot-mark {
    fill: var(--land);
    stroke: var(--land-edge);
    stroke-width: 0.6;
    vector-effect: non-scaling-stroke;
}

.world-map[b-xlijbio0yn]  .wg-dot.is-been .wg-dot-mark {
    fill: var(--been);
}

.world-map[b-xlijbio0yn]  .wg-dot.is-lived .wg-dot-mark {
    fill: var(--lived);
}

.world-map[b-xlijbio0yn]  .wg-dot.is-want .wg-dot-mark {
    fill: var(--want-fill);
    stroke: var(--want);
}
/* /Components/Pages/Account/ConfirmEmail.razor.rz.scp.css */
.confirm-title[b-11rgjheaxb] {
    margin: 0 0 12px;
    font-size: 1.25rem;
}

.confirm-notice[b-11rgjheaxb] {
    margin: 0 0 12px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: var(--radius-control);
    background: var(--surface-2);
}

.confirm-links a[b-11rgjheaxb] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}
/* /Components/Pages/Account/ConfirmEmailChange.razor.rz.scp.css */
.confirm-title[b-73ykjwb19g] {
    margin: 0 0 12px;
    font-size: 1.25rem;
}

.confirm-notice[b-73ykjwb19g] {
    margin: 0 0 12px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: var(--radius-control);
    background: var(--surface-2);
}

.confirm-links a[b-73ykjwb19g] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}
/* /Components/Pages/Account/ForgotPassword.razor.rz.scp.css */
.forgot-title[b-viiyd6qpte] {
    margin: 0 0 12px;
    font-size: 1.25rem;
}

.forgot-form[b-viiyd6qpte] {
    margin: 16px 0 0;
    text-align: start;
}

.forgot-field[b-viiyd6qpte] {
    margin-bottom: 14px;
}

.forgot-submit[b-viiyd6qpte] {
    width: 100%;
}

.forgot-notice[b-viiyd6qpte] {
    margin: 0 0 12px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: var(--radius-control);
    background: var(--surface-2);
}

.forgot-links[b-viiyd6qpte] {
    margin: 20px 0 12px;
}

.forgot-links a[b-viiyd6qpte] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}
/* /Components/Pages/Account/Join.razor.rz.scp.css */
.join-title[b-ltr61yg917] {
    margin: 0 0 12px;
    font-size: 1.25rem;
}

.join-form[b-ltr61yg917] {
    margin: 16px 0 0;
    text-align: start;
}

.join-field[b-ltr61yg917] {
    margin-bottom: 14px;
}

.join-hint[b-ltr61yg917] {
    margin: 6px 0 0;
    color: var(--ink-2);
    font-size: 0.875rem;
}

.join-submit[b-ltr61yg917] {
    width: 100%;
}

.join-error[b-ltr61yg917] {
    margin: 0 0 12px;
    color: var(--danger);
    font-weight: 600;
}

.join-notice[b-ltr61yg917] {
    margin: 0 0 12px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: var(--radius-control);
    background: var(--surface-2);
}

.join-links[b-ltr61yg917] {
    margin: 20px 0 12px;
}

.join-links a[b-ltr61yg917] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}
/* /Components/Pages/Account/ResetPassword.razor.rz.scp.css */
.reset-title[b-colvtgqolz] {
    margin: 0 0 12px;
    font-size: 1.25rem;
}

.reset-form[b-colvtgqolz] {
    margin: 16px 0 0;
    text-align: start;
}

.reset-field[b-colvtgqolz] {
    margin-bottom: 14px;
}

.reset-submit[b-colvtgqolz] {
    width: 100%;
}

.reset-error[b-colvtgqolz] {
    margin: 0 0 12px;
    color: var(--danger);
    font-weight: 600;
}

.reset-links[b-colvtgqolz] {
    margin: 20px 0 12px;
}

.reset-links a[b-colvtgqolz] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}
/* /Components/Pages/Account/SignIn.razor.rz.scp.css */
.signin-title[b-ud2vcaum1f] {
    margin: 0 0 12px;
    font-size: 1.25rem;
}

.signin-note[b-ud2vcaum1f] {
    margin: 0;
}

.signin-form[b-ud2vcaum1f] {
    margin: 16px 0 0;
    text-align: start;
}

.signin-field[b-ud2vcaum1f] {
    margin-bottom: 14px;
}

.signin-submit[b-ud2vcaum1f] {
    width: 100%;
}

.signin-error[b-ud2vcaum1f] {
    margin: 0 0 12px;
    color: var(--danger);
    font-weight: 600;
}

.signin-notice[b-ud2vcaum1f] {
    margin: 0 0 12px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: var(--radius-control);
    background: var(--surface-2);
}

.signin-links[b-ud2vcaum1f] {
    margin: 20px 0 12px;
}

.signin-links a[b-ud2vcaum1f] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}
/* /Components/Pages/Error.razor.rz.scp.css */
.error-title[b-70qcv0kbn9] {
    margin: 0 0 12px;
    font-size: 1.25rem;
}

.error-note[b-70qcv0kbn9] {
    margin: 0 0 16px;
}

.error-link[b-70qcv0kbn9] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    min-width: 44px;
}
/* /Components/Pages/FullMap.razor.rz.scp.css */
.full-map[b-7ybker6v4m] {
    position: relative;
    height: calc(100dvh - var(--tab-bar-height) - env(safe-area-inset-bottom));
    margin: 0 calc(-1 * var(--gutter)) calc(-1 * (var(--tab-bar-height) + var(--safe-bottom) + 16px));
    overflow: hidden;
}

.full-map[b-7ybker6v4m]  .full-map-world {
    height: 100%;
    aspect-ratio: auto;
    border-radius: 0;
}

.full-map-legend[b-7ybker6v4m] {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 8px 12px;
    border-radius: 12px;
    background: var(--surface);
}
/* /Components/Pages/Home.razor.rz.scp.css */
.home-bar[b-n8o80hr400] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 64px;
}

.home-wordmark[b-n8o80hr400] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
}

.home-actions[b-n8o80hr400] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.home-find[b-n8o80hr400],
.home-profile[b-n8o80hr400] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    font: inherit;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.home-find[b-n8o80hr400] {
    background: var(--surface-2);
    color: var(--ink);
}

.home-profile[b-n8o80hr400] {
    background: var(--been);
    color: var(--surface);
}

.home-find:focus-visible[b-n8o80hr400],
.home-profile:focus-visible[b-n8o80hr400] {
    outline: 2px solid var(--ink);
    outline-offset: 2px;
}

.home-switch[b-n8o80hr400] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

/* Text sits 20px from the sides; the map and the strip sit 12px. */
.home-strip[b-n8o80hr400],
.home-map-host[b-n8o80hr400] {
    margin: 0 -8px;
}

.home-strip[b-n8o80hr400] {
    margin-top: 12px;
}

.home-map-host[b-n8o80hr400]  .home-map {
    height: 250px;
    aspect-ratio: auto;
}

.home-count[b-n8o80hr400] {
    margin: 12px 0 0;
    color: var(--ink-2);
    font-size: 14px;
}

.home-start[b-n8o80hr400] {
    margin: 8px 0 0;
    color: var(--ink);
}

.home-passport[b-n8o80hr400] {
    margin-top: 24px;
}
/* /Components/Pages/NotFound.razor.rz.scp.css */
.notfound-title[b-iz4uyes6xp] {
    margin: 0 0 16px;
    font-size: 1.25rem;
}

.notfound-link[b-iz4uyes6xp] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    min-width: 44px;
}
/* /Components/Pages/Passport.razor.rz.scp.css */
/* The passport keeps its own colours in both modes (look.md). StampGrid reads them by inheritance. */
.passport-page[b-7mnuayy4rm] {
    --pp-cover: #5e1a26;
    --pp-gold: #f1d58a;
    --pp-pages: #edf1ec;
    --pp-been: #23408e;
    --pp-lived: #9b1c2e;
    --pp-slot: #6c746e;
    --pp-border: 2.5px;
    display: grid;
    gap: 16px;
    padding: 12px;
    border-radius: var(--radius-card);
    background: var(--pp-pages);
    color: var(--pp-been);
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .passport-page[b-7mnuayy4rm] {
        --pp-cover: #4a1420;
        --pp-pages: #121513;
        --pp-been: #8ea6ee;
        --pp-lived: #ee8191;
    }
}

:root[data-theme="dark"] .passport-page[b-7mnuayy4rm] {
    --pp-cover: #4a1420;
    --pp-pages: #121513;
    --pp-been: #8ea6ee;
    --pp-lived: #ee8191;
}

.passport-cover[b-7mnuayy4rm] {
    padding: 24px 20px;
    border-radius: 12px;
    background: var(--pp-cover);
    color: var(--pp-gold);
    text-align: center;
}

.passport-title[b-7mnuayy4rm] {
    margin: 0;
    font-family: var(--font-passport);
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.passport-name[b-7mnuayy4rm] {
    margin: 8px 0 0;
    font-family: var(--font-passport);
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.passport-fields[b-7mnuayy4rm] {
    display: flex;
    justify-content: center;
    gap: 24px;
    margin: 20px 0 0;
}

.passport-field[b-7mnuayy4rm] {
    display: grid;
    gap: 2px;
}

.passport-field dt[b-7mnuayy4rm] {
    font-family: var(--font-passport);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.passport-field dd[b-7mnuayy4rm] {
    margin: 0;
    font-family: var(--font-passport);
    font-size: 26px;
    font-weight: 800;
}

.passport-heading[b-7mnuayy4rm] {
    margin: 0 0 8px;
    font-family: var(--font-passport);
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.passport-map-card[b-7mnuayy4rm] {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 56px;
    padding: 0 16px;
    border-radius: 12px;
    background: var(--pp-cover);
    color: var(--pp-gold);
    font-family: var(--font-passport);
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-decoration: none;
    text-transform: uppercase;
}

.passport-map-card:focus-visible[b-7mnuayy4rm] {
    outline: 2px solid var(--pp-been);
    outline-offset: 2px;
}
/* /Components/Pages/Settings/AdminSettings.razor.rz.scp.css */
.admin-title[b-f6m7xyovk2] {
    margin: 20px 0;
    font-size: 1.5rem;
}

.admin-section[b-f6m7xyovk2] {
    margin-bottom: 28px;
}

.admin-create[b-f6m7xyovk2] {
    margin-bottom: 16px;
}

.admin-create-button[b-f6m7xyovk2] {
    margin-top: 12px;
}

.admin-error[b-f6m7xyovk2] {
    margin: 8px 0 0;
    color: var(--danger);
    font-weight: 600;
}

.admin-link-box[b-f6m7xyovk2] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 16px;
    padding: 12px 16px;
    border-radius: var(--radius-card);
    background: var(--surface);
}

.admin-link[b-f6m7xyovk2] {
    margin: 0;
    overflow-wrap: anywhere;
    user-select: all;
    font-size: 0.875rem;
}

.admin-note[b-f6m7xyovk2] {
    margin: 0;
    color: var(--ink-2);
    font-size: 0.875rem;
}

.admin-row[b-f6m7xyovk2] {
    flex-wrap: wrap;
}

.admin-row-main[b-f6m7xyovk2] {
    display: flex;
    flex: 1 1 12rem;
    flex-direction: column;
    min-width: 0;
}

.admin-row-title[b-f6m7xyovk2] {
    overflow-wrap: anywhere;
    font-weight: 600;
}

.admin-row-sub[b-f6m7xyovk2] {
    color: var(--ink-2);
    font-size: 0.8125rem;
}
/* /Components/Pages/Settings/SettingsHome.razor.rz.scp.css */
.settings-title[b-0gqrgc9lu0] {
    margin: 20px 20px;
    font-size: 1.5rem;
}

.settings-signout[b-0gqrgc9lu0] {
    margin-top: 12px;
}

.settings-note[b-0gqrgc9lu0] {
    margin: 8px 0 0;
    color: var(--ink-2);
    font-size: 13px;
}

section[b-0gqrgc9lu0] {
    margin: 0 20px 24px;
}

.settings-form[b-0gqrgc9lu0],
.settings-row-text[b-0gqrgc9lu0],
.settings-field[b-0gqrgc9lu0] {
    min-width: 0;
}

.settings-field[b-0gqrgc9lu0] {
    margin-bottom: 16px;
}

.settings-email[b-0gqrgc9lu0],
.settings-row-text[b-0gqrgc9lu0] {
    overflow-wrap: anywhere;
}

.settings-email[b-0gqrgc9lu0] {
    margin: 0;
}

.settings-row[b-0gqrgc9lu0] {
    justify-content: space-between;
    flex-wrap: wrap;
}

.settings-row-text[b-0gqrgc9lu0] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.settings-row-label[b-0gqrgc9lu0] {
    overflow-wrap: anywhere;
}

.settings-error[b-0gqrgc9lu0] {
    margin: 6px 0 0;
    color: var(--danger);
    font-size: 13px;
}

.settings-saved[b-0gqrgc9lu0] {
    margin: 12px 0 0;
    color: var(--ink-2);
    font-size: 13px;
}

.settings-danger[b-0gqrgc9lu0] {
    color: var(--danger);
}

.settings-version[b-0gqrgc9lu0] {
    margin: 0 20px 24px;
    color: var(--ink-2);
    font-size: 13px;
}

.confirm-inline[b-0gqrgc9lu0] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
}

.confirm-inline-message[b-0gqrgc9lu0] {
    margin: 0;
}

.confirm-inline-actions[b-0gqrgc9lu0] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.confirm-inline-actions .btn[b-0gqrgc9lu0] {
    min-height: 44px;
    min-width: 44px;
}

.settings-name[b-0gqrgc9lu0] {
    resize: none;
    font-family: inherit;
    line-height: 1.4;
}
/* /Components/Pages/Settings/ThemeSettings.razor.rz.scp.css */
.theme-back[b-swxq4p1ggv] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--ink-2);
    text-decoration: none;
}

.theme-title[b-swxq4p1ggv] {
    margin: 8px 0 20px;
    font-size: 1.625rem;
    font-weight: 700;
}

.theme-error[b-swxq4p1ggv] {
    margin: 0 0 16px;
    color: var(--danger);
    font-weight: 600;
}

.theme-section[b-swxq4p1ggv] {
    margin-bottom: 28px;
}

.theme-modes[b-swxq4p1ggv] {
    display: inline-flex;
    padding: 4px;
    border-radius: 999px;
    background: var(--surface-2);
}

.theme-mode[b-swxq4p1ggv] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 16px;
    border-radius: 999px;
    color: var(--ink-2);
    font-weight: 600;
}

.theme-mode input[b-swxq4p1ggv] {
    position: absolute;
    inset: 0;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

.theme-mode:has(input:checked)[b-swxq4p1ggv] {
    background: var(--surface);
    color: var(--ink);
}

.theme-mode:has(input:focus-visible)[b-swxq4p1ggv],
.theme-background:has(input:focus-visible)[b-swxq4p1ggv] {
    outline: 2px solid var(--accent);
    outline-offset: 2px;
}

.theme-preset-grid[b-swxq4p1ggv] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.theme-preset[b-swxq4p1ggv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    min-height: 64px;
    padding: 10px 8px;
    border: 2px solid transparent;
    border-radius: var(--radius-card);
    background: var(--surface);
    color: var(--ink);
    font: inherit;
    cursor: pointer;
}

.theme-preset[aria-pressed="true"][b-swxq4p1ggv] {
    border-color: var(--accent);
}

.theme-dots[b-swxq4p1ggv] {
    display: inline-flex;
    gap: 4px;
}

.theme-dots i[b-swxq4p1ggv] {
    width: 16px;
    height: 16px;
    border-radius: 50%;
}

.theme-dots .is-been[b-swxq4p1ggv] {
    background: var(--dot-been);
}

.theme-dots .is-lived[b-swxq4p1ggv] {
    background: var(--dot-lived);
}

.theme-dots .is-want[b-swxq4p1ggv] {
    background: var(--dot-want);
}

.theme-preset-name[b-swxq4p1ggv] {
    font-size: 14px;
    font-weight: 500;
}

.theme-pickers[b-swxq4p1ggv] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.theme-picker[b-swxq4p1ggv] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 14px;
    font-weight: 500;
}

.theme-picker input[b-swxq4p1ggv] {
    width: 100%;
    min-height: 44px;
    padding: 2px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--surface);
    cursor: pointer;
}

.theme-warning[b-swxq4p1ggv] {
    margin: 12px 0 0;
    color: var(--danger);
    font-size: 14px;
    font-weight: 600;
}

.theme-save[b-swxq4p1ggv] {
    margin-top: 12px;
}

.theme-backgrounds[b-swxq4p1ggv] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.theme-background[b-swxq4p1ggv] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    min-width: 64px;
    min-height: 44px;
    padding: 8px;
    border-radius: var(--radius-card);
    font-size: 14px;
}

.theme-background input[b-swxq4p1ggv] {
    position: absolute;
    inset: 0;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

.theme-background:has(input:checked)[b-swxq4p1ggv] {
    background: var(--surface);
    box-shadow: inset 0 0 0 2px var(--accent);
}

.theme-swatch[b-swxq4p1ggv] {
    width: 44px;
    height: 28px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: linear-gradient(135deg, var(--swatch-light) 50%, var(--swatch-dark) 50%);
}

.theme-preview[b-swxq4p1ggv] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.theme-reset[b-swxq4p1ggv] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    height: auto;
    padding-block: 10px;
}

.theme-reset-note[b-swxq4p1ggv] {
    color: var(--ink-2);
    font-size: 13px;
    font-weight: 400;
}
/* /Components/Pages/Stats.razor.rz.scp.css */
.stats-title[b-j7n5irlcea] {
    display: flex;
    align-items: center;
    min-height: 64px;
    margin: 0;
    font-size: 20px;
    font-weight: 700;
}

.stats-count[b-j7n5irlcea] {
    margin: 20px 0 0;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
}

.stats-line[b-j7n5irlcea] {
    margin: 4px 0 0;
    color: var(--ink-2);
    font-size: 14px;
}

.stats-figures[b-j7n5irlcea] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin: 20px 0 0;
}

.stats-figure[b-j7n5irlcea] {
    padding: 12px;
    border-radius: var(--radius-card);
    background: var(--surface-2);
}

.stats-figure-label[b-j7n5irlcea] {
    color: var(--ink-2);
    font-size: 13px;
}

.stats-figure-value[b-j7n5irlcea] {
    margin: 4px 0 0;
    font-size: 24px;
    font-weight: 700;
}

.stats-heading[b-j7n5irlcea] {
    margin: 28px 0 8px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink-2);
}

.stats-links[b-j7n5irlcea] {
    display: grid;
    gap: 8px;
    margin-top: 28px;
}

.stats-settings[b-j7n5irlcea] {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 64px;
    padding: 0 16px;
    border-radius: var(--radius-card);
    background: var(--surface-2);
    color: var(--ink);
    text-decoration: none;
}

.stats-settings:focus-visible[b-j7n5irlcea],
.stats-most-row:focus-visible[b-j7n5irlcea] {
    outline: 2px solid var(--ink);
    outline-offset: 2px;
}

.stats-settings-text[b-j7n5irlcea] {
    display: flex;
    flex: 1;
    flex-direction: column;
}

.stats-settings-title[b-j7n5irlcea] {
    font-weight: 700;
}

.stats-settings-hint[b-j7n5irlcea] {
    font-size: 13px;
    color: var(--ink-2);
}

.stats-most-row[b-j7n5irlcea] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 56px;
    padding: 0 4px;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: transparent;
    color: var(--ink);
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.stats-most-name[b-j7n5irlcea] {
    flex: 1;
}

.stats-most-trips[b-j7n5irlcea] {
    color: var(--ink-2);
    font-size: 14px;
}
/* /Components/Pages/TripDetail.razor.rz.scp.css */
.trip-detail-back[b-1gbli76m17] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--ink-2);
    text-decoration: none;
}

.trip-detail-back[b-1gbli76m17]  svg {
    width: 20px;
    height: 20px;
    transform: rotate(180deg);
}

.trip-detail-back:focus-visible[b-1gbli76m17],
.trip-detail-stop button:focus-visible[b-1gbli76m17] {
    outline: 2px solid var(--ink);
    outline-offset: 2px;
}

.trip-detail-title[b-1gbli76m17] {
    margin: 0;
    font-size: 24px;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.trip-detail-line[b-1gbli76m17] {
    margin: 4px 0 12px;
    color: var(--ink-2);
    font-size: 14px;
}

.trip-detail-map-host[b-1gbli76m17] {
    margin: 0 -8px;
}

.trip-detail-map-host[b-1gbli76m17]  .trip-detail-map {
    height: 250px;
    aspect-ratio: auto;
}

.trip-detail-heading[b-1gbli76m17] {
    margin: 24px 0 8px;
    font-size: 16px;
    font-weight: 700;
}

.trip-detail-stops[b-1gbli76m17] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.trip-detail-stop button[b-1gbli76m17] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    width: 100%;
    min-height: 44px;
    padding: 8px 0;
    border: 0;
    border-bottom: 1px solid var(--surface-2);
    background: transparent;
    color: var(--ink);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.trip-detail-country[b-1gbli76m17] {
    font-weight: 700;
}

.trip-detail-cities[b-1gbli76m17] {
    color: var(--ink-2);
    font-size: 14px;
    overflow-wrap: anywhere;
}

.trip-detail-note[b-1gbli76m17] {
    margin: 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.trip-detail-actions[b-1gbli76m17] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    margin: 24px 0;
}
/* /Components/Pages/Trips.razor.rz.scp.css */
.trips-bar[b-tytbn90gwp] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    min-height: 64px;
}

.trips-title[b-tytbn90gwp] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
}

.trips-count[b-tytbn90gwp] {
    margin: 0;
    color: var(--ink-2);
    font-size: 14px;
}

.trips-year[b-tytbn90gwp],
.trips-been-title[b-tytbn90gwp] {
    margin: 20px 0 4px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink-2);
}

.trips-rows[b-tytbn90gwp] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.trips-been[b-tytbn90gwp] {
    margin-top: 32px;
}

.trips-been-title[b-tytbn90gwp] {
    margin-top: 0;
}

.trips-been-note[b-tytbn90gwp],
.trips-been-none[b-tytbn90gwp] {
    margin: 0 0 12px;
    color: var(--ink-2);
}
/* /Components/Pages/Wishlist.razor.rz.scp.css */
.wishlist-bar[b-jz41bebbir] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 64px;
}

.wishlist-title[b-jz41bebbir] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
}

.wishlist-add[b-jz41bebbir] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    background: var(--accent);
    color: var(--on-accent);
    cursor: pointer;
}

.wishlist-add:focus-visible[b-jz41bebbir],
.wishlist-open:focus-visible[b-jz41bebbir] {
    outline: 2px solid var(--ink);
    outline-offset: 2px;
}

.wishlist-section[b-jz41bebbir] {
    margin-top: 24px;
}

.wishlist-heading[b-jz41bebbir],
.wishlist-continent[b-jz41bebbir] {
    margin: 20px 0 4px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink-2);
}

.wishlist-heading[b-jz41bebbir] {
    margin-top: 0;
}

.wishlist-rows[b-jz41bebbir],
.wishlist-chips[b-jz41bebbir] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.wishlist-row[b-jz41bebbir] {
    display: flex;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid var(--line);
}

.wishlist-open[b-jz41bebbir] {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    min-height: 44px;
    padding: 8px 0;
    border: 0;
    background: none;
    color: var(--ink);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.wishlist-name[b-jz41bebbir] {
    font-weight: 600;
}

.wishlist-sub[b-jz41bebbir] {
    color: var(--ink-2);
    font-size: 13px;
}

.wishlist-chips[b-jz41bebbir] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.wishlist-chip-code[b-jz41bebbir] {
    color: var(--ink-2);
    font-size: 12px;
}

.wishlist-form[b-jz41bebbir] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.wishlist-form .label:not(:first-child)[b-jz41bebbir] {
    margin-top: 8px;
}

.wishlist-errors[b-jz41bebbir] {
    margin: 8px 0 0;
    padding: 0 0 0 20px;
    color: var(--danger);
    font-size: 14px;
}

.wishlist-submit[b-jz41bebbir] {
    margin-top: 12px;
    width: 100%;
}
/* /Components/Passport/PassportCard.razor.rz.scp.css */
/* The passport keeps its own colours in both modes (look.md). */
.passport-card[b-iq09pikivk] {
    --passport-cover: #5e1a26;
    --passport-gold: #f1d58a;
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 64px;
    padding: 0 16px;
    border-radius: var(--radius-card);
    background: var(--passport-cover);
    color: var(--passport-gold);
    text-decoration: none;
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .passport-card[b-iq09pikivk] {
        --passport-cover: #4a1420;
    }
}

:root[data-theme="dark"] .passport-card[b-iq09pikivk] {
    --passport-cover: #4a1420;
}

.passport-card:focus-visible[b-iq09pikivk] {
    outline: 2px solid var(--ink);
    outline-offset: 2px;
}

.passport-card-title[b-iq09pikivk] {
    flex: 1;
    font-family: var(--font-passport);
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.passport-card-stamps[b-iq09pikivk] {
    font-size: 14px;
}
/* /Components/Passport/StampGrid.razor.rz.scp.css */
/* Colours come from the --pp-* properties on the passport page; none are declared here. */
.stamp-heading[b-vnk502w538] {
    margin: 0 0 8px;
    font-family: var(--font-passport);
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.stamp-head[b-vnk502w538] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

.stamp-link[b-vnk502w538] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--pp-been);
    font-size: 14px;
}

.stamp-link:focus-visible[b-vnk502w538],
.stamp:focus-visible[b-vnk502w538],
.slot:focus-visible[b-vnk502w538] {
    outline: 2px solid var(--pp-been);
    outline-offset: 3px;
}

.stamp-grid[b-vnk502w538] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.stamp[b-vnk502w538],
.slot[b-vnk502w538] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    width: 100%;
    min-height: 96px;
    padding: 8px 4px;
    border: var(--pp-border, 2.5px) solid var(--pp-been);
    background: transparent;
    color: var(--pp-been);
    font-family: var(--font-passport);
    font-weight: 800;
    letter-spacing: 0.04em;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
}

.stamp.is-lived[b-vnk502w538] {
    border-color: var(--pp-lived);
    color: var(--pp-lived);
}

.slot[b-vnk502w538] {
    border-radius: 8px;
    border-style: dashed;
    border-color: var(--pp-slot);
    color: var(--pp-slot);
    font-weight: 600;
}

.shape-circle[b-vnk502w538] {
    border-radius: 50%;
}

.shape-ticket[b-vnk502w538] {
    border-radius: 8px;
}

.shape-leaf[b-vnk502w538] {
    border-radius: 0 40px 0 40px;
}

.stamp-kind[b-vnk502w538],
.stamp-date[b-vnk502w538] {
    font-size: 11px;
    font-weight: 600;
}

.stamp-name[b-vnk502w538] {
    line-height: 1.05;
    overflow-wrap: anywhere;
}

.name-l[b-vnk502w538] { font-size: 23px; }
.name-m[b-vnk502w538] { font-size: 19px; }
.name-s[b-vnk502w538] { font-size: 16px; }
.name-xs[b-vnk502w538] { font-size: 13px; }

.turn-0[b-vnk502w538] { transform: rotate(0deg); }
.turn-p1[b-vnk502w538] { transform: rotate(1deg); }
.turn-p2[b-vnk502w538] { transform: rotate(2deg); }
.turn-p3[b-vnk502w538] { transform: rotate(3deg); }
.turn-p4[b-vnk502w538] { transform: rotate(4deg); }
.turn-p5[b-vnk502w538] { transform: rotate(5deg); }
.turn-p6[b-vnk502w538] { transform: rotate(6deg); }
.turn-p7[b-vnk502w538] { transform: rotate(7deg); }
.turn-m1[b-vnk502w538] { transform: rotate(-1deg); }
.turn-m2[b-vnk502w538] { transform: rotate(-2deg); }
.turn-m3[b-vnk502w538] { transform: rotate(-3deg); }
.turn-m4[b-vnk502w538] { transform: rotate(-4deg); }
.turn-m5[b-vnk502w538] { transform: rotate(-5deg); }
.turn-m6[b-vnk502w538] { transform: rotate(-6deg); }
.turn-m7[b-vnk502w538] { transform: rotate(-7deg); }
/* /Components/Shared/ConfirmInline.razor.rz.scp.css */
.confirm-inline[b-jammbna55b] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 12px 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--surface);
}

.confirm-inline-message[b-jammbna55b] {
    margin: 0;
}

.confirm-inline-actions[b-jammbna55b] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.confirm-inline-actions[b-jammbna55b]  .btn {
    min-height: 44px;
    min-width: 44px;
}
/* /Components/Shared/EmptyState.razor.rz.scp.css */
.empty-state[b-dygnz5baig] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 32px 16px;
    text-align: center;
    color: var(--ink-2);
}

.empty-state-title[b-dygnz5baig] {
    margin: 0;
    font-size: 1.125rem;
    color: var(--ink);
}

.empty-state-text[b-dygnz5baig] {
    margin: 0;
    max-width: 32ch;
}

.empty-state-action[b-dygnz5baig] {
    margin-top: 8px;
}
/* /Components/Shared/Icon.razor.rz.scp.css */
.icon[b-igeze9i2xm] {
    flex: none;
    vertical-align: middle;
}
/* /Components/Shared/ToastHost.razor.rz.scp.css */
.toast-host[b-lz2y9dqfif] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: calc(var(--tab-bar-height) + env(safe-area-inset-bottom) + 12px);
    z-index: 50;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 0 16px;
    pointer-events: none;
}

.toast[b-lz2y9dqfif] {
    display: flex;
    align-items: center;
    gap: 8px;
    max-width: 100%;
    padding: 4px 4px 4px 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--surface);
    color: var(--ink);
    box-shadow: 0 4px 16px color-mix(in srgb, var(--ink) 20%, transparent);
    pointer-events: auto;
}

.toast-error[b-lz2y9dqfif] {
    border-color: var(--danger);
}

.toast-dismiss[b-lz2y9dqfif] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    border: 0;
    background: none;
    color: inherit;
    cursor: pointer;
}
/* /Components/Stats/ContinentBars.razor.rz.scp.css */
.continent-bars[b-1yi3opnafq] {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.continent-head[b-1yi3opnafq] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 4px;
}

.continent-count[b-1yi3opnafq] {
    color: var(--ink-2);
}

.continent-track[b-1yi3opnafq] {
    display: block;
    width: 100%;
    height: 6px;
    border-radius: 3px;
}

.continent-bg[b-1yi3opnafq] {
    fill: var(--surface-2);
}

.continent-been[b-1yi3opnafq] {
    fill: var(--been);
}
/* /Components/Stats/YearChart.razor.rz.scp.css */
.year-chart[b-5fg4qxz9w6] {
    display: block;
    width: 100%;
    height: auto;
}

.year-baseline[b-5fg4qxz9w6] {
    stroke: var(--line);
    stroke-width: 1;
}

.year-bar[b-5fg4qxz9w6] {
    fill: var(--been);
}

.year-count[b-5fg4qxz9w6],
.year-label[b-5fg4qxz9w6] {
    fill: var(--ink-2);
    font-size: 10px;
}

.year-chart-empty[b-5fg4qxz9w6] {
    margin: 0;
    color: var(--ink-2);
}
/* /Components/Trips/CountryChips.razor.rz.scp.css */
.country-chips[b-xyelalhrkw] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.country-chip[b-xyelalhrkw] {
    cursor: pointer;
    font: inherit;
    font-size: 14px;
}

.country-chip:focus-visible[b-xyelalhrkw] {
    outline: 2px solid var(--ink);
    outline-offset: 2px;
}
/* /Components/Trips/LogTripButton.razor.rz.scp.css */
.tab-plus[b-z00r8smhne] {
    justify-self: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    margin-top: -20px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: var(--accent);
    color: var(--on-accent);
    box-shadow: 0 0 0 4px var(--surface);
    cursor: pointer;
}
/* /Components/Trips/TripFormSheet.razor.rz.scp.css */
.trip-form[b-zk497peedc] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.trip-form-precision[b-zk497peedc] {
    align-self: flex-start;
    margin: 12px 0;
}

.trip-form-dates[b-zk497peedc] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.trip-form-hint[b-zk497peedc] {
    margin: 4px 0 0;
    color: var(--ink-2);
    font-size: 13px;
}

.trip-form-heading[b-zk497peedc] {
    margin: 20px 0 6px;
    color: var(--ink-2);
    font-size: 13px;
    font-weight: 500;
}

.trip-form-stop[b-zk497peedc] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
    padding: 12px;
    border-radius: var(--radius-control);
    background: var(--surface-2);
}

.trip-form-stop-head[b-zk497peedc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.trip-form-stop-name[b-zk497peedc] {
    font-weight: 600;
}

.trip-form-results[b-zk497peedc] {
    margin: 4px 0 0;
    padding: 0;
    list-style: none;
}

.trip-form-result[b-zk497peedc] {
    display: block;
    width: 100%;
    min-height: 44px;
    padding: 8px 4px;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: transparent;
    color: var(--ink);
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.trip-form-note-label[b-zk497peedc] {
    margin-top: 16px;
}

.trip-form-note[b-zk497peedc] {
    resize: vertical;
    font-family: inherit;
}

.trip-form-errors[b-zk497peedc] {
    margin: 16px 0 0;
    padding: 0 0 0 20px;
    color: var(--danger);
    font-size: 14px;
}

.trip-form-save[b-zk497peedc] {
    width: 100%;
    margin-top: 16px;
}
/* /Components/Trips/TripRow.razor.rz.scp.css */
.trip-row[b-415tdadnmf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-height: 44px;
    padding: 10px 4px;
    border-bottom: 1px solid var(--line);
    color: var(--ink);
    text-decoration: none;
}

.trip-row:focus-visible[b-415tdadnmf] {
    outline: 2px solid var(--ink);
    outline-offset: -2px;
}

.trip-row-name[b-415tdadnmf] {
    font-weight: 600;
}

.trip-row-stops[b-415tdadnmf],
.trip-row-meta[b-415tdadnmf] {
    color: var(--ink-2);
    font-size: 14px;
}

.trip-row-meta[b-415tdadnmf] {
    display: flex;
    gap: 12px;
}
/* /Components/Trips/TripTimeline.razor.rz.scp.css */
.timeline[b-mip61st5o2] {
    margin-top: 24px;
}

.timeline-bar[b-mip61st5o2] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

.timeline-title[b-mip61st5o2] {
    margin: 0;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ink-2);
}

.timeline-all[b-mip61st5o2] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--ink);
    font-size: 14px;
}

.timeline-all:focus-visible[b-mip61st5o2],
.timeline-trip:focus-visible[b-mip61st5o2] {
    outline: 2px solid var(--ink);
    outline-offset: -2px;
}

.timeline-empty[b-mip61st5o2] {
    margin: 0;
    color: var(--ink-2);
}

.timeline-group[b-mip61st5o2] {
    display: grid;
    grid-template-columns: 56px 1fr;
    border-top: 1px solid var(--line);
}

.timeline-year[b-mip61st5o2] {
    margin: 0;
    padding: 12px 0;
    font-size: 14px;
    font-weight: 700;
    color: var(--ink-2);
}

.timeline-trips[b-mip61st5o2] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.timeline-trip[b-mip61st5o2] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-height: 44px;
    padding: 10px 4px;
    color: var(--ink);
    text-decoration: none;
}

.timeline-name[b-mip61st5o2] {
    font-weight: 600;
}

.timeline-codes[b-mip61st5o2] {
    font-family: var(--font-mono);
    font-size: 13px;
    color: var(--ink-2);
}

.timeline-meta[b-mip61st5o2] {
    font-size: 14px;
    color: var(--ink-2);
}
