:root{--paper:#f6f1e8;--card:#fffcf7;--ink:#1a2330;--mute:#5e6b78;--line:#e4d9c8;--horizon:#0e6b66;--horizon-hover:#0a5450;--under-fg:#2c6a56;--under-bg:#e4f0ea;--tight-fg:#8a5a10;--tight-bg:#f6ebd3;--over-fg:#8f3b32;--over-bg:#f6e4e0;--bg:var(--paper);--surface:var(--card);--text:var(--ink);--text-muted:var(--mute);--heading:var(--ink);--border:var(--line);--accent:var(--horizon);--accent-hover:var(--horizon-hover);--accent-soft:var(--under-bg);--safe:var(--under-fg);--safe-bg:var(--under-bg);--tight:var(--tight-fg);--over:var(--over-fg);--shadow:0 1px 2px #1a23300f, 0 8px 24px #1a23300d;--radius:12px;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}*,:before,:after{box-sizing:border-box}body{background:var(--paper);min-width:320px;color:var(--ink);margin:0}#root{min-height:100svh}h1,h2,h3{color:var(--ink);margin:0 0 .6rem;font-weight:650;line-height:1.2}h1{letter-spacing:-.02em;font-size:1.75rem}h2{font-size:1.15rem}h3{font-size:1.05rem}p{margin:0 0 .85rem}a{color:var(--horizon)}code{font-family:var(--mono);background:var(--under-bg);border-radius:4px;padding:.1em .35em;font-size:.9em}img{max-width:100%}button,input,select{font:inherit}.shell{background:var(--paper);flex-direction:column;max-width:720px;min-height:100svh;margin:0 auto;display:flex}.site-header{z-index:20;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem 1rem;display:flex;position:relative}.brand{color:var(--ink);letter-spacing:-.02em;border-bottom:3px solid var(--horizon);flex-shrink:0;padding-bottom:.1rem;font-weight:750;line-height:1.2;text-decoration:none}.site-nav{flex-flow:row;align-items:center;gap:.1rem;width:auto;margin-left:auto;display:flex}.nav-link{color:var(--mute);cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:inherit;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:.45rem .55rem;text-decoration:none}.nav-link:hover{color:var(--horizon)}.nav-link.active{color:var(--horizon);border-bottom-color:color-mix(in srgb, var(--horizon) 35%, transparent);background:0 0}.nav-more{position:relative}.nav-more-btn{align-items:center;display:inline-flex}.more-panel{z-index:30;background:var(--paper);border:1px solid var(--line);min-width:12rem;box-shadow:var(--shadow);border-radius:10px;flex-direction:column;gap:.1rem;padding:.35rem;display:flex;position:absolute;top:calc(100% + .35rem);right:0}.more-link{color:var(--mute);border-bottom:none;border-radius:6px;padding:.5rem .65rem;font-size:.95rem;text-decoration:none}.more-link:hover{color:var(--horizon);background:color-mix(in srgb, var(--horizon) 8%, transparent)}.more-link.active{color:var(--horizon);font-weight:600}@media (width<=719px){.header-inner{flex-wrap:wrap}.site-nav{justify-content:flex-start;gap:.05rem;width:100%}.nav-more{position:static}.more-panel{border-left:none;border-right:none;border-radius:0;width:100%;min-width:0;position:absolute;top:100%;left:0;right:0;box-shadow:0 8px 16px #1a233014}}.site-main{text-align:left;flex:1;padding:1.25rem 1rem 2rem}.site-footer{border-top:1px solid var(--line);color:var(--mute);background:var(--card);padding:1.25rem 1rem 1.75rem;font-size:.875rem}.site-footer a{color:var(--horizon)}.footer-disclaimer{color:var(--ink)}.footer-note{color:var(--ink);margin-bottom:0;font-weight:600}.hero-block{margin-bottom:1.5rem}.lede{color:var(--mute);font-size:1.05rem}.cta-row{flex-direction:column;gap:.65rem;margin:1.25rem 0;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.7rem 1rem;font-weight:600;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.btn-primary{background:var(--horizon);color:#fffcf7}.btn-primary:hover{background:var(--horizon-hover);color:#fffcf7}.btn-secondary{background:var(--paper);color:var(--ink);border-color:var(--line)}.btn-secondary:hover{border-color:var(--horizon);color:var(--horizon)}.btn-ghost{color:var(--mute);background:0 0;border-color:#0000}.btn-ghost:hover{color:var(--over-fg)}.btn-small{padding:.35rem .6rem;font-size:.875rem}.tile-grid{grid-template-columns:1fr;gap:.75rem;margin-bottom:1.75rem;display:grid}.tile{background:var(--card);border:1px solid var(--line);color:inherit;box-shadow:var(--shadow);border-radius:12px;padding:1rem;text-decoration:none;display:block}.tile:hover{border-color:var(--horizon)}.tile h2{color:var(--horizon);margin-bottom:.35rem}.tile p{color:var(--mute);margin:0;font-size:.95rem}.who-block{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;padding:1rem 1.1rem}.who-block ul{margin:0;padding-left:1.1rem}.who-block li+li{margin-top:.5rem}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;margin-bottom:1rem;padding:1rem}.form-card .field{margin-bottom:.85rem}.form-grid{gap:.75rem;margin-bottom:.85rem;display:grid}.field{flex-direction:column;gap:.3rem;font-size:.92rem;display:flex}.field>span{color:var(--ink);font-weight:600}.field input,.field select{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;padding:.55rem .65rem}.field input:focus,.field select:focus{outline:2px solid var(--horizon);outline-offset:1px}.checkbox-field{flex-direction:row;align-items:flex-start;gap:.55rem}.checkbox-field input{margin-top:.25rem}.muted{color:var(--mute)}.small{font-size:.85rem}.toolbar{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.trip-list{margin:0;padding:0;list-style:none}.trip-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem 0;display:flex}.trip-list li:last-child{border-bottom:none;padding-bottom:0}.result-card .result-hero{text-align:center;margin:.75rem 0 1rem}.hero-remaining{color:var(--horizon);letter-spacing:-.03em;font-size:48px;font-weight:750;line-height:1.05;display:block}.hero-remaining-label{color:var(--mute);margin-top:.2rem;font-size:.95rem;display:block}.result-card .result-numbers{text-align:center;grid-template-columns:1fr 1fr;align-items:start;gap:.75rem;margin:.75rem 0 1rem;display:grid}.big-num{color:var(--ink);letter-spacing:-.03em;font-size:1.5rem;font-weight:750;line-height:1.1;display:block}.used-num{color:var(--ink);letter-spacing:-.02em;font-size:1.35rem;font-weight:700;line-height:1.1;display:block}.num-label{color:var(--mute);margin-top:.25rem;font-size:.8rem;display:block}.status-pill{border-radius:8px;padding:.35rem .65rem;font-size:.95rem;font-weight:700;line-height:1.3;display:inline-block}.status-safe .status-pill,.status-pill.status-safe{color:var(--under-fg);background:var(--under-bg)}.status-tight .status-pill,.status-pill.status-tight{color:var(--tight-fg);background:var(--tight-bg)}.status-over .status-pill,.status-pill.status-over{color:var(--over-fg);background:var(--over-bg)}.result-card.status-safe{border-color:var(--under-bg);background:var(--card)}.result-card.status-tight{border-color:var(--tight-bg);background:var(--card)}.result-card.status-over{border-color:var(--over-bg);background:var(--card)}.bar-block{margin:1rem 0}.bar-label{color:var(--ink);margin-bottom:.35rem;font-size:.9rem;font-weight:600}.progress-track{background:var(--line);border-radius:999px;height:12px;overflow:hidden}.progress-fill{background:var(--horizon);border-radius:999px;height:100%;transition:width .12s}.status-tight .progress-fill{background:var(--tight-fg)}.status-over .progress-fill{background:var(--over-fg)}.status-safe .progress-fill{background:var(--under-fg)}.qa-block{margin-bottom:1.25rem}.guide-table{border-collapse:collapse;width:100%;margin:.75rem 0 1rem;font-size:.95rem}.guide-table th,.guide-table td{border:1px solid var(--line);text-align:left;color:var(--ink);vertical-align:top;padding:.5rem .65rem}.guide-table th{background:var(--card);font-weight:650}.footer-guides{margin-bottom:.75rem}.link-list,.plain-list{padding-left:1.1rem}.plain-list li+li{margin-top:.65rem}.disclaimer{color:var(--mute);border-left:3px solid var(--line);margin-top:1rem;padding-left:.75rem;font-size:.9rem}.chip-row{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border:1px solid var(--line);background:var(--card);cursor:pointer;color:var(--ink);border-radius:999px;padding:.35rem .7rem;font-size:.875rem}.chip.active{background:var(--under-bg);border-color:var(--horizon);color:var(--horizon);font-weight:600}.compare-grid{gap:.75rem;margin-bottom:1rem;display:grid}.compare-card .big-dims{color:var(--ink);margin:.35rem 0;font-size:1.35rem;font-weight:700}.fit-pass{color:var(--under-fg);font-weight:700}.fit-fail{color:var(--over-fg);font-weight:700}.photo-layout{background:var(--paper);border:1px solid var(--line);border-radius:8px;justify-content:center;margin:1rem 0;padding:1rem;display:flex}.photo-frame{border:2px dashed var(--horizon);background:var(--card);justify-content:center;align-items:center;max-width:100%;display:flex;overflow:hidden}.photo-frame img{object-fit:cover;width:100%;height:100%}.stamp-preview-img{object-fit:contain;border-radius:6px;max-width:100%;max-height:280px}.stamp-assist .field-error{color:var(--over-fg);background:var(--over-bg);border-radius:8px;margin:.35rem 0 .75rem;padding:.55rem .75rem;font-size:.92rem}.stamp-assist .success-line{color:var(--horizon);background:var(--paper);border:1px solid var(--line);border-radius:8px;margin:.35rem 0 .75rem;padding:.55rem .75rem;font-size:.92rem}.stamp-assist .btn-primary:disabled{opacity:.45;cursor:not-allowed}@media (width>=480px){.cta-row{flex-flow:wrap}.tile-grid{grid-template-columns:1fr 1fr}.form-grid.three-col,.compare-grid{grid-template-columns:repeat(3,1fr)}.hero-remaining{font-size:64px}}@media (width>=720px){h1{font-size:2rem}}.flights-page .form-grid{grid-template-columns:minmax(0,1fr);width:100%;max-width:100%}.flights-page .field{min-width:0;max-width:100%}.flights-page .field input:not([type=checkbox]),.flights-page .field select{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.flights-page .field select{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.flights-page .checkbox-field{flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:.55rem}.flights-page .checkbox-field input[type=checkbox]{flex:none;width:auto;min-width:auto;max-width:none;margin-top:.25rem}.flights-page .checkbox-field>span{flex:auto;min-width:0}.flights-page .card{max-width:100%;overflow-x:clip}.btn-primary:disabled,.btn:disabled{opacity:.45;cursor:not-allowed}.terms-gate h2{color:var(--horizon);margin-top:0}.terms-gate-check{margin:1rem 0}.unofficial-line{color:var(--mute);margin:.5rem 0 1rem;font-size:.95rem;font-weight:600}.estimate-note{color:var(--mute);margin:.35rem 0 .85rem;font-size:.95rem}.estimate-note a{color:var(--horizon)}.next-trip-fit h2{color:var(--horizon);margin-top:0}.next-trip-fit .preview-result{border:1px solid var(--line);background:var(--card);border-radius:10px;margin:.75rem 0 .25rem;padding:.75rem .85rem}.next-trip-fit .preview-result p{margin:.35rem 0}.next-trip-fit .field-error{color:var(--over-fg);background:var(--over-bg);border-radius:8px;margin:.35rem 0 .75rem;padding:.55rem .75rem;font-size:.92rem}.next-trip-fit .over-by{color:var(--over-fg);font-weight:600}.next-trip-fit .btn-primary:disabled{opacity:.45;cursor:not-allowed}.ees-companion h2{color:var(--horizon);margin-top:0}.ees-companion .link-list{margin:.5rem 0 1rem}.stay-timeline h2{color:var(--horizon);margin-top:0}.stay-timeline-summary{color:var(--mute);margin:0 0 .85rem;font-size:.95rem}.stay-timeline-visual{flex-direction:column;gap:.45rem;margin-bottom:.85rem;display:flex}.stay-timeline-month{grid-template-columns:4.5rem 1fr;align-items:start;gap:.4rem;display:grid}.stay-timeline-month-label{color:var(--mute);padding-top:.1rem;font-size:.72rem;font-weight:600;line-height:1.2}.stay-timeline-cells{flex-wrap:wrap;gap:2px;display:flex}.stay-timeline-cell{border-radius:2px;flex:none;width:8px;height:8px}.stay-timeline-cell.is-used{background:var(--horizon)}.stay-timeline-cell.is-free{background:var(--line)}.stay-timeline-cell.is-asof{outline:2px solid var(--ink);outline-offset:0;box-shadow:0 0 0 1px var(--card)}.stay-timeline-legend{color:var(--mute);flex-wrap:wrap;gap:.75rem 1.1rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.stay-timeline-legend li{align-items:center;gap:.35rem;display:inline-flex}.stay-timeline-swatch{border-radius:2px;flex:none;width:10px;height:10px;display:inline-block}.stay-timeline-swatch.is-used{background:var(--horizon)}.stay-timeline-swatch.is-free{background:var(--line)}.stay-timeline-swatch.is-asof{background:var(--card);outline:2px solid var(--ink);outline-offset:-1px}@media (width>=480px){.stay-timeline-cell{width:9px;height:9px}}.nationality-rules h2{color:var(--horizon);margin-top:0}.nationality-rules h3{color:var(--ink);margin:1rem 0 .5rem;font-size:1.05rem}.nationality-rules .field{margin-top:.75rem;margin-bottom:0}.nationality-rules-body .plain-list{margin:.35rem 0 .85rem}.nationality-rules-body .plain-list li+li{margin-top:.45rem}.nationality-rules-body .link-list{margin:.25rem 0 0}.home-nationality-note{margin-top:.75rem;font-size:.92rem}.prep-checklist h2,.prep-next-steps h2{color:var(--horizon);margin-top:0}.prep-list{margin:0;padding:0;list-style:none}.prep-item{border-bottom:1px solid var(--line);padding:.85rem 0}.prep-item:last-child{border-bottom:none;padding-bottom:0}.prep-item:first-child{padding-top:.25rem}.prep-check{margin:0}.prep-check input[type=checkbox]{flex:none;width:auto;min-width:auto;max-width:none;margin-top:.2rem}.prep-label{min-width:0;color:var(--ink);flex:auto;font-weight:600;line-height:1.35}.prep-help,.prep-links{margin:.35rem 0 0 1.7rem}.prep-next-steps{background:color-mix(in srgb, var(--card) 88%, var(--line))}.prep-placeholder-list{margin:.5rem 0 0}.prep-placeholder-list li+li{margin-top:.45rem}.prep-stay-link{margin:.35rem 0 1rem;font-size:.95rem}.prep-ees-link{margin:.65rem 0 0}.unit-toggle{border:1px solid var(--line);background:var(--card);border-radius:8px;gap:0;margin:0 0 1rem;display:inline-flex;overflow:hidden}.unit-btn{color:var(--mute);cursor:pointer;font:inherit;background:0 0;border:none;padding:.4rem .9rem;font-weight:600}.unit-btn+.unit-btn{border-left:1px solid var(--line)}.unit-btn.active{background:color-mix(in srgb, var(--horizon) 12%, var(--paper));color:var(--horizon)}.copy-estimate-row{flex-wrap:wrap;align-items:center;gap:.65rem;margin:.5rem 0 .85rem;display:flex}.next-full-block{margin:.75rem 0}
