:root{--color-bg: #f2f2f3;--color-surface: #e9e9ea;--color-text: #1d1f20;--color-neutral-100: #f7f7f8;--color-neutral-200: #ececed;--color-neutral-300: #dcdcdd;--color-neutral-400: #c4c4c6;--color-neutral-500: #9a9a9d;--color-neutral-600: #737376;--color-neutral-700: #55555a;--color-neutral-800: #38383a;--color-neutral-900: #1d1f20;--color-accent: #5980a6;--color-accent-100: #e6edf3;--color-accent-200: #cfdfeb;--color-accent-300: #aec8dc;--color-accent-400: #89aec9;--color-accent-500: #5980a6;--color-accent-600: #4b6f92;--color-accent-700: #3d5c7a;--color-accent-800: #2f4760;--color-accent-900: #1f3145;--color-divider: #d7d7d9;--font-heading: "Barlow Condensed", sans-serif;--font-body: "Barlow", sans-serif;--radius-md: 4px;--shadow-sm: 0 1px 2px rgba(29, 31, 32, .06);--shadow-md: 0 2px 6px rgba(29, 31, 32, .08);--shadow-lg: 0 4px 14px rgba(29, 31, 32, .12)}@font-face{font-family:Barlow;src:url(/fonts/Barlow-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Barlow;src:url(/fonts/Barlow-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Barlow;src:url(/fonts/Barlow-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/BarlowCondensed-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/BarlowCondensed-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/BarlowCondensed-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-neutral-200);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}a{color:var(--color-accent-700);text-decoration:none}a:hover{color:var(--color-accent)}button,input,select{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button:disabled{opacity:.45;cursor:not-allowed}.scrollx{overflow-x:auto;scrollbar-width:none}.scrollx::-webkit-scrollbar{display:none}.btn{border-radius:var(--radius-md);cursor:pointer;border:1px solid transparent;transition:background .12s ease,border-color .12s ease}.btn-primary{background:var(--color-accent-700);border-color:var(--color-accent-700);color:var(--color-bg)}.btn-primary:hover:not(:disabled){background:var(--color-accent-800);border-color:var(--color-accent-800)}.btn-secondary{background:transparent;border-color:var(--color-divider);color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-secondary:hover:not(:disabled){border-color:var(--color-accent)}.tag{display:inline-flex;align-items:center;padding:3px 8px;font-family:var(--font-heading);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-md);line-height:1.4}.tag-accent{background:var(--color-accent-700);color:var(--color-bg)}.tag-outline{background:transparent;border:1px solid var(--color-divider);color:var(--color-text);opacity:.75}.blueprint{position:relative;border:1px solid var(--color-divider);border-radius:var(--radius-md)}.corner{position:absolute;width:8px;height:8px;color:var(--color-accent-700);pointer-events:none}.corner:before,.corner:after{content:"";position:absolute;background:currentColor}.corner:before{top:50%;left:0;right:0;height:1px;transform:translateY(-50%)}.corner:after{left:50%;top:0;bottom:0;width:1px;transform:translate(-50%)}.corner.tl{top:-4px;left:-4px}.corner.tr{top:-4px;right:-4px}.corner.bl{bottom:-4px;left:-4px}.corner.br{bottom:-4px;right:-4px}.field{width:100%;min-height:48px;padding:0 12px;border:1px solid var(--color-divider);background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;border-radius:var(--radius-md);box-sizing:border-box}.hover-border:hover{border-color:var(--color-accent)!important}.hover-tint:hover{background:var(--color-accent-100)!important;border-color:var(--color-accent)!important}.hover-tint-plain:hover{background:var(--color-accent-100)!important}.step-btn:hover{background:var(--color-accent-100)}input[inputmode=numeric]::-webkit-outer-spin-button,input[inputmode=numeric]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
