:root{--pl-tool-w-s: 880px;--pl-tool-w-m: 1080px;--pl-tool-w-l: 1320px}.tool-header{background:var(--pl-brand, #124f53);border-bottom:2px solid var(--pl-accent, #f29b07)}.tool-header-inner{max-width:var(--tool-header-max, none);margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.tool-header-text{min-width:0}.tool-header-eyebrow{display:inline-block;font-family:var(--pl-font-heading, "Poppins", sans-serif);font-size:10px;font-weight:600;color:var(--pl-accent, #f29b07);text-decoration:none;text-transform:uppercase;letter-spacing:2.5px;margin-bottom:2px;transition:color .2s ease-out}.tool-header-eyebrow:hover{color:#fff}.tool-header-title{font-family:var(--pl-font-heading, "Poppins", sans-serif);font-size:19px;font-weight:600;color:#fff;line-height:1.2;margin:0}.tool-header-tagline{font-family:var(--pl-font-body, "Karla", sans-serif);font-size:13px;color:#ffffffbf;line-height:1.45;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.tool-header-btn{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:8px 14px;background:#ffffff14;border:1px solid rgba(255,255,255,.22);border-radius:var(--pl-radius-sm, 8px);font-family:var(--pl-font-heading, "Poppins", sans-serif);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1.2px;color:#fff;cursor:pointer;transition:background .18s ease-out,border-color .18s ease-out}.tool-header-btn:hover{background:#ffffff29;border-color:#fff6}.tool-header-btn svg{opacity:.85}@media(pointer:coarse){.tool-header-btn{min-height:44px}}@media(max-width:600px){.tool-header-inner{padding:10px 16px}.tool-header-title{font-size:16px}.tool-header-tagline{font-size:12px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.tool-header-actions{flex-wrap:wrap;width:100%}.tool-header-btn{flex:1 1 auto;justify-content:center;min-width:0}}.review-cta{text-align:center;background:var(--pl-bg, #ffffff);border:1px solid var(--pl-bg-muted, #c4d5d2);border-radius:var(--pl-radius, 12px);padding:24px;box-shadow:var(--pl-shadow-md, 0 2px 8px rgba(18, 79, 83, .08))}.review-stars{font-size:20px;color:var(--pl-accent, #f29b07);letter-spacing:3px;margin-bottom:8px}.review-title{font-family:var(--pl-font-heading, "Poppins", sans-serif);font-weight:600;font-size:17px;color:var(--pl-brand, #124f53);margin-bottom:6px}.review-text{font-family:var(--pl-font-body, "Karla", sans-serif);font-size:14px;color:var(--pl-text-soft, #4b6c69);margin:0 auto 14px;line-height:1.55;max-width:480px}.review-btn{display:inline-flex;align-items:center;gap:6px;background:var(--pl-accent, #f29b07);color:#fff;padding:10px 22px;border-radius:var(--pl-radius-sm, 8px);text-decoration:none;font-weight:600;font-size:14px;font-family:var(--pl-font-heading, "Poppins", sans-serif);transition:transform .15s ease-out,box-shadow .15s ease-out}.review-btn:hover{transform:translateY(-2px);box-shadow:var(--pl-shadow-btn, 0 6px 18px rgba(242, 155, 7, .4))}.affiliate-block{background:var(--pl-bg, #ffffff);border-radius:var(--pl-radius, 12px);box-shadow:var(--pl-shadow-md, 0 2px 8px rgba(18, 79, 83, .08));padding:36px 32px 32px;position:relative}.affiliate-block:before{content:"";position:absolute;left:32px;top:0;width:32px;height:2px;background:var(--pl-accent, #f29b07)}.affiliate-block-head{margin-bottom:26px}.affiliate-block-head h2{margin:0 0 8px;font-family:var(--pl-font-heading, "Poppins", sans-serif);font-size:22px;font-weight:700;color:var(--pl-brand, #124f53);line-height:1.15}.affiliate-block-head p{margin:0;font-family:var(--pl-font-body, "Karla", sans-serif);font-size:13px;color:var(--pl-text-soft, #4b6c69);max-width:640px;line-height:1.6}.affiliate-block-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;background:var(--pl-bg-muted, #c4d5d2);border-radius:var(--pl-radius-sm, 8px);overflow:hidden}.aff-card{display:flex;flex-direction:column;gap:8px;padding:22px 18px 20px;background:var(--pl-bg, #ffffff);text-decoration:none;color:var(--pl-text, #1a1a1a);transition:background .2s ease;min-height:140px;position:relative}.aff-card:before{content:"";position:absolute;left:0;top:0;right:0;height:2px;background:var(--pl-accent, #f29b07);transform:scaleX(0);transform-origin:left;transition:transform .25s cubic-bezier(.22,1,.36,1)}.aff-card:hover{background:var(--pl-bg-secondary, #e8f0ee)}.aff-card:hover:before{transform:scaleX(1)}.aff-card-label{font-family:var(--pl-font-heading, "Poppins", sans-serif);font-size:10px;font-weight:700;color:var(--pl-text-soft, #4b6c69);text-transform:uppercase;letter-spacing:1.6px}.aff-card-desc{font-family:var(--pl-font-body, "Karla", sans-serif);font-size:14px;line-height:1.4;font-weight:600;color:var(--pl-brand, #124f53);flex:1}.aff-card-cta{display:inline-flex;align-items:center;gap:6px;font-family:var(--pl-font-heading, "Poppins", sans-serif);font-size:11px;font-weight:600;color:var(--pl-accent, #f29b07);margin-top:4px;text-transform:uppercase;letter-spacing:1.2px}.aff-card-cta svg{transition:transform .2s ease}.aff-card:hover .aff-card-cta svg{transform:translate(3px)}@media(max-width:600px){.affiliate-block{padding:26px 20px 22px}.affiliate-block:before{left:20px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--pl-primary: #124f53;--pl-accent: #f29b07;--pl-ink: #1a1a1a;--pl-white: #ffffff;--pl-cream: #fceacf;--pl-cream-soft: #faf2e0;--pl-cream-deep: #f4dcb1;--pl-subtle-mint: #e8f0ee;--pl-text-soft: #4b6c69;--pl-border: #d8c7a4;--pl-rule: #1a1a1a;--pl-accent-hover: #d98a06;--pl-warning-bg: #fdecea;--pl-warning-border: #c0392b;--brand: var(--pl-primary);--accent: var(--pl-accent);--heading: var(--pl-ink);--text: var(--pl-ink);--bg: var(--pl-cream-soft);--bg-secondary: var(--pl-cream);--bg-subtle: var(--pl-cream);--bg-alt: var(--pl-text-soft);--support: var(--pl-border);--green: #2e7d32;--green-bg: #e8f5e9;--red: var(--pl-warning-border);--gray: #8a8a8a;--gray-light: var(--pl-cream-soft);--radius: 12px;--radius-sm: 10px;--radius-pill: 999px;--shadow: none;--shadow-lg: 0 1px 0 var(--pl-rule);--font-display: "Bricolage Grotesque", Georgia, serif;--font-ui: "Poppins", system-ui, sans-serif;--font-body: "Karla", Georgia, serif;--font-mono: "JetBrains Mono", "Courier New", monospace}html,body{min-height:100%}body{font-family:var(--font-body);color:var(--pl-ink);background:var(--pl-white);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;position:relative}.app{position:relative;z-index:2;max-width:760px;margin:0 auto;padding:0 32px 160px}@media(min-width:1100px){.app{max-width:920px;padding-left:56px;padding-right:56px}}.tool-header{margin:0 -32px 28px}@media(min-width:1100px){.tool-header{margin:0 -56px 28px}}.pl-section{background:var(--pl-cream);border:1.5px solid var(--pl-border);border-radius:18px;padding:26px 28px 28px;margin-bottom:18px;transition:border-color .2s ease,box-shadow .2s ease}.pl-section:hover{border-color:var(--pl-primary)}.pl-section.is-collapsed{padding-bottom:20px}.pl-section-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;width:100%;background:none;border:none;padding:0 0 24px;cursor:pointer;text-align:left;color:inherit;font:inherit}.pl-section.is-collapsed .pl-section-head{padding-bottom:0}.pl-section-marker{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;min-width:38px;border-radius:50%;background:var(--pl-primary);color:var(--pl-cream);font-family:var(--font-ui);font-size:14px;font-weight:700;letter-spacing:0;white-space:nowrap;transition:background .16s ease,transform .16s ease}.pl-section:nth-of-type(2n) .pl-section-marker{background:var(--pl-accent);color:var(--pl-ink)}.pl-section-head:hover .pl-section-marker{transform:scale(1.05)}.pl-section-title{position:relative;font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,3.6vw,2.2rem);line-height:1.05;letter-spacing:-.02em;color:var(--pl-primary);margin:0}.pl-section-title-text{position:relative;z-index:2}.pl-section-underline{position:absolute;left:0;bottom:-2px;width:100%;max-width:220px;height:8px;color:var(--pl-accent);pointer-events:none;opacity:1;transform:translateY(0);transition:transform .24s ease,color .2s ease}.pl-section-head:hover .pl-section-underline{transform:translateY(-1px) scaleX(1.05);transform-origin:left center}.pl-section-chev{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--pl-white);border:1.5px solid var(--pl-primary);color:var(--pl-primary);transition:transform .22s ease,background .16s ease,color .16s ease,border-color .16s ease;flex-shrink:0}.pl-section-chev svg{width:18px;height:18px}.pl-section-head:hover .pl-section-chev{background:var(--pl-accent);border-color:var(--pl-accent);color:var(--pl-ink)}.pl-section-chev.is-open{transform:rotate(180deg)}.pl-section-body{display:block}.pl-section-body.is-hidden{display:none}.pl-section-hint{font-family:var(--font-body);font-style:italic;font-size:1rem;line-height:1.5;color:var(--pl-text-soft);margin-bottom:20px;max-width:56ch}.section-card{background:var(--pl-white);border:1.5px solid var(--pl-primary);border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 10px 24px #124f5314}.section-header{display:flex;align-items:center;gap:12px;cursor:pointer;user-select:none;margin-bottom:18px}.section-header.collapsed{margin-bottom:0}.section-number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;background:var(--pl-primary);color:var(--pl-cream);border-radius:50%;font-family:var(--font-ui);font-size:14px;font-weight:700}.section-title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:var(--pl-primary);letter-spacing:-.015em;flex:1}.section-chevron{width:18px;height:18px;color:var(--pl-text-soft);transition:transform .2s}.section-chevron.open{transform:rotate(180deg)}.section-body{display:block}.section-body.hidden{display:none}.section-hint{font-family:var(--font-body);font-style:italic;font-size:.95rem;color:var(--pl-text-soft);margin-bottom:18px;line-height:1.5;max-width:56ch}.form-row{display:flex;gap:18px;margin-bottom:18px;flex-wrap:wrap}.form-group{display:flex;flex-direction:column;gap:8px;flex:1;min-width:160px}.form-group.full{min-width:100%}.form-label{font-family:var(--font-ui);font-size:11px;font-weight:600;color:var(--pl-text-soft);text-transform:uppercase;letter-spacing:.14em;display:flex;align-items:center;gap:8px}.form-label-aside{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--pl-primary);background:var(--pl-cream);padding:3px 10px;border-radius:var(--radius-pill);text-transform:none;letter-spacing:0;border:1px solid var(--pl-primary)}select,input[type=text],input[type=number],input[type=date]{font-family:var(--font-ui);font-size:15px;font-weight:500;color:var(--pl-ink);padding:12px 14px;border:1.5px solid var(--pl-primary);border-radius:10px;background:var(--pl-white);outline:none;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;width:100%;appearance:none;-webkit-appearance:none;box-shadow:0 1px #124f530a}select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path d='M2 4l4 4 4-4' stroke='%23124F53' stroke-width='1.8' fill='none' stroke-linecap='round'/></svg>");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}select:hover,input:hover{border-color:var(--pl-accent)}select:focus,input:focus{background:var(--pl-white);border-color:var(--pl-accent);box-shadow:0 0 0 3px #f29b072e}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}input[type=date]{font-family:var(--font-mono);font-size:14px}.country-search{position:relative;width:100%}.country-search-control{font-family:var(--font-ui);font-size:15px;font-weight:500;color:var(--pl-ink);padding:12px 36px 12px 14px;border:1.5px solid var(--pl-primary);border-radius:10px;background:var(--pl-white);width:100%;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;box-shadow:0 1px #124f530a;position:relative}.country-search-control:hover{border-color:var(--pl-accent)}.country-search-control.open,.country-search-control:focus-visible{border-color:var(--pl-accent);box-shadow:0 0 0 3px #f29b072e;outline:none}.country-search-control.placeholder .country-search-value{color:var(--pl-ink);opacity:.65}.country-search-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.country-search-caret{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--pl-primary);transition:transform .16s ease}.country-search-control.open .country-search-caret{transform:translateY(-50%) rotate(180deg)}.country-search-pop{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--pl-white);border:1.5px solid var(--pl-primary);border-radius:10px;box-shadow:0 12px 32px #124f5329,0 2px 6px #124f5314;z-index:50;display:flex;flex-direction:column;max-height:360px;overflow:hidden}.country-search-input{margin:8px;padding:10px 12px!important;border:1.5px solid var(--pl-primary)!important;border-radius:8px!important;width:calc(100% - 16px)!important;font-size:14px!important}.country-search-input:focus{border-color:var(--pl-accent)!important;box-shadow:0 0 0 3px #f29b072e!important}.country-search-list{overflow-y:auto;padding:4px 0 8px}.country-search-empty{padding:12px 14px;color:var(--pl-ink);opacity:.6;font-size:14px}.country-search-group+.country-search-group{margin-top:6px}.country-search-group-label{font-family:var(--font-ui);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--pl-primary);padding:6px 14px 4px;opacity:.75}.country-search-item{display:flex;align-items:center;gap:10px;padding:8px 14px;font-size:15px;color:var(--pl-ink);cursor:pointer}.country-search-item.active{background:#f29b0724}.country-search-item.selected{color:var(--pl-primary);font-weight:600}.country-search-item.selected.active{background:#f29b0738}.country-search-flag{font-size:18px;line-height:1}.country-search-name{flex:1}.style-selector{display:flex;gap:12px}.style-option{flex:1;padding:18px 12px;border:1.5px solid var(--pl-primary);border-radius:12px;background:var(--pl-white);cursor:pointer;text-align:center;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease;min-width:0;position:relative;color:var(--pl-primary)}.style-option:hover{background:var(--pl-cream);border-color:var(--pl-accent);transform:translateY(-1px)}.style-option.active{background:var(--pl-primary);color:var(--pl-cream);border-color:var(--pl-primary);box-shadow:0 8px 18px #124f5338,inset 0 0 0 2px var(--pl-accent)}.style-option-label{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:inherit;display:block;margin-bottom:2px;letter-spacing:-.01em}.style-option-hint{font-family:var(--font-body);font-style:italic;font-size:12px;color:inherit;opacity:.8}.style-option.active .style-option-hint{opacity:.9}.style-option .style-icon,.style-option.active .style-icon{color:var(--pl-accent)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font-family:var(--font-ui);font-size:13px;font-weight:600;padding:8px 16px;border:1.5px solid var(--pl-primary);border-radius:var(--radius-pill);color:var(--pl-primary);background:var(--pl-white);cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease;user-select:none;white-space:nowrap}.chip:hover{background:var(--pl-cream);border-color:var(--pl-accent)}.chip.active{background:var(--pl-primary);color:var(--pl-cream);border-color:var(--pl-primary);box-shadow:0 3px 10px #124f5333}.chip .chip-days{font-family:var(--font-mono);font-size:10px;opacity:.75;margin-left:4px}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--pl-border);gap:16px}.toggle-row:last-child{border-bottom:none}.toggle-label{font-family:var(--font-ui);font-size:15px;font-weight:600;color:var(--pl-ink);line-height:1.3}.toggle-note{font-family:var(--font-body);font-size:13px;color:var(--pl-text-soft);margin-top:4px;line-height:1.4}.toggle{width:44px;height:24px;border-radius:var(--radius-pill);background:var(--pl-border);cursor:pointer;position:relative;transition:background .2s ease;border:none;padding:0;flex-shrink:0}.toggle.on{background:var(--pl-primary)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--pl-cream);transition:transform .2s ease;box-shadow:0 1px 2px #00000026}.toggle.on:after{transform:translate(20px)}.price-field{display:flex;align-items:center;gap:10px;padding:6px 0}.price-value{font-family:var(--font-mono);font-size:15px;font-weight:600;color:var(--pl-primary);display:flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.price-value.overridden{text-decoration:line-through;color:var(--gray);font-weight:500;font-size:13px}.price-override{font-family:var(--font-mono);font-size:15px;font-weight:600;color:var(--pl-accent);font-variant-numeric:tabular-nums}.price-unit{font-family:var(--font-body);font-style:italic;font-size:13px;color:var(--pl-text-soft);font-weight:400}.price-edit-btn{width:26px;height:26px;border:none;background:none;cursor:pointer;color:var(--pl-text-soft);display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .16s ease,color .16s ease}.price-edit-btn:hover{background:var(--pl-cream);color:var(--pl-primary)}.price-input-wrap{display:flex;align-items:center;gap:6px}.price-input{font-family:var(--font-mono);width:110px;font-size:15px;font-weight:600;padding:7px 10px;border:1.5px solid var(--pl-accent);border-radius:8px;color:var(--pl-accent);text-align:right;background:var(--pl-white)}.price-input:focus{outline:none;box-shadow:0 0 0 3px #f29b0733}.price-reset{font-family:var(--font-ui);font-size:11px;color:var(--pl-text-soft);cursor:pointer;background:none;border:none;text-decoration:underline;text-decoration-style:dotted;padding:4px;letter-spacing:.04em}.price-reset:hover{color:var(--pl-primary)}.slider-row{display:flex;align-items:center;gap:14px;padding:10px 0}.slider-label{font-family:var(--font-mono);font-size:13px;color:var(--pl-primary);min-width:44px;text-align:right}input[type=range]{flex:1;height:2px;border-radius:1px;-webkit-appearance:none;appearance:none;background:var(--pl-border);outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--pl-ink);cursor:pointer;border:2px solid var(--pl-cream);box-shadow:0 0 0 1px var(--pl-ink)}.sticky-bar-band{pointer-events:none;z-index:100}.sticky-bar-band .sticky-bar{position:absolute;bottom:0;left:0;right:0;pointer-events:auto}.sticky-bar{position:fixed;bottom:0;left:0;right:0;background:var(--pl-primary);color:var(--pl-cream);padding:14px 0;z-index:100;border-top:4px solid var(--pl-accent);box-shadow:0 -8px 24px #124f532e}.sticky-inner{max-width:760px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}@media(min-width:1100px){.sticky-inner{max-width:920px;padding:0 56px}}.sticky-label{font-family:var(--font-ui);font-size:10px;text-transform:uppercase;letter-spacing:.2em;opacity:.72;margin-bottom:4px;color:var(--pl-cream)}.sticky-total{font-family:var(--font-display);font-size:30px;font-weight:800;letter-spacing:-.02em;color:var(--pl-accent)}.sticky-meta{display:flex;gap:28px;align-items:center}.sticky-stat{text-align:right}.sticky-stat-value{font-family:var(--font-mono);font-size:16px;font-weight:600;color:var(--pl-cream);font-variant-numeric:tabular-nums}.sticky-stat-label{font-family:var(--font-ui);font-size:10px;opacity:.72;text-transform:uppercase;letter-spacing:.18em}.summary-card{background:var(--pl-primary);color:var(--pl-cream);border:none;border-radius:18px;padding:44px 36px 36px;margin:56px 0 32px;position:relative;box-shadow:0 24px 48px #124f532e}.summary-card:before{content:"THE BOTTOM LINE";position:absolute;top:-12px;left:28px;background:var(--pl-accent);padding:5px 14px;border-radius:var(--radius-pill);font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.22em;color:var(--pl-ink)}.summary-title{font-family:var(--font-display);font-size:clamp(1.7rem,3.4vw,2.2rem);font-weight:800;letter-spacing:-.02em;color:var(--pl-cream);margin-bottom:28px;line-height:1.1}.summary-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:0;margin-bottom:28px;background:#ffffff14;border-radius:12px;overflow:hidden}.summary-stat{text-align:left;padding:22px;background:transparent;border-radius:0;border-right:1px solid rgba(252,234,207,.18)}.summary-stat:last-child{border-right:none}.summary-stat:first-child .summary-stat-value{font-family:var(--font-display);font-size:clamp(2.4rem,5.2vw,3.6rem);font-weight:800;letter-spacing:-.03em;color:var(--pl-accent);line-height:1}.summary-stat-value{font-family:var(--font-mono);font-size:1.4rem;font-weight:600;color:var(--pl-cream);font-variant-numeric:tabular-nums;line-height:1.1}.summary-stat-label{font-family:var(--font-ui);font-size:10px;color:var(--pl-cream);opacity:.72;margin-top:8px;text-transform:uppercase;letter-spacing:.2em}.chart-container{margin-bottom:28px;padding:20px 0 4px;border-top:1px solid rgba(252,234,207,.18)}.chart-bar-row{display:flex;align-items:center;gap:14px;margin-bottom:12px}.chart-label{font-family:var(--font-ui);font-size:12px;font-weight:500;color:var(--pl-cream);min-width:130px;text-align:right;letter-spacing:.02em}.chart-bar-track{flex:1;height:16px;background:#fceacf1f;border-radius:4px;overflow:hidden;position:relative}.chart-bar-fill{height:100%;border-radius:4px;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;min-width:28px;background:var(--pl-accent)!important}.chart-bar-value{font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--pl-ink);white-space:nowrap}.chart-amount{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--pl-cream);min-width:70px;font-variant-numeric:tabular-nums}.breakdown-table{width:100%;border-collapse:collapse;font-family:var(--font-body)}.breakdown-table tr{border-bottom:1px dotted rgba(252,234,207,.18)}.breakdown-table tr:last-child{border-bottom:none}.breakdown-table td{padding:11px 4px;font-size:14px;vertical-align:baseline}.breakdown-table .cat-name{color:var(--pl-cream);font-weight:400}.breakdown-table .cat-detail{font-family:var(--font-body);font-style:italic;color:var(--pl-cream);opacity:.7;font-size:12px}.breakdown-table .cat-amount{text-align:right;font-family:var(--font-mono);font-weight:600;font-size:14px;color:var(--pl-cream);white-space:nowrap;font-variant-numeric:tabular-nums}.breakdown-table .cat-amount.overridden{color:var(--pl-accent)}.breakdown-total td{padding-top:18px;font-family:var(--font-display);font-weight:800;font-size:1.2rem;border-top:2px solid var(--pl-accent);color:var(--pl-accent);letter-spacing:-.01em}.breakdown-total .cat-amount{font-family:var(--font-display)!important;font-size:1.3rem!important;font-weight:800!important;color:var(--pl-accent)!important}.share-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.share-btn{font-family:var(--font-ui);padding:11px 20px;border-radius:var(--radius-pill);font-size:13px;font-weight:600;letter-spacing:.04em;cursor:pointer;border:1.5px solid var(--pl-primary);background:var(--pl-white);color:var(--pl-primary);transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease;display:inline-flex;align-items:center;gap:8px}.share-btn:hover{background:var(--pl-primary);color:var(--pl-cream);transform:translateY(-1px)}.share-btn.primary{background:var(--pl-accent);color:var(--pl-ink);border-color:var(--pl-accent);font-weight:700}.share-btn.primary:hover{background:var(--pl-accent-hover);border-color:var(--pl-accent-hover);color:var(--pl-ink);box-shadow:0 6px 18px #f29b0766}.summary-card .share-btn{background:transparent;color:var(--pl-cream);border-color:var(--pl-cream)}.summary-card .share-btn:hover{background:var(--pl-cream);color:var(--pl-primary)}.summary-card .share-btn.primary{background:var(--pl-accent);color:var(--pl-ink);border-color:var(--pl-accent)}.summary-card .share-btn.primary:hover{background:var(--pl-cream);color:var(--pl-primary);border-color:var(--pl-cream)}.summary-card .info-note{background:#fceacf1a;color:var(--pl-cream);border-left-color:var(--pl-accent)}.info-note{font-family:var(--font-body);font-size:13px;color:var(--pl-ink);padding:12px 16px;background:var(--pl-cream);border-left:4px solid var(--pl-accent);border-radius:8px;margin-top:12px;line-height:1.55;max-width:64ch}.empty-state{text-align:center;padding:56px 32px;color:var(--pl-text-soft);background:var(--pl-cream);border:1.5px dashed var(--pl-accent);border-radius:16px;margin-top:24px}.empty-state p{font-family:var(--font-body);font-style:italic;font-size:15px;margin-bottom:8px;line-height:1.55;color:var(--pl-text-soft)}.empty-state p:first-child{font-family:var(--font-display);font-style:normal;font-size:clamp(1.4rem,3vw,1.8rem);font-weight:700;color:var(--pl-primary);letter-spacing:-.015em;margin-bottom:14px}.style-icon{display:flex;align-items:center;justify-content:center;margin-bottom:6px;color:inherit}.currency-toggle-row{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:16px;font-family:var(--font-ui);font-size:11px;font-weight:600;color:var(--pl-text-soft);text-transform:uppercase;letter-spacing:.14em}.currency-toggle-btns{display:flex;border-radius:0;overflow:hidden;border:1px solid var(--pl-ink)}.currency-btn{font-family:var(--font-mono);padding:6px 14px;font-size:12px;font-weight:600;border:none;cursor:pointer;background:transparent;color:var(--pl-ink);transition:background .16s ease,color .16s ease;letter-spacing:.04em}.currency-btn.active{background:var(--pl-ink);color:var(--pl-cream)}.currency-btn:not(.active):hover{background:var(--pl-cream)}.rdp-trigger-wrap{position:relative;width:100%}.rdp-trigger{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--pl-white);border:1.5px solid var(--pl-primary);border-radius:10px;font-family:var(--font-ui);font-size:.95rem;font-weight:500;color:var(--pl-text-soft);cursor:pointer;width:100%;text-align:left;transition:border-color .16s ease,box-shadow .16s ease;box-shadow:0 1px #124f530a}.rdp-trigger:hover{border-color:var(--pl-accent)}.rdp-trigger:focus-visible{outline:none;border-color:var(--pl-accent);box-shadow:0 0 0 3px #f29b072e}.rdp-trigger.has-value{color:var(--pl-ink);font-weight:600}.rdp-trigger-icon{color:var(--pl-primary);display:inline-flex;align-items:center}.rdp-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:50;background:var(--pl-white);border:1.5px solid var(--pl-primary);border-radius:14px;box-shadow:0 18px 40px #124f532e;padding:14px}.rdp{--rdp-accent-color: var(--pl-primary);--rdp-background-color: var(--pl-cream);font-family:var(--font-ui)}.rdp-day_selected,.rdp-day_selected:hover,.rdp-day_range_start,.rdp-day_range_end{background:var(--pl-primary)!important;color:var(--pl-cream)!important}.rdp-day_range_middle{background:var(--pl-cream)!important;color:var(--pl-primary)!important}@media(max-width:720px){.rdp-popover{left:50%;transform:translate(-50%);max-width:95vw}}.section-card:nth-child(2n) .section-number{background:var(--pl-accent);color:var(--pl-ink)}.country-link-card,.section-card.country-link-card{background:var(--pl-cream);border-color:var(--pl-accent);border-radius:18px;box-shadow:0 10px 24px #f29b072e;padding:22px 24px;transition:transform .16s ease,box-shadow .2s ease}.country-link-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px #f29b073d}@media(max-width:640px){.app{padding:0 20px 140px}.tool-header{margin:0 -20px 20px}.pl-section{padding:32px 18px 24px}.pl-section-head{grid-template-columns:1fr auto;align-items:start;gap:6px}.pl-section-marker{grid-column:1 / -1;padding-bottom:0}.section-card{padding:22px 18px}.form-row{flex-direction:column;gap:14px}.form-group{min-width:100%}.style-selector{flex-direction:column}.style-option{padding:14px}.summary-card{padding:36px 22px}.summary-grid{grid-template-columns:1fr;gap:0}.summary-stat{border-right:none;border-bottom:1px dotted var(--pl-cream-deep)}.summary-stat:last-child{border-bottom:none}.chart-bar-row{flex-direction:column;align-items:stretch;gap:4px}.chart-label{text-align:left;min-width:0}.sticky-inner{flex-direction:row;gap:12px;padding:0 20px}.sticky-total{font-size:22px}.sticky-label{font-size:9px}.sticky-meta{gap:16px}.sticky-stat-value{font-size:14px}}
