.currency-converter[data-astro-cid-2k45alni]{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.currency-converter[data-astro-cid-2k45alni] h3[data-astro-cid-2k45alni]{margin:0 0 20px;font-size:1.25rem;font-weight:600;color:var(--color-text)}.converter-form[data-astro-cid-2k45alni]{display:flex;flex-direction:column;gap:16px}.input-group[data-astro-cid-2k45alni]{display:flex;flex-direction:column;gap:8px}.input-group[data-astro-cid-2k45alni] label[data-astro-cid-2k45alni]{display:block;margin-bottom:8px;font-weight:500;color:var(--color-text-muted)}.input-group[data-astro-cid-2k45alni] input[data-astro-cid-2k45alni]{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:8px;font-size:1rem;background:var(--color-surface-2);color:var(--color-text)}.input-group[data-astro-cid-2k45alni] input[data-astro-cid-2k45alni]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.currency-row[data-astro-cid-2k45alni]{display:flex;align-items:center;gap:12px}.currency-select[data-astro-cid-2k45alni]{flex:1;display:flex;flex-direction:column;gap:8px}.currency-select[data-astro-cid-2k45alni] label[data-astro-cid-2k45alni]{font-size:.875rem;font-weight:500;color:var(--color-text-muted)}.currency-select[data-astro-cid-2k45alni] select[data-astro-cid-2k45alni]{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:8px;font-size:1rem;background:var(--color-surface-2);color:var(--color-text)}.currency-select[data-astro-cid-2k45alni] select[data-astro-cid-2k45alni]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.swap-btn[data-astro-cid-2k45alni]{padding:12px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;font-size:1.2rem;color:var(--color-text-muted);transition:all .2s ease}.swap-btn[data-astro-cid-2k45alni]:hover{background:var(--color-surface-offset);color:var(--color-text);transform:rotate(180deg)}.result[data-astro-cid-2k45alni]{margin-top:16px;padding:16px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;text-align:center}.result-amount[data-astro-cid-2k45alni]{font-size:1.5rem;font-weight:600;color:var(--color-text);margin-bottom:4px}.result-amount[data-astro-cid-2k45alni].error{color:var(--color-danger)}.result-info[data-astro-cid-2k45alni]{font-size:.875rem;color:var(--color-text-muted)}.rate-badge[data-astro-cid-2k45alni]{display:inline-block;margin-left:.4rem;padding:.12rem .45rem;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-faint);font-size:.7rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;vertical-align:baseline}.exchange-info[data-astro-cid-2k45alni]{margin-top:16px;text-align:center}.exchange-info[data-astro-cid-2k45alni] small[data-astro-cid-2k45alni]{display:block;color:var(--color-text-faint);font-size:.75rem}.weather-widget{--ww-teal: #2db5a8;--ww-text: hsl(25 12% 22%);--ww-muted: #888888;--ww-border: hsl(32 14% 90%);--ww-subtle: #f5f5f5;background:var(--color-surface);border-radius:12px;padding:1rem 1rem .9rem;box-shadow:0 1px 3px #261d170f;border:1px solid var(--ww-border)}.weather-widget__head{display:flex;align-items:center;gap:.5rem;margin-bottom:.7rem}.weather-widget__head-icon{width:22px;height:22px;color:#e8b923;flex-shrink:0}.weather-widget__title{margin:0;font-size:.8125rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ww-text);font-family:Inter,var(--font-body, system-ui),sans-serif}.weather-controls{display:grid;grid-template-columns:1fr 1fr;gap:.55rem .65rem;margin-bottom:.7rem}.country-selector,.city-selector{display:flex;flex-direction:column;gap:.35rem}.country-selector label,.city-selector label{font-size:.625rem;font-weight:700;color:var(--ww-muted);text-transform:uppercase;letter-spacing:.08em}.country-selector select,.city-selector select{width:100%;padding:.52rem 1.9rem .52rem .65rem;border:1px solid var(--ww-border);border-radius:10px;font-size:.8125rem;font-weight:500;background-color:var(--ww-subtle)!important;color:var(--ww-text)!important;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;color-scheme:light;cursor:pointer;transition:border-color .2s}.country-selector select:focus,.city-selector select:focus{outline:none;border-color:color-mix(in srgb,var(--color-primary) 45%,var(--ww-border));box-shadow:0 0 0 3px var(--color-primary-soft)}.weather-display{border-radius:14px;margin-bottom:.55rem;overflow:hidden;border:1px solid var(--ww-border)}.weather-main{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.7rem .9rem;padding:.8rem .9rem;background:linear-gradient(105deg,#fdece3,#fbf4ef 42%,#eaf5f3)}.weather-main__visual{line-height:1}.weather-icon-emoji{font-size:2.45rem;line-height:1;filter:drop-shadow(0 2px 6px hsl(40 80% 50% / .2))}.weather-temp-block{display:flex;flex-direction:column;gap:.25rem;min-width:0}.weather-temp{font-size:clamp(1.45rem,4.2vw,1.85rem);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--ww-text)}.weather-desc{font-size:.8rem;font-weight:500;color:#6b5f57}.weather-details{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;padding:.45rem;background:var(--color-surface)}.detail-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.25rem;padding:.45rem .25rem;background:var(--ww-subtle);border-radius:10px}.detail-item__ic{display:flex;color:var(--ww-teal)}.detail-item__ic svg{width:15px;height:15px;stroke-width:2.25px}.detail-label{font-size:.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ww-muted)}.detail-value{font-size:.8rem;font-weight:700;color:var(--ww-text)}.weather-forecast{margin-bottom:.25rem}.weather-forecast__label{margin:0 0 .45rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--ww-muted)}.forecast-days{display:grid;grid-template-columns:repeat(5,1fr);gap:.35rem}.forecast-day{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.45rem .25rem;background:var(--color-surface);border:1px solid var(--ww-border);border-radius:10px}.forecast-date{font-size:.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ww-muted);text-align:center;line-height:1.25}.forecast-icon{font-size:1.05rem;line-height:1}.forecast-temp{font-size:.8rem;font-weight:700;color:var(--ww-text)}.forecast-lazy-placeholder{padding:.55rem .7rem;border:1px dashed var(--ww-border);border-radius:10px;font-size:.72rem;color:var(--ww-muted);text-align:center;background:var(--color-surface)}.weather-info{margin-top:.55rem;text-align:center}.weather-info__note{font-size:.64rem;font-style:italic;color:var(--ww-muted)}html[data-theme=dark] .weather-widget{--ww-text: hsl(30 15% 90%);--ww-muted: hsl(25 8% 58%);--ww-border: hsl(25 10% 22%);--ww-subtle: hsl(25 10% 14%)}html[data-theme=dark] .weather-main{background:linear-gradient(105deg,#392c22,#312721,#21302f)}@media(max-width:768px){.weather-widget{padding:.85rem .8rem}.weather-controls{grid-template-columns:1fr}.weather-icon-emoji{font-size:2rem}.forecast-days{grid-template-columns:repeat(3,1fr)}.forecast-day:nth-child(n+4){display:none}}.cost-of-living-calculator{--col-orange: #e67e22;--col-text: hsl(25 12% 18%);--col-muted: #6b6b6b;--col-line: hsl(32 14% 88%);--col-field-border: hsl(32 14% 84%);--col-field-border-hover: hsl(32 12% 76%);background:var(--color-surface);border-radius:16px;padding:1.5rem 1.5rem 1.25rem;box-shadow:0 1px 3px #261d1714;border:1px solid var(--col-line)}.col-calc__title{margin:0 0 1.25rem;font-size:1.125rem;font-weight:700;color:var(--col-text);letter-spacing:-.02em}.calculator-form{display:flex;flex-direction:column;gap:1.1rem;margin-bottom:1.25rem}.location-section,.income-section{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.city-selector,.income-input,.family-size{display:flex;flex-direction:column;gap:.5rem}.col-field-label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#696059}.col-field-control,.cost-of-living-calculator .form-group input,.cost-of-living-calculator .form-group select,.cost-of-living-calculator .form-group textarea{width:100%;min-height:46px;padding:.65rem .9rem;border-radius:12px;font-size:.9375rem;font-weight:500;background-color:#fefefd!important;color:#28231f!important;color-scheme:light;border-width:1px;border-style:solid;border-color:var(--col-field-border);box-shadow:0 1px 2px #261d170d;background-clip:padding-box;transition:border-color .2s,box-shadow .2s,background-color .2s}.cost-of-living-calculator select.col-field-control,.cost-of-living-calculator input.col-field-control{border:1px solid var(--col-field-border)!important}.cost-of-living-calculator .col-field-control:hover{border-color:var(--col-field-border-hover)!important;background-color:#fff!important}.cost-of-living-calculator select.col-field-control{appearance:none;-webkit-appearance:none;padding-right:2.5rem;cursor:pointer;background-color:#fefefd!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235c5c5c' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;background-size:18px 18px}.cost-of-living-calculator select.col-field-control option{color:#28231f;font-weight:500;background-color:#fff}.cost-of-living-calculator select.col-field-control option[value=""]{color:#7c746e}.col-field-control:focus{outline:none;border-color:var(--col-orange)!important;background-color:#fff!important;box-shadow:0 1px 2px #261d170f,0 0 0 2px color-mix(in srgb,var(--col-orange) 22%,transparent)}.cost-of-living-calculator select.col-field-control:focus{background-color:#fff!important}.cost-of-living-calculator input.col-field-control::placeholder{color:#7c746e;font-weight:500}.comparison-results{background:transparent;border:none;border-radius:0;padding:0;margin-bottom:1.25rem}.comparison-summary{display:flex;flex-direction:column;gap:1rem}.cities-container{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}.city-card{background:var(--color-surface);border:1px solid var(--col-line);border-radius:14px;padding:1.1rem 1.15rem;box-shadow:0 1px 2px #261d170a}.city-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem}.city-flag{font-size:1.35rem;line-height:1}.city-header h4{margin:0;font-size:1rem;font-weight:700;color:var(--col-text)}.city-content{display:flex;flex-direction:column;gap:.35rem}.cost-row{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.cost-label{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--col-muted)}.cost-amount{font-size:clamp(1.65rem,4vw,2.1rem);font-weight:800;letter-spacing:-.03em;color:var(--col-text)}.cost-breakdown small{font-size:.75rem;color:var(--col-muted);line-height:1.4}.col-balance{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;padding:.55rem .75rem;border-radius:10px;font-weight:600;font-size:.8125rem}.col-balance--surplus{background:#e1f4e8;color:#206f3d;border:1px solid hsl(142 35% 82%)}.col-balance--deficit{background:var(--color-surface);color:#b12525;border:1px solid hsl(0 55% 78%)}.col-balance__label{display:inline-flex;align-items:center;gap:.35rem}.col-balance__warn{width:16px;height:16px;flex-shrink:0;stroke-width:2.25px}.col-balance__amt{font-weight:800;font-size:.9375rem}.col-insight{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.1rem;border-radius:12px}.col-insight__ic{flex-shrink:0;color:var(--col-orange)}.col-insight__ic svg{width:26px;height:26px;stroke-width:2.25px}.col-insight--gain{background:#edf7f1;border:1px solid hsl(142 35% 78%)}.col-insight--gain .col-insight__ic{color:#297a47}.col-insight--pain{background:#fff7f0;border:1px solid color-mix(in srgb,var(--col-orange) 45%,var(--col-line))}.col-insight--pain .col-insight__ic{color:var(--col-orange)}.col-insight__kicker{font-size:.6875rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.2rem}.col-insight--gain .col-insight__kicker{color:#2a6f43}.col-insight--pain .col-insight__kicker{color:var(--col-orange)}.col-insight__text{font-size:.9375rem;font-weight:600;line-height:1.45;color:var(--col-text)}.col-insight--pain .col-insight__text{color:#964f2c}.col-insight--gain .col-insight__text{color:#285d3b}.affordability-section{padding:1rem 1.1rem;background:#fcfcfc;border:1px solid var(--col-line);border-radius:12px}.affordability-section h5{margin:0 0 .75rem;font-size:.625rem;font-weight:700;color:var(--col-muted);text-transform:uppercase;letter-spacing:.08em}.affordability-comparison{display:flex;flex-direction:column;gap:.75rem}.affordability-item{display:flex;align-items:center;gap:.65rem}.affordability-section .city-label{min-width:100px;font-size:.8125rem;font-weight:600;color:var(--col-text)}.affordability-bar{flex:1;height:8px;background:#f0f0f0;border-radius:999px;overflow:hidden;border:1px solid var(--col-line)}.affordability-fill{height:100%;border-radius:999px;transition:width .45s ease}.affordability-percent{min-width:48px;text-align:right;font-size:.75rem;font-weight:700;color:var(--col-text)}.detailed-breakdown{margin-bottom:1rem}.col-breakdown__title{margin:0 0 1rem;font-size:1rem;font-weight:700;color:var(--col-text)}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.875rem}.expense-category{background:var(--color-surface);border:1px solid var(--col-line);border-radius:12px;padding:1rem}.category-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.65rem;font-weight:600;font-size:.9375rem;color:var(--col-text)}.category-icon{display:flex;color:var(--col-orange)}.category-icon svg{width:18px;height:18px;stroke-width:2.25px}.cost-comparison{display:flex;flex-direction:column;gap:.45rem}.cost-item{display:flex;justify-content:space-between;align-items:center;padding:.45rem .55rem;background:#fafafa;border-radius:8px;border:1px solid var(--col-line)}.city-name{font-size:.8125rem;color:var(--col-muted)}.cost-value{font-weight:700;font-size:.875rem;color:var(--col-text)}.expense-diff{margin-top:.5rem;text-align:right;font-size:.9375rem;font-weight:800}.expense-diff--up{color:#b12525}.expense-diff--down{color:#2d7648}.expense-diff--eq{color:var(--col-muted)}.calculator-info{text-align:left;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--col-line);max-width:40rem;margin-left:auto;margin-right:auto}.col-feedback-callout{margin-top:var(--space-4);margin-bottom:var(--space-4);display:grid;grid-template-columns:auto 1fr auto;gap:var(--space-3);align-items:center;padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--color-primary) 20%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 6%,var(--color-surface))}.col-feedback-callout__icon{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border);font-size:1.2rem}.col-feedback-callout__text{margin:0;color:var(--color-text);font-size:var(--text-sm);line-height:1.5}.col-feedback-callout__cta{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:.55rem .9rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 40%,var(--color-border));background:var(--color-surface);color:var(--color-primary);font-weight:600;text-decoration:none;font-size:var(--text-sm)}.col-feedback-callout__cta:hover{text-decoration:none;border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface))}@media(max-width:820px){.col-feedback-callout{grid-template-columns:1fr;text-align:left}}.calculator-info__method{margin:0 0 .65rem;font-size:.78rem;line-height:1.5;color:var(--col-text)}.calculator-info__method--muted{color:var(--col-muted);font-size:.74rem}.calculator-info__links-label{margin:.35rem 0;font-size:.72rem;font-weight:600;color:var(--col-text)}.calculator-info__links{margin:0;padding-left:1.15rem;font-size:.74rem;line-height:1.55;color:var(--col-muted)}.calculator-info__links a{color:var(--col-orange);text-decoration:underline;text-underline-offset:2px}.calculator-info__links a:hover{text-decoration-thickness:2px}.col-comparison-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem 1rem;text-align:center;color:var(--col-muted)}.col-comparison-loading p{margin:0;font-size:.9rem;max-width:22rem;line-height:1.45}.col-loading-spinner{width:36px;height:36px;border:3px solid var(--col-line);border-top-color:var(--col-orange);border-radius:50%;animation:col-spin .75s linear infinite}@keyframes col-spin{to{transform:rotate(360deg)}}.col-comparison-error{padding:1.25rem 1.35rem;background:var(--color-surface);border:1px solid var(--col-line);border-radius:10px;border-left:4px solid hsl(0 65% 50%)}.col-comparison-error p{margin:0;font-size:.9rem;line-height:1.45;color:var(--col-text)}.result-placeholder{text-align:center;padding:1.5rem 1rem;color:var(--col-muted)}.result-placeholder p{margin:.5rem 0 0;font-size:.9rem;line-height:1.45}html[data-theme=dark] .cost-of-living-calculator{--col-text: hsl(30 15% 92%);--col-muted: hsl(25 8% 62%);--col-line: hsl(25 10% 22%);--col-field-border: hsl(25 8% 32%);--col-field-border-hover: hsl(25 8% 42%)}html[data-theme=dark] .col-field-label{color:#bdb7b2}html[data-theme=dark] .col-field-control{background-color:#1f1b19!important;color:#eeebe8!important;box-shadow:0 1px 2px #0003}html[data-theme=dark] .cost-of-living-calculator select.col-field-control,html[data-theme=dark] .cost-of-living-calculator input.col-field-control{border:1px solid var(--col-field-border)!important}html[data-theme=dark] .cost-of-living-calculator .col-field-control:hover{border-color:var(--col-field-border-hover)!important;background-color:#272320!important}html[data-theme=dark] .cost-of-living-calculator select.col-field-control{background-color:#1f1b19!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23c4c4c4' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-size:18px 18px}html[data-theme=dark] .cost-of-living-calculator select.col-field-control option{background-color:#221e1b;color:#eeebe8}html[data-theme=dark] .cost-item{background:#221e1c}@media(max-width:768px){.location-section,.income-section,.cities-container{grid-template-columns:1fr}.cost-amount{font-size:1.5rem}.breakdown-grid{grid-template-columns:1fr}}.cost-of-living-calculator{--tool-radius: 16px;--tool-radius-sm: 12px;--tool-border: color-mix(in srgb, var(--color-border) 88%, #cfd5dd);--tool-shadow: 0 6px 16px -14px rgba(17, 24, 39, .45)}.cost-of-living-calculator .city-card,.cost-of-living-calculator .expense-category,.cost-of-living-calculator .affordability-section,.cost-of-living-calculator .col-feedback-callout{border-radius:var(--tool-radius);border-color:var(--tool-border);box-shadow:var(--tool-shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.cost-of-living-calculator .city-card:hover,.cost-of-living-calculator .expense-category:hover{transform:translateY(-1px);box-shadow:0 12px 20px -18px #1118278c;border-color:color-mix(in srgb,var(--color-primary) 24%,var(--tool-border))}.cost-of-living-calculator .col-comparison-loading,.cost-of-living-calculator .col-comparison-error,.cost-of-living-calculator .result-placeholder{border-radius:var(--tool-radius);border:1px solid var(--tool-border);background:color-mix(in srgb,var(--color-surface) 95%,#f7f8fa);padding:1rem 1.1rem}.cost-of-living-calculator .col-comparison-error{border-color:color-mix(in srgb,var(--color-danger) 36%,var(--tool-border));background:color-mix(in srgb,var(--color-danger) 8%,var(--color-surface))}.cost-of-living-calculator .result-placeholder p,.cost-of-living-calculator .col-comparison-loading p,.cost-of-living-calculator .col-comparison-error p{margin:0;color:var(--color-text-muted);line-height:1.5}.cost-of-living-calculator .col-loading-spinner{width:20px;height:20px;border:2px solid color-mix(in srgb,var(--tool-border) 78%,transparent);border-top-color:var(--color-primary);border-radius:999px;animation:col-spin .9s linear infinite}@keyframes col-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cost-of-living-calculator .col-field-control:focus-visible{outline:none;box-shadow:0 0 0 1px var(--color-primary),0 0 0 4px color-mix(in srgb,var(--color-primary) 18%,transparent)}@media(max-width:768px){.cost-of-living-calculator .col-calc__title{font-size:1rem;line-height:1.3}.cost-of-living-calculator .city-header h4{font-size:.92rem;line-height:1.3}.cost-of-living-calculator .cost-amount{font-size:clamp(1.28rem,8vw,1.7rem);line-height:1.12}.cost-of-living-calculator .col-insight__text,.cost-of-living-calculator .calculator-info__method{line-height:1.6}}html[data-theme=dark] .cost-of-living-calculator{--tool-border: color-mix(in srgb, var(--color-border) 80%, #3a3f47);--tool-shadow: 0 8px 18px -16px rgba(0, 0, 0, .75)}.visa-tracker{--col-orange: #e67e22;--col-text: hsl(25 12% 18%);--col-line: hsl(32 14% 88%);--col-field-border: hsl(32 14% 84%);--col-field-border-hover: hsl(32 12% 76%);background:var(--color-surface);border-radius:16px;padding:1.5rem 1.5rem 1.25rem;border:1px solid var(--col-line);box-shadow:0 1px 3px #261d1714;width:100%;max-width:none}html[data-theme=dark] .visa-tracker{--col-text: hsl(30 15% 92%);--col-line: hsl(25 10% 22%);--col-field-border: hsl(25 8% 32%);--col-field-border-hover: hsl(25 8% 42%)}.visa-tracker .visa-tracker__title{margin:0 0 1.25rem;font-size:1.125rem;font-weight:700;color:var(--col-text);letter-spacing:-.02em}.visa-tracker select.col-field-control{appearance:none;-webkit-appearance:none;padding-right:2.5rem;cursor:pointer;background-color:#fefefd!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235c5c5c' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;background-size:18px 18px}html[data-theme=dark] .visa-tracker select.col-field-control{background-color:#1f1b19!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23c4c4c4' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-size:18px 18px}.visa-tracker select.col-field-control option{color:#28231f;font-weight:500;background-color:#fff}.visa-tracker select.col-field-control option[value=""]{color:#7c746e}html[data-theme=dark] .visa-tracker select.col-field-control option{background-color:#221e1b;color:#eeebe8}.visa-tracker select.col-field-control,.visa-tracker input.col-field-control,.visa-tracker textarea.col-field-control{border:1px solid var(--col-field-border)!important}.visa-tracker .col-field-control:hover:not(:focus):not(:disabled){border-color:var(--col-field-border-hover)!important;background-color:#fff!important}html[data-theme=dark] .visa-tracker .col-field-control:hover:not(:focus):not(:disabled){background-color:#272320!important}.visa-tracker .col-field-control:focus{outline:none;border-color:var(--col-orange)!important;background-color:#fff!important;box-shadow:0 1px 2px #261d170f,0 0 0 2px color-mix(in srgb,var(--col-orange) 22%,transparent)}html[data-theme=dark] .visa-tracker select.col-field-control:focus{background-color:#1f1b19!important}.visa-tracker .col-field-control.visa-field__input--readonly{background:#f9f8f5!important;color:var(--color-text-muted)!important;cursor:default;box-shadow:none}html[data-theme=dark] .visa-tracker .col-field-control.visa-field__input--readonly{background:#28231f!important}.visa-tracker textarea.col-field-control{resize:vertical;min-height:4.5rem;font-family:inherit}.visa-tracker input.col-field-control::placeholder,.visa-tracker textarea.col-field-control::placeholder{color:#7c746e;font-weight:500}html[data-theme=dark] .visa-tracker .col-field-label{color:#bdb7b2}.visa-tracker .visa-tracker__panel{background:#fefefd;border:1px solid var(--col-line);border-radius:14px;padding:1.1rem 1.15rem;box-shadow:0 1px 2px #261d170a}.visa-tracker .visa-tracker__panel--list{background:#fff;border:1px solid #e5e7eb;border-radius:1.5rem;padding:1.35rem 1.5rem;box-shadow:none}html[data-theme=dark] .visa-tracker .visa-tracker__panel,html[data-theme=dark] .visa-tracker .visa-tracker__panel--list{background:#221e1c;box-shadow:none}html[data-theme=dark] .visa-tracker .visa-tracker__panel--list{border-color:#423c38}.visa-tracker .visa-tracker__dates{padding:.75rem 0 0;border-top:1px dashed var(--col-line)}.visa-tracker .visa-tracker__actions{border-top-color:var(--col-line)}.visa-tracker .visa-btn--primary{background:var(--col-orange);color:#fff;border-color:transparent}.visa-tracker .visa-btn--primary:hover{background:color-mix(in srgb,var(--col-orange) 90%,#1a1a1a);color:#fff}.visa-tracker .visa-tracker__list-heading{color:var(--col-text);font-weight:700;font-size:1.0625rem;letter-spacing:-.02em;padding-bottom:0;margin:0 0 1rem;border-bottom:none;line-height:1.25}.visa-field{display:flex;flex-direction:column;gap:.5rem;min-width:0}.visa-tracker__hint{margin:0 0 1rem;font-size:var(--text-sm, .875rem);color:var(--color-primary);line-height:1.45}.visa-tracker__hint[hidden]{display:none!important}.visa-tracker__grid{display:grid;gap:1.25rem;grid-template-columns:1fr}@media(min-width:900px){.visa-tracker__grid{grid-template-columns:1fr minmax(280px,380px);align-items:start}}.visa-tracker__empty{margin:0;font-size:var(--text-sm, .875rem);color:var(--color-text-muted);line-height:1.5}.visa-tracker__empty[hidden]{display:none!important}.visa-tracker__list-tools{margin-bottom:.75rem}.visa-tracker__list-filter{min-height:40px;font-size:.86rem}.visa-tracker__cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem;max-height:min(52vh,28rem);overflow-y:auto}.visa-tracker__fields{display:flex;flex-direction:column;gap:1.1rem}.visa-tracker__row{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:560px){.visa-tracker__row{grid-template-columns:1fr 1fr}}.visa-tracker__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--color-border, hsl(32 14% 88%))}.visa-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.55rem 1rem;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .15s ease,border-color .15s ease,color .15s ease}.visa-btn--primary{border-radius:12px}.visa-btn--primary:hover{filter:brightness(1.02)}.visa-btn--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.visa-btn--secondary:hover{background:var(--color-surface-offset)}.visa-btn--ghost{background:transparent;color:var(--color-text-muted);border-color:transparent;text-decoration:underline;text-underline-offset:3px}.visa-btn--ghost:hover{color:var(--color-text)}.visa-btn--small{padding:.35rem .65rem;font-size:.75rem;border-radius:8px}.visa-btn--danger{color:var(--color-danger);border-color:var(--color-danger);background:transparent}.visa-btn--danger:hover{background:var(--color-danger-10, rgba(239, 68, 68, .1))}.visa-btn[hidden]{display:none!important}.visa-card{padding:1.05rem 1.1rem 1rem;border:1px solid #d5d9df;border-radius:1.4rem;background:#fff;box-shadow:0 2px 10px #1118270f}html[data-theme=dark] .visa-card{background:#1f1c19;border-color:#3d3734;box-shadow:none}.visa-card__head{margin-bottom:.55rem}.visa-card__title{margin:0;font-size:clamp(1.02rem,2.15vw,1.22rem);line-height:1.2;letter-spacing:-.02em;font-weight:700;color:#2f2b2b}html[data-theme=dark] .visa-card__title{color:var(--color-text)}.visa-card__id{margin:.22rem 0 0;font-size:.82rem;color:#2f2b2b}html[data-theme=dark] .visa-card__id{color:var(--color-text)}.visa-card__details-grid{display:grid;grid-template-columns:1fr;gap:.4rem .95rem;margin-top:.55rem;padding-top:.55rem;border-top:1px solid #e4e7ec}@media(min-width:760px){.visa-card__details-grid{grid-template-columns:1fr 1fr}}.visa-card__details-col{display:grid;gap:.42rem;align-content:start}.visa-card__meta-item{margin:0;display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:#2f2b2b;line-height:1.35}.visa-card__meta-icon{opacity:.85;font-size:.92rem;line-height:1}html[data-theme=dark] .visa-card__meta-item{color:var(--color-text-muted)}.visa-card__visa,.visa-card__time,.visa-card__notes-inline{display:none}.visa-card__notes-label{font-weight:600;font-size:inherit;letter-spacing:normal;text-transform:none;color:inherit;margin-right:.35rem}.visa-card__badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;gap:.4rem;padding:.28rem .7rem;border-radius:999px;font-size:.74rem;font-weight:600;line-height:1.25;border:1px solid #fde68a;background:#fef9c3;color:#854d0e}.visa-card__badge-icon{line-height:1;font-size:.8rem}.visa-card__badge[data-status=preparing]{background:#fef9c3;color:#854d0e;border-color:#fde68a}.visa-card__badge[data-status=submitted],.visa-card__badge[data-status=additional-docs]{background:#ffedd5;color:#9a3412;border-color:#fed7aa}.visa-card__badge[data-status=processing]{background:#ede9fe;color:#5b21b6;border-color:#ddd6fe}.visa-card__badge[data-status=approved],.visa-card__badge[data-status=issued]{background:#dcfce7;color:#166534;border-color:#bbf7d0}.visa-card__badge[data-status=rejected]{background:#fee2e2;color:#991b1b;border-color:#fecaca}html[data-theme=dark] .visa-card__badge[data-status=preparing],html[data-theme=dark] .visa-card__badge[data-status=additional-docs]{background:#fb923c26;color:#fdba74;border-color:#fb923c59}html[data-theme=dark] .visa-card__badge[data-status=submitted]{background:#f59e0b24;color:#fcd34d;border-color:#f59e0b59}html[data-theme=dark] .visa-card__badge[data-status=processing]{background:#a78bfa2e;color:#ddd6fe;border-color:#a78bfa59}html[data-theme=dark] .visa-card__badge[data-status=approved],html[data-theme=dark] .visa-card__badge[data-status=issued]{background:#34d39924;color:#6ee7b7;border-color:#34d3994d}html[data-theme=dark] .visa-card__badge[data-status=rejected]{background:#f8717124;color:#fca5a5;border-color:#f8717159}html[data-theme=dark] .visa-card__badge{border-color:#4d4642}.visa-card__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.55rem;margin-top:.65rem;padding-top:0;border-top:none}.visa-card__action{margin:0;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer;border-radius:999px;padding:.34rem .78rem;border:1px solid transparent;transition:color .15s ease,border-color .15s ease,background .15s ease}.visa-card__action--delete{background:#fee2e2;border-color:#fca5a5;color:#b91c1c;text-decoration:none}.visa-card__action--delete:hover{color:#991b1b;background:#fecaca;border-color:#f87171;text-decoration:none}html[data-theme=dark] .visa-card__action--delete{color:var(--color-text-muted)}html[data-theme=dark] .visa-card__action--delete:hover{color:var(--color-text)}.visa-card__action--edit{background:#dbeafe;border-color:#bfdbfe;color:#1e40af;text-decoration:none}.visa-card__action--edit:hover{color:#1d4ed8;border-color:#93c5fd;background:#bfdbfe;text-decoration:none}html[data-theme=dark] .visa-card__action--edit{color:var(--color-text-muted)}html[data-theme=dark] .visa-card__action--edit:hover{color:var(--color-text)}.visa-card__visa{margin:0;font-size:.95rem;font-weight:500;color:#374151;line-height:1.4}.visa-tracker__footer{margin:1rem 0 0;text-align:center}.visa-tracker__footer small{color:var(--color-text-faint);font-size:.75rem}.visa-toast-stack{position:fixed;right:1rem;bottom:1rem;z-index:1400;display:grid;gap:.5rem;width:min(360px,calc(100vw - 1.5rem))}.visa-toast{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.65rem .75rem;border-radius:12px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:0 10px 18px -14px #11182799;font-size:.85rem}.visa-toast--success{border-color:#86efac;background:#f0fdf4;color:#166534}.visa-toast--error{border-color:#fca5a5;background:#fef2f2;color:#991b1b}.visa-toast__action{border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;padding:.2rem .6rem;font-size:.75rem;font-weight:600;cursor:pointer}.visa-confirm[hidden]{display:none!important}.visa-confirm{position:fixed;inset:0;z-index:1450;display:grid;place-items:center;padding:1rem}.visa-confirm__backdrop{position:absolute;inset:0;background:#11182773;backdrop-filter:blur(2px)}.visa-confirm__dialog{position:relative;width:min(420px,calc(100vw - 1.5rem));background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:1rem;box-shadow:0 20px 28px -24px #111827cc}.visa-confirm__title{margin:0 0 .4rem;font-size:1rem}.visa-confirm__text{margin:0 0 .9rem;font-size:.9rem;color:var(--color-text-muted);line-height:1.5}.visa-confirm__actions{display:flex;justify-content:flex-end;gap:.5rem}.visa-tracker{--tool-radius: 16px;--tool-border: color-mix(in srgb, var(--color-border) 86%, #d0d6de);--tool-shadow: 0 10px 20px -18px rgba(17, 24, 39, .5)}.visa-tracker .visa-tracker__panel,.visa-tracker .visa-card{border-radius:var(--tool-radius);border-color:var(--tool-border);box-shadow:var(--tool-shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.visa-tracker .visa-card:hover{transform:translateY(-1px);box-shadow:0 14px 24px -22px #111827a6;border-color:color-mix(in srgb,var(--color-primary) 24%,var(--tool-border))}.visa-tracker__empty{border:1px dashed var(--tool-border);border-radius:12px;padding:.85rem .95rem;background:color-mix(in srgb,var(--color-surface) 95%,#f7f8fa)}.visa-tracker .visa-btn,.visa-tracker .visa-card__action{transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,color .16s ease}.visa-tracker .visa-btn:hover,.visa-tracker .visa-card__action:hover{transform:translateY(-1px)}.visa-tracker .visa-btn:focus-visible,.visa-tracker .visa-card__action:focus-visible,.visa-tracker .col-field-control:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 24%,transparent)}.visa-tracker .visa-card__badge{font-weight:700}@media(max-width:768px){.visa-tracker .visa-tracker__title{font-size:1rem;line-height:1.3}.visa-tracker .visa-card__title{font-size:clamp(.98rem,5vw,1.12rem);line-height:1.26}.visa-tracker .visa-card__id,.visa-tracker .visa-card__meta-item{font-size:.78rem;line-height:1.5}}html[data-theme=dark] .visa-tracker{--tool-border: color-mix(in srgb, var(--color-border) 78%, #3a4048);--tool-shadow: 0 12px 24px -20px rgba(0, 0, 0, .78)}.visa-modal[hidden]{display:none!important}.visa-modal:not([hidden]){position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem}.visa-modal__backdrop{position:absolute;inset:0;background:#0000008c;backdrop-filter:blur(4px)}.visa-modal__dialog{position:relative;z-index:1;width:min(36rem,calc(100vw - 1.5rem));max-height:min(88vh,40rem);overflow:hidden;display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px oklch(from var(--color-border) l c h / .5)}[data-theme=dark] .visa-modal__dialog{box-shadow:0 25px 50px -12px #00000080,0 0 0 1px oklch(from var(--color-border) l c h / .35)}.visa-modal__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1.15rem 1.25rem 1rem;border-bottom:1px solid var(--color-border);background:linear-gradient(180deg,oklch(from var(--color-surface-2) l c h / .65) 0%,var(--color-surface) 100%)}.visa-modal__title{margin:0;font-size:1.125rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text);line-height:1.25}.visa-modal__close{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex-shrink:0;border:1px solid var(--color-border);background:var(--color-surface-2);font-size:1.25rem;line-height:1;cursor:pointer;color:var(--color-text-muted);border-radius:12px;transition:background .15s ease,color .15s ease,border-color .15s ease}.visa-modal__close:hover{color:var(--color-text);background:var(--color-surface-offset);border-color:var(--color-text-faint)}.visa-modal__body{padding:1.25rem 1.35rem 1.35rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.visa-checklist{display:flex;flex-direction:column;gap:1.25rem}.visa-checklist__preface{padding:1.05rem 1.15rem;border-radius:14px;background:var(--color-accent-soft);border:1px solid oklch(from var(--color-accent) l c h / .28);display:flex;flex-direction:column;gap:.95rem}.visa-checklist__intro{margin:0;font-size:.9rem;line-height:1.55;color:var(--color-text);opacity:.92}.visa-checklist__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.visa-checklist__meta-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-accent)}.visa-checklist__pill{display:inline-flex;align-items:center;padding:.35rem .85rem;font-size:.8125rem;font-weight:600;font-family:ui-monospace,monospace;color:var(--color-accent);background:var(--color-surface);border:1px solid oklch(from var(--color-accent) l c h / .4);border-radius:999px}.visa-checklist__progress-block{display:flex;flex-direction:column;gap:.5rem;padding:.85rem 1rem;border-radius:14px;background:var(--color-surface-2);border:1px solid var(--color-border)}.visa-checklist__progress-block--in-preface{padding:.75rem 0 0;margin-top:.15rem;border-radius:0;background:transparent;border:none;border-top:1px dashed oklch(from var(--color-accent) l c h / .35)}.visa-checklist__progress-top{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.visa-checklist__progress-caption{font-size:.8125rem;font-weight:600;color:var(--color-text)}.visa-checklist__count{font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-accent);white-space:nowrap}.visa-checklist__bar{width:100%;height:10px;background:oklch(from var(--color-border) l c h / .55);border-radius:999px;overflow:hidden}.visa-checklist__fill{height:100%;width:0%;min-width:0;background:var(--color-primary);border-radius:999px;transition:width .35s ease,background .2s ease}.visa-checklist__list-section{padding-top:.15rem}.visa-checklist__list-heading{margin:0 0 .7rem;padding-bottom:.45rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);border-bottom:2px solid var(--color-primary);max-width:max-content}.visa-checklist__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.visa-checklist__item{display:flex;align-items:flex-start;gap:.85rem;padding:.85rem 1rem;border-radius:14px;border:1px solid var(--color-border);background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.visa-checklist__item:hover{border-color:oklch(from var(--color-primary) l c h / .35);box-shadow:0 2px 8px oklch(from var(--color-text) l c h / .06)}.visa-checklist__item:has(.visa-checklist__checkbox:checked){background:oklch(from var(--color-primary) l c h / .06);border-color:oklch(from var(--color-primary) l c h / .4)}.visa-checklist__checkbox{appearance:none;-webkit-appearance:none;width:1.35rem;height:1.35rem;margin:.1rem 0 0;flex-shrink:0;border:2px solid var(--color-border);border-radius:6px;background:var(--color-surface);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.visa-checklist__checkbox:hover{border-color:var(--color-primary)}.visa-checklist__checkbox:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-primary-soft)}.visa-checklist__checkbox:checked{background:var(--color-primary);border-color:var(--color-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");background-size:.85rem;background-position:center;background-repeat:no-repeat}.visa-checklist__label{flex:1;min-width:0;font-size:.9rem;line-height:1.45;color:var(--color-text);cursor:pointer;padding-top:.05rem}.visa-checklist__foot{display:flex;flex-direction:column;gap:.75rem;margin-top:.15rem;padding:1.1rem 1rem 1rem;border-radius:14px;background:linear-gradient(180deg,oklch(from var(--color-surface-2) l c h / .9) 0%,var(--color-surface-2) 100%);border:1px solid var(--color-border);box-shadow:inset 0 1px oklch(from var(--color-text) l c h / .04)}.visa-checklist__foot-label{margin:0;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-faint)}.visa-checklist__foot-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}@media(max-width:400px){.visa-checklist__foot-buttons{grid-template-columns:1fr}}.visa-checklist__btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.55rem 1rem;font-size:.875rem;font-weight:600;border-radius:12px;cursor:pointer;border:2px solid transparent;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .1s ease,box-shadow .15s ease}.visa-checklist__btn:active{transform:scale(.98)}.visa-checklist__btn--reset{background:var(--color-surface);color:var(--color-text);border-color:#d97706;box-shadow:0 1px 2px oklch(from var(--color-text) l c h / .06)}.visa-checklist__btn--reset:hover{background:oklch(.97 .04 75);border-color:#b45309;color:#92400e}[data-theme=dark] .visa-checklist__btn--reset{background:var(--color-surface);border-color:#f59e0b;color:#fcd34d}[data-theme=dark] .visa-checklist__btn--reset:hover{background:#f59e0b1f;border-color:#fbbf24;color:#fde68a}.visa-checklist__btn--export{background:var(--color-accent);color:var(--color-text-inverse, #fff);border-color:var(--color-accent);box-shadow:0 2px 8px oklch(from var(--color-accent) l c h / .35)}.visa-checklist__btn--export:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:0 3px 12px oklch(from var(--color-accent) l c h / .45)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.newsletter-offline-text[data-astro-cid-adege4ql]{margin:0;font-size:var(--text-sm, .875rem);line-height:1.5;color:var(--color-text-muted)}.community-card--coming-soon[data-astro-cid-adege4ql]{max-width:680px;margin-inline:auto}
