/* Interior surfaces extend the approved homepage tokens. No calculator rules live here. */
.tp-inner pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;padding:20px;background:#edf4f2;border-radius:6px;font-size:13px}
.tp-inner .related-policies-compact>div{display:flex;flex-wrap:wrap;gap:8px 20px}
.tp-inner .related-policies-compact a{display:inline-flex;align-items:center;min-height:44px}
.tp-inner .booking-field-grid label+label{margin-top:0}
.tp-inner .page-main{width:min(1280px,calc(100% - 96px));margin:auto;padding-bottom:72px}
.tp-inner .page-main>*,.tp-inner form,.tp-inner label,.tp-inner article{min-width:0}
.tp-inner .page-hero{padding:48px 0 36px;border-bottom:1px solid var(--line);margin-bottom:32px}
.tp-inner .page-hero h1{font-size:clamp(2.5rem,4.1vw,3.8rem);max-width:24ch;margin-bottom:18px}
.tp-inner .page-hero p{max-width:76ch;font-size:15px;margin-bottom:18px}
.tp-inner .breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted);margin-bottom:22px}
.tp-inner .breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.tp-inner .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 0}
.tp-inner .internal-hero-visual{display:none}
.tp-inner .review-date{font-size:12px;margin:20px 0 0}
.tp-inner .content-section,.tp-inner .article-block,.tp-inner .publication-section,.tp-inner .sources-verification{margin:48px 0}
.tp-inner :is(h2){font-size:clamp(1.85rem,2.8vw,2.65rem);margin-bottom:20px;max-width:36ch}
.tp-inner :is(h3){font-size:18px;margin:24px 0 12px}
.tp-inner :is(p,li){max-width:76ch;overflow-wrap:break-word}
.tp-inner :is(p,ul,ol){margin-bottom:20px}
.tp-inner li{margin:8px 0}
.tp-inner ul,.tp-inner ol{padding-left:22px}
.tp-inner main :is(p,li,dd,td)>a,.tp-inner .inline-actions>a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:3px}
.tp-inner .button,.tp-inner button:not(.tp-menu-button),.tp-inner .text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 18px;border:1px solid #a4b8ba;border-radius:6px;background:#fff;color:var(--ink);font:650 13px/1.5 var(--ui);text-align:center;transition:background .18s,transform .18s}
.tp-inner .button-primary,.tp-inner button[type=submit]{background:var(--teal);color:#fff;border-color:var(--teal)}
.tp-inner .button:hover,.tp-inner button:not(.tp-menu-button):hover{background:#e7f0ee}
.tp-inner .button-primary:hover,.tp-inner button[type=submit]:hover{background:var(--teal-dark);color:#fff}
.tp-inner button:active{transform:translateY(1px)}
.tp-inner button:disabled{cursor:not-allowed;opacity:.6}
.tp-inner :is(.mode-button.active,[aria-pressed=true]){background:var(--ocean)!important;color:#fff!important;border-color:var(--ocean)!important}
.tp-inner :is(.tool-action-row,.planner-actions,.result-actions,.tool-example-row,.example-row,.mode-grid,.inline-actions,.passport-actions){display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.tp-inner :is(.planning-tool,.tool-form,.moat-form,.booking-input-panel){background:#fff;border:1px solid var(--line);border-radius:10px;padding:30px}
.tp-inner :is(.tool-input-grid,.planner-grid,.currency-control-grid,.form-grid,.moat-form-grid,.cost-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.tp-inner label{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.5;font-weight:650;color:var(--ink)}
.tp-inner :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea){width:100%;min-width:0;max-width:100%;min-height:47px;border:1px solid #96adb1;border-radius:6px;padding:11px 12px;background:#fff;color:var(--ink);font:400 14px/1.5 var(--ui)}
.tp-inner textarea{resize:vertical;min-height:150px}
.tp-inner :is(input,select,textarea):focus{outline:3px solid #ce853f;outline-offset:2px}
.tp-inner :is(input,textarea)::placeholder{color:#5b7076}
.tp-inner :is(input[type=checkbox],input[type=radio]){width:19px;height:19px;flex:none;margin:2px 4px 0 0;accent-color:var(--teal-dark)}
.tp-inner label:has(>input[type=checkbox]),.tp-inner label:has(>input[type=radio]){flex-direction:row;align-items:flex-start;font-weight:400;min-height:36px}
.tp-inner :is(fieldset){min-width:0;border:1px solid var(--line);border-radius:8px;padding:22px;margin:24px 0}
.tp-inner legend{font:700 15px/1.5 var(--ui);padding:0 8px;color:var(--ink)}
.tp-inner fieldset label+label{margin-top:12px}
.tp-inner .verification-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tp-inner .verification-options label+label{margin:0}
.tp-inner :is(.tool-disclaimer,.tool-help,.field-help,.source-note,.copy-status,.currency-status,.currency-explanation,.passport-status){font-size:12px;line-height:1.7;color:var(--muted)}
.tp-inner :is(.tool-error,.field-error,[data-state=error]){color:#8b2b22!important;background:#fff1ec!important;border-color:#ba6556!important}
.tp-inner .tool-result,.tp-inner .moat-result,.tp-inner .ai-output-card{display:block;background:#edf4f2;border:1px solid #bacdca;border-radius:10px;padding:28px;min-height:150px;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);font:400 14px/1.7 var(--ui)}
.tp-inner .tool-result:has(>div),.tp-inner .moat-result,.tp-inner .ai-output-card{white-space:normal}
.tp-inner .tool-result h2,.tp-inner .moat-result h2{font-size:28px}
.tp-inner .result-empty{padding:22px 0}
.tp-inner .result-empty>strong{font:400 30px/1.2 var(--display);display:block;margin-bottom:18px}
.tp-inner .result-empty p{max-width:42ch}
.tp-inner .result-summary{padding-bottom:20px;border-bottom:1px solid #bacdca;margin-bottom:24px}
.tp-inner .result-summary h2{margin-bottom:12px}
.tp-inner .result-callout{background:#fff;padding:22px;border-radius:6px;margin:24px 0}
.tp-inner .result-callout p:last-child{margin-bottom:0}
.tp-inner .result-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.tp-inner .result-actions{margin-bottom:0}
.tp-inner .passport-panel{margin:0 0 24px;border-bottom:1px solid var(--line);padding:0 0 18px}
.tp-inner .passport-details>summary{font-weight:650;color:var(--teal-dark)}
.tp-inner .passport-body{padding-top:18px}.tp-inner .passport-copy{max-width:76ch;font-size:13px}
.tp-inner .passport-import{position:relative;overflow:hidden}.tp-inner .passport-import input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}
.tp-inner .passport-conflict-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:14px 0}
.tp-inner .passport-conflict-row strong{grid-column:1/-1}
.tp-inner details{border-bottom:1px solid var(--line);padding:16px 0}
.tp-inner summary{font-weight:650;min-height:28px;line-height:1.6}
.tp-inner details>p{margin:16px 0 4px}
.tp-inner .currency-panel{background:#f0f5f3;border-radius:8px;padding:20px;margin-bottom:26px}
.tp-inner .currency-panel-heading{display:flex;gap:12px;justify-content:space-between;margin-bottom:16px;font-size:12px}
.tp-inner .currency-panel-heading strong{font-size:14px}.tp-inner .currency-status{margin:14px 0 0}
.tp-inner .currency-explanation{padding-bottom:0;border:0}
.tp-inner :is(.table-wrap,.guide-table-wrap){max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:8px;margin:24px 0}
.tp-inner table{width:100%;border-collapse:collapse;text-align:left;font-size:13px;line-height:1.65;background:#fff}
.tp-inner :is(th,td){padding:16px 18px;border-bottom:1px solid var(--line);vertical-align:top;min-width:140px}
.tp-inner th{background:#e9f0ee;font-weight:700;color:var(--ink)}
.tp-inner tr:last-child td{border:0}
.tp-inner :is(.two-column-section,.article-two-col,.article-two-column,.check-grid,.decision-grid,.guide-grid){display:grid;grid-template-columns:1fr 1fr;gap:38px}
.tp-inner :is(.check-panel,.answer-box,.guide-callout,.article-callout){padding:24px;background:#eaf1ef;border:0;border-radius:8px}
.tp-inner .answer-box{margin:28px 0;max-width:90ch}.tp-inner .answer-box p{margin:10px 0 0}
.tp-inner .product-tool-summary{display:grid;grid-template-columns:1fr 1.8fr;gap:32px;padding:28px 0;border-block:1px solid var(--line);margin:32px 0}
.tp-inner .product-tool-summary h2{font-size:28px}.tp-inner .product-tool-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.tp-inner .product-tool-columns p{font-size:13px}.tp-inner .product-tool-columns strong{display:block;margin-bottom:8px;color:var(--ink)}
.tp-inner .product-tool-columns>a{grid-column:1/-1;color:var(--teal-dark);text-decoration:underline}
.tp-inner .tool-workflow{display:flex;flex-wrap:wrap;gap:14px 28px;margin:24px 0;color:var(--muted);font-size:13px}
.tp-inner .tool-workflow b{color:var(--teal-dark);margin-right:8px}
.tp-inner .worked-example{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:32px 0}
.tp-inner .worked-example-heading{grid-column:1/-1}.tp-inner .worked-example h3{margin-top:0}
.tp-inner .worked-example dl>div{display:grid;grid-template-columns:100px 1fr;gap:16px;margin-bottom:12px}.tp-inner dd{margin-left:0}
.tp-inner .sources-verification{padding:28px 0;border-block:1px solid var(--line)}
.tp-inner .sources-verification h2{font-size:28px}.tp-inner .sources-verification p,.tp-inner .sources-verification li{font-size:13px}
.tp-inner .page-toc{display:flex;flex-wrap:wrap;gap:10px 24px;padding:20px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--teal-dark)}
.tp-inner .page-toc a{text-decoration:underline;text-underline-offset:4px}
.tp-inner .related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 36px}
.tp-inner .related-grid a{display:grid;gap:5px;color:var(--ink);text-decoration:none;padding-top:16px;border-top:1px solid var(--line)}
.tp-inner .related-grid a strong{color:var(--teal-dark)}
.tp-inner .related-grid a span{font-size:14px;line-height:1.55}
/* Flagship planner: a complete brief alongside the actual generated output. */
.tp-planner #planner-tool{margin-top:0}
.tp-planner .planner-pro-form{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px 34px;align-items:start}
.tp-planner .planner-pro-form>div,.tp-planner .planner-pro-form>fieldset,.tp-planner .planner-pro-form>noscript{grid-column:1}
.tp-planner .tool-form-heading h2{font-size:32px}.tp-planner .tool-form-heading p{font-size:13px;margin-bottom:0}
.tp-planner .planner-pro-form>.ai-output-card{grid-column:2;grid-row:1/8;position:sticky;top:24px}
.tp-planner .ai-output-heading strong{font:400 29px/1.25 var(--display);display:block;margin-bottom:16px}
.tp-planner .ai-output-heading p{font-size:13px}.tp-planner #planner-result{min-height:440px;background:#fff;font-size:13px;line-height:1.8}
.tp-planner .planner-actions,.tp-planner .mode-grid,.tp-planner .example-row,.tp-planner .verification-options{margin:0}
.tp-planner .mode-button{padding:9px 13px}.tp-planner .verification-options{grid-template-columns:1fr}
@media(max-width:1024px){.tp-inner .page-main{width:calc(100% - 56px)}.tp-inner .page-hero{padding-top:36px}.tp-inner .product-tool-summary{grid-template-columns:1fr}.tp-inner .result-columns{grid-template-columns:1fr}.tp-planner .planner-pro-form{grid-template-columns:1fr}.tp-planner .planner-pro-form>.ai-output-card{grid-column:1;grid-row:auto;position:static}.tp-planner #planner-result{min-height:360px}}
@media(max-width:640px){.tp-inner .page-main{width:calc(100% - 36px);padding-bottom:40px}.tp-inner .page-hero{padding:28px 0;margin-bottom:26px}.tp-inner .page-hero h1{font-size:2.45rem;max-width:100%;overflow-wrap:break-word}.tp-inner .page-hero p{font-size:14px}.tp-inner .content-section,.tp-inner .article-block,.tp-inner .publication-section{margin:34px 0}.tp-inner :is(.planning-tool,.tool-form,.moat-form,.booking-input-panel){padding:20px 16px}.tp-inner :is(.tool-input-grid,.planner-grid,.currency-control-grid,.form-grid,.moat-form-grid,.cost-grid,.verification-options,.two-column-section,.article-two-col,.article-two-column,.check-grid,.decision-grid,.guide-grid,.product-tool-columns,.worked-example){grid-template-columns:1fr;gap:18px}.tp-inner fieldset{padding:18px 14px}.tp-inner .button,.tp-inner button:not(.tp-menu-button){padding:10px 14px}.tp-inner .hero-actions .button{flex:1 1 auto}.tp-inner .tool-result,.tp-inner .moat-result,.tp-inner .ai-output-card{padding:22px 18px}.tp-inner .currency-panel{padding:16px}.tp-inner .currency-panel-heading{display:block}.tp-inner .currency-panel-heading span{display:block;margin-top:6px}.tp-inner .worked-example-heading{grid-column:auto}.tp-inner .tool-workflow{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:12px}.tp-inner :is(th,td){padding:13px}.tp-inner .passport-conflict-row{grid-template-columns:1fr}.tp-inner .passport-conflict-row strong{grid-column:auto}.tp-planner .planner-pro-form{gap:24px}.tp-planner #planner-result{min-height:350px}.tp-inner label,.tp-inner :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:14px}}
@media print{.tp-inner .page-main{width:100%}.tp-inner .page-hero{padding:10px 0}.tp-inner .passport-panel,.tp-inner .hero-actions,.tp-inner .tool-action-row,.tp-inner .result-actions,.tp-inner .planner-actions{display:none!important}.tp-inner .moat-tool-shell,.tp-inner .planner-pro-form{display:block!important}.tp-inner .ai-output-card{position:static!important}.tp-inner details{break-inside:avoid}.tp-inner .tool-result,.tp-inner .moat-result{background:#fff;border:1px solid #aaa}.tp-inner .table-wrap,.tp-inner .guide-table-wrap{overflow:visible}.tp-inner th,.tp-inner td{min-width:0}}

/* Task-specific layouts share the approved tokens. */
.tp-inner .booking-score{display:flex;align-items:center;gap:18px;background:var(--ocean);color:#fff;border-radius:8px;padding:20px;margin:24px 0}.tp-inner .booking-score strong{font-size:52px;line-height:1}.tp-inner .booking-score span{font-size:13px;max-width:15ch}
.tp-inner .booking-category-scores{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}.tp-inner .booking-category-scores>div{display:flex;justify-content:space-between;gap:12px;font-size:12px;border-bottom:1px solid #bacdca;padding-bottom:10px}.tp-inner .booking-category-scores strong{font-size:18px;color:var(--teal-dark);white-space:nowrap;flex-shrink:0}
.tp-inner .booking-issue dt{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--teal-dark);margin-top:12px}.tp-inner .booking-issue dd{font-size:13px;margin-top:3px}
.tp-inner .booking-field-grid label+label{margin-top:0}
.tp-inner .moat-tool-shell{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.tp-inner .tool-section-heading h2{font-size:30px}.tp-inner .tool-section-heading p{font-size:13px}
.tp-inner .moat-actions,.tp-inner .booking-submit-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.tp-inner .method-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 44px}.tp-inner .method-grid article{border-top:1px solid var(--line)}
.tp-inner .passport-details>summary strong{margin-right:16px}.tp-inner .passport-details>summary>span{margin-left:12px;font-weight:400;font-size:12px}
.tp-inner .page-toc ol{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;padding:0;margin:0}.tp-inner .page-toc li{margin:0}
.tp-inner .warning-block,.tp-inner .verification-warning{padding:24px;background:#f6e7d8;border:1px solid #d6b99a;border-radius:8px;margin:28px 0}.tp-inner .warning-block p{margin:10px 0 0}
.tp-inner .tp-output-panel{background:#eaf2ef;border:1px solid #bbcfca;border-radius:10px;padding:26px;min-width:0}
.tp-inner .tp-output-panel details{border:0;padding:12px 0 0}.tp-inner .tp-output-panel output{background:transparent;border:0;padding:16px 0;font-size:13px}
.tp-inner .tp-output-visual h3{font:400 29px/1.25 var(--display);margin-top:0}.tp-inner .tp-output-visual>section+section{border-top:1px solid #bbcfca;padding-top:24px;margin-top:24px}
.tp-inner .tp-output-visual p{font-size:13px}.tp-inner .tp-budget-total{display:block;font-size:38px;line-height:1.2;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--teal-dark);margin:20px 0 12px}
.tp-inner .tp-output-visual dl{margin:28px 0}.tp-inner .tp-output-visual dl>div{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #bbcfca;font-size:13px}.tp-inner .tp-output-visual dd{font-weight:700;text-align:right;white-space:nowrap}
.tp-budget .budget-tool{display:grid;grid-template-columns:1.15fr 1fr;gap:24px 34px;align-items:start}.tp-budget .budget-tool>*{grid-column:1}.tp-budget .budget-tool>.tp-output-panel{grid-column:2;grid-row:2/6;position:sticky;top:24px}.tp-budget .budget-tool>.tool-example-row{grid-column:1/-1;margin-top:0}.tp-budget .currency-panel,.tp-budget .tool-action-row{margin:0}
.tp-reality .score-header{padding:24px;background:var(--ocean);color:#fff;border-radius:8px;display:grid;grid-template-columns:1fr auto;align-items:center}.tp-reality .score-header>strong{font-size:58px;line-height:1.1;grid-column:2;grid-row:1/3;font-variant-numeric:tabular-nums}.tp-reality .score-header small{font-size:18px;color:#d7e6e6}.tp-reality .score-header p{color:#fff;margin:6px 0 0}.tp-reality .score-header>span{font-size:14px}
.tp-inner .subscore-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.tp-inner .subscore-grid>div{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:12px}.tp-inner meter{width:100%;grid-column:1/-1;accent-color:var(--teal)}
.tp-inner .deduction-list{list-style:none;padding:0}.tp-inner .deduction-list li{display:flex;gap:14px}.tp-inner .deduction-list b{color:#8b2b22;font-size:18px;min-width:30px}.tp-inner .deduction-list strong{display:block;margin-bottom:4px}
.tp-inner .comparison-columns,.tp-inner .comparison-results{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tp-flight-cost .moat-tool-shell{grid-template-columns:1.35fr 1fr}.tp-inner .comparison-columns fieldset{margin-bottom:0;padding:20px 16px}.tp-inner .comparison-result{padding:20px;background:#fff;border-radius:8px;border:1px solid var(--line)}.tp-inner .comparison-result.is-best{border-color:var(--teal);background:#f5fbf8}.tp-inner .comparison-result>strong{font-size:30px;display:block;font-variant-numeric:tabular-nums}.tp-inner .comparison-result>span,.tp-inner .comparison-result small{font-size:12px;color:var(--muted)}.tp-inner .comparison-result h3{margin-top:14px}.tp-inner .comparison-result p{font-size:12px}
.tp-inner .booking-tool-shell{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;align-items:start}.tp-inner .booking-form{background:#fff;border:1px solid var(--line);border-radius:10px;padding:30px}.tp-inner .booking-result{position:sticky;top:24px}.tp-inner .booking-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tp-inner .booking-span-two{grid-column:1/-1}.tp-inner .booking-step{margin:30px 0}.tp-inner .booking-step-heading{display:flex;gap:16px}.tp-inner .booking-step-heading>span{font:400 28px/1.3 var(--display);color:var(--teal-dark)}.tp-inner .booking-step-heading h3{margin-top:0}.tp-inner .booking-step-heading p{font-size:12px}.tp-inner .booking-step fieldset{margin-block:20px}.tp-inner .booking-check-row{margin-top:18px}.tp-inner .booking-mode{display:flex;flex-wrap:wrap;gap:18px}.tp-inner .booking-mode label+label{margin:0}.tp-inner .booking-status{font-size:13px}.tp-inner .booking-repeat-list fieldset{background:#f5f8f6}.tp-inner .booking-issue,.tp-inner .booking-finding{padding:20px 0;border-bottom:1px solid #bbcfca}
.tp-baggage .baggage-tool{display:grid;grid-template-columns:1.2fr 1fr;gap:24px 34px;align-items:start}.tp-baggage .baggage-tool>*{grid-column:1}.tp-baggage .baggage-tool>.tp-output-panel{grid-column:2;grid-row:1/5;position:sticky;top:24px}
.tp-inner .measurement-diagram{display:flex;align-items:center;gap:48px;margin:24px 0;padding:32px;background:#eaf2ef;border-radius:10px}.tp-inner .bag-outline{width:160px;height:200px;flex:none;position:relative;background:url('/assets/icons/luggage.svg') center/120px no-repeat;border:1px dashed #7f9fa3}.tp-inner .bag-outline span{position:absolute;font-size:12px;font-weight:700;color:var(--teal-dark);background:#eaf2ef;padding:0 5px}.tp-inner .measure-height{left:-28px;top:90px;transform:rotate(-90deg)}.tp-inner .measure-width{left:50px;bottom:-13px}.tp-inner .measure-depth{right:-30px;top:25px}.tp-inner .measurement-diagram figcaption{max-width:56ch;font-size:14px}
.tp-inner .layover-tool{padding:30px;border:1px solid var(--line);background:#fff;border-radius:10px;display:grid;grid-template-columns:1fr 1.15fr;gap:24px 32px;align-items:start}.tp-inner .layover-tool>*{grid-column:1}.tp-inner .layover-tool>.layover-result{grid-column:2;grid-row:1/5}.tp-inner .layover-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.tp-inner .layover-result-grid p{margin:0}.tp-inner .layover-result-grid strong{display:block;font-size:12px}.tp-inner .layover-result-grid span{display:block;font-size:22px;color:var(--teal-dark);margin-top:8px}.tp-inner .layover-status{display:block;font:400 30px/1.2 var(--display)}.tp-inner .layover-disclaimer{font-size:12px}
.tp-inner .tp-layover-timeline{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:22px 0}.tp-inner .tp-layover-timeline li{margin:0;padding:16px 8px;border-top:1px solid #9ebbb6}.tp-inner .tp-layover-timeline strong{font-size:12px;display:block}.tp-inner .tp-layover-timeline span{font-size:21px;color:var(--teal-dark);font-variant-numeric:tabular-nums}
.tp-packing .planning-tool{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px 32px;align-items:start}.tp-packing .planning-tool>*{grid-column:1}.tp-packing .planning-tool>.tp-output-panel{grid-column:2;grid-row:1/8}.tp-inner .tp-packing-checks h4{font-size:14px;margin:26px 0 12px}.tp-inner .tp-packing-checks label{border-bottom:1px solid #cadbd5;padding:10px 0}.tp-inner .tp-packing-checks label:has(input:checked){color:#576d66;text-decoration:line-through}.tp-inner .packing-progress{font-size:13px;color:var(--teal-dark)}
.tp-flight-delay .planning-tool{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px;align-items:start}.tp-flight-delay .planning-tool>*{grid-column:1}.tp-flight-delay .planning-tool>.tp-output-panel{grid-column:2;grid-row:1/9}.tp-flight-delay .tool-result{font-size:13px}
.tp-esim .moat-tool-shell{grid-template-columns:.9fr 1.1fr}.tp-inner .data-range strong{display:block;font-size:40px;line-height:1.3;color:var(--teal-dark)}.tp-inner .data-range span{display:block;font-size:13px}
.tp-inner .booking-checklist{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tp-inner .booking-checklist fieldset{margin:0;background:#fff}.tp-inner .booking-checklist .tool-action-row{grid-column:1/-1}
@media(max-width:640px){.tp-inner .layover-result-grid{grid-template-columns:1fr}.tp-inner .layover-result-grid p{padding-bottom:16px;border-bottom:1px solid #bacdca}}
/* Readable editorial pages and destination-specific structures. */
.tp-editorial .page-main{max-width:900px}.tp-editorial .publication-hero{padding:54px 0 30px;border-bottom:1px solid var(--line)}.tp-editorial .publication-hero h1{font-size:clamp(2.6rem,4.3vw,3.7rem)}.tp-editorial .publication-article>section{margin:44px 0}.tp-editorial .related-policies-compact{border-top:1px solid var(--line);padding-top:26px}.tp-editorial .related-policies-compact a{color:var(--teal-dark);text-decoration:underline;margin-right:18px}.tp-editorial .related-policies-compact h2{font:700 15px var(--ui)}
.tp-inner .editorial-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px;color:var(--muted)}.tp-inner .editorial-meta a{text-decoration:underline;color:var(--teal-dark)}
.tp-guide .publication-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;padding:48px 0}.tp-guide .publication-hero h1{font-size:clamp(2.4rem,3.8vw,3.5rem);max-width:22ch}.tp-guide .publication-hero figure{margin:0}.tp-guide .publication-hero img{width:100%;aspect-ratio:1.1;object-fit:cover;display:block;border-radius:10px}.tp-guide figcaption{font-size:12px;color:var(--muted);margin-top:12px}.tp-guide .publication-article>section{margin:54px 0}.tp-guide .editor-note{max-width:850px;border-block:1px solid var(--line);padding:28px 0}.tp-guide .editor-note h2{font-size:30px}
.tp-guide .comparison-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.tp-guide .comparison-grid article{border-top:1px solid var(--line)}.tp-guide .day-plan{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.tp-guide .day-plan li{padding:20px 0;margin:0;border-bottom:1px solid var(--line);font-size:14px}.tp-guide .day-plan strong{display:block;font-size:15px;margin-bottom:6px;color:var(--teal-dark)}
.tp-guide .tp-guide-route{background:var(--ocean);color:#fff;padding:32px;border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.tp-guide .tp-guide-route p{color:#d5e5e6}.tp-guide .tp-guide-route h2{font-size:36px}.tp-guide .tp-guide-route svg{max-height:350px}.tp-guide .tp-guide-route .tp-route-map figcaption{color:#bfd5da}
.tp-south-korea .publication-hero{grid-template-columns:1fr 1fr}.tp-south-korea .publication-hero img{aspect-ratio:.95}.tp-inner .tp-neighborhoods{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:28px 0}.tp-inner .tp-neighborhoods article{padding-top:20px;border-top:1px solid #8db1ae}.tp-inner .tp-neighborhoods h3{margin-top:0}.tp-inner .tp-neighborhoods p{font-size:13px}
.tp-thailand .publication-hero{grid-template-columns:1.15fr 1fr}.tp-thailand .publication-hero img{aspect-ratio:1.2}.tp-inner .tp-transfer-chain{display:flex;flex-wrap:wrap;gap:0;list-style:none;padding:0;background:var(--ocean);color:#fff;border-radius:10px;margin:28px 0}.tp-inner .tp-transfer-chain li{flex:1 1 150px;padding:24px;margin:0;border-right:1px solid #4b6970;font-size:13px}.tp-inner .tp-transfer-chain strong{display:block;font:400 24px var(--display);margin-bottom:10px}.tp-inner .tp-transfer-chain span{color:#cee1e4}.tp-inner .tp-guide-actions{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0}
@media(max-width:1024px){.tp-inner .moat-tool-shell,.tp-inner .booking-tool-shell,.tp-inner .layover-tool,.tp-budget .budget-tool,.tp-baggage .baggage-tool,.tp-packing .planning-tool,.tp-flight-delay .planning-tool{grid-template-columns:1fr}.tp-inner .booking-result,.tp-inner .tp-output-panel{position:static!important;grid-column:1!important;grid-row:auto!important}.tp-inner .layover-tool>.layover-result{grid-column:1;grid-row:auto}.tp-guide .publication-hero{gap:28px}.tp-inner .tp-neighborhoods{grid-template-columns:1fr 1fr}.tp-guide .publication-hero h1{font-size:2.6rem}}
@media(max-width:640px){.tp-inner .booking-form,.tp-inner .layover-tool,.tp-inner .tp-output-panel{padding:22px 16px}.tp-inner .booking-field-grid,.tp-inner .comparison-columns,.tp-inner .comparison-results,.tp-inner .method-grid,.tp-inner .booking-checklist,.tp-inner .related-grid,.tp-guide .publication-hero,.tp-guide .comparison-grid,.tp-guide .day-plan,.tp-guide .tp-guide-route{grid-template-columns:1fr}.tp-inner .booking-span-two{grid-column:1}.tp-inner .measurement-diagram{flex-direction:column;gap:28px}.tp-inner .tp-budget-total{font-size:32px;overflow-wrap:anywhere}.tp-inner .tp-output-visual dl>div{display:block}.tp-inner .tp-output-visual dd{text-align:left;margin-top:5px}.tp-inner .tp-layover-timeline{grid-template-columns:1fr 1fr}.tp-guide .publication-hero{padding:28px 0}.tp-guide .publication-hero h1{font-size:2.5rem}.tp-guide .publication-hero img{aspect-ratio:1.5}.tp-guide .publication-article>section{margin:36px 0}.tp-guide .tp-guide-route{padding:24px}.tp-inner .tp-neighborhoods{grid-template-columns:1fr 1fr;gap:18px}.tp-inner .tp-transfer-chain li{flex-basis:50%;padding:20px 16px}.tp-inner .tp-transfer-chain strong{font-size:20px}.tp-inner .score-header{padding:18px}.tp-inner .score-header>strong{font-size:46px}}
@media print{.tp-inner .tp-output-panel,.tp-inner .booking-result{position:static!important}.tp-inner .moat-tool-shell,.tp-inner .booking-tool-shell,.tp-inner .layover-tool,.tp-budget .budget-tool,.tp-baggage .baggage-tool,.tp-packing .planning-tool,.tp-flight-delay .planning-tool{display:block!important}.tp-inner .tp-output-panel{break-before:auto;background:#fff}.tp-guide .publication-hero{display:block}.tp-guide .publication-hero figure{display:none}}
