*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);-webkit-text-size-adjust:100%}body{margin:0;background:var(--background);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--brand-primary)}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}button{font:inherit;cursor:pointer}.btn-primary,.btn-secondary{display:inline-block;font:inherit;font-weight:700;font-size:1rem;line-height:1.2;padding:.75rem 1.5rem;border:2px solid transparent;border-radius:.375rem;text-align:center;text-decoration:none;cursor:pointer;touch-action:manipulation;transition:opacity .15s,background .15s}.btn-primary:hover,.btn-secondary:hover{opacity:.85}.btn-primary:disabled,.btn-primary[aria-disabled=true],.btn-secondary:disabled,.btn-secondary[aria-disabled=true]{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--brand-primary);color:var(--background);border-color:var(--brand-primary)}.btn-secondary{background:transparent;color:var(--brand-secondary);border-color:var(--brand-secondary)}.btn-block{display:block;width:100%}.btn-sm{padding:.4rem .9rem;font-size:.875rem;font-weight:600}input:where(:not([type=checkbox]):not([type=radio]):not([type=range])),select,textarea{font:inherit;width:100%;padding:.625rem .75rem;border:1px solid color-mix(in srgb,var(--text) 25%,transparent);border-radius:.375rem;background:color-mix(in srgb,var(--background) 92%,var(--text));color:var(--text)}input:where(:not([type=checkbox]):not([type=radio]):not([type=range])):focus,select:focus,textarea:focus{outline:2px solid var(--brand-primary);outline-offset:1px}input:where(:not([type=checkbox]):not([type=radio]):not([type=range])):disabled,input:where(:not([type=checkbox]):not([type=radio]):not([type=range]))[readonly],select:disabled,select[readonly],textarea:disabled,textarea[readonly]{opacity:.6}.error{color:var(--brand-accent)}.card{padding:1.5rem;border-radius:.75rem;border:2px solid var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 5%,var(--background))}.card--secondary{border-color:var(--brand-secondary);background:color-mix(in srgb,var(--brand-secondary) 5%,var(--background))}
