@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--teal-500: #0099A6;--teal-600: #007280;--teal-300: #86CCCF;--teal-100: #DCF4F5;--ink-900: #1C1F25;--slate-600: #606369;--cloud-50: #F7F5F1;--sand-300: #DFB585;--pageBg: #F7F5F1;--cardBg: #FFFFFF;--sidebar: #F0EEEA;--inputBg: #F9F8F5;--border: #E2DFDA;--border-focus: #0099A6;--ink: #1C1F25;--muted: #606369;--faint: #9EA1A7;--accent: #0099A6;--accent-text: #007280;--accent-dim: rgba(0,153,166,.08);--accent-hover: #007280;--success: #1A7A4A;--error: #C84B2A;--warn: #C47D1A;--info: #2A6490;--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-mono: "IBM Plex Mono", "Courier New", monospace;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--radius-full: 9999px}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:16px;color:var(--ink);background:var(--pageBg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input,textarea,select,button{font-family:inherit}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.font-mono{font-family:var(--font-mono)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){h1,.section-title{font-size:20px!important}.slide-panel{width:100vw!important}.plan-grid{grid-template-columns:1fr!important}.budget-table{overflow-x:auto;display:block}.country-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))!important}.hide-mobile{display:none!important}.floating-save{left:0!important;right:0!important;padding:12px 16px!important}}
