.icon{fill:none;stroke:currentColor;width:20px;height:20px;stroke-width:var(--icon-stroke-width);stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon--sm{width:16px;height:16px}.icon--lg{width:24px;height:24px}.icon--xl{width:32px;height:32px}.icon--xxl{width:40px;height:40px}
.spinner{color:var(--color-primary);flex-shrink:0;display:inline-flex}.spinner__icon{fill:none;width:20px;height:20px;stroke-width:var(--icon-stroke-width-strong);stroke-linecap:round;animation:spinner-turn calc(var(--duration-slow)*2) linear infinite}.spinner--sm .spinner__icon{width:16px;height:16px}.spinner--lg .spinner__icon{width:24px;height:24px}.spinner__track{stroke:color-mix(in srgb, currentColor 25%, #0000)}.spinner__arc{stroke:currentColor}.spinner__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}@keyframes spinner-turn{to{transform:rotate(360deg)}}
.button{border:var(--border-width-control) solid #0000;border-radius:var(--radius-control);max-width:100%;min-height:48px;font-size:var(--font-size-md);line-height:var(--line-height-md);font-weight:var(--font-weight-medium);text-align:center;transition:background-color var(--duration-fast) var(--easing-standard),border-color var(--duration-fast) var(--easing-standard),color var(--duration-fast) var(--easing-standard),transform var(--duration-fast) var(--easing-standard);justify-content:center;align-items:center;gap:8px;padding:8px 24px;text-decoration:none;display:inline-flex;position:relative}.button__label{-webkit-hyphens:manual;hyphens:manual;overflow-wrap:anywhere;min-width:0}.button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.button:active:not(:disabled,[aria-disabled=true]){transform:translateY(1px)}.button--sm{min-height:44px;font-size:var(--font-size-sm);line-height:var(--line-height-sm);padding:8px 16px}.button--lg{min-height:56px;font-size:var(--font-size-lg);line-height:var(--line-height-lg);padding:8px 32px}@media (min-width:768px){.button--responsive{min-height:56px;font-size:var(--font-size-lg);line-height:var(--line-height-lg);padding:8px 32px}}.button--icon-only{padding:0}.button--icon-only.button--sm{min-width:44px}.button--icon-only.button--md,.button--icon-only.button--responsive{min-width:48px}.button--icon-only.button--lg{min-width:56px}@media (min-width:768px){.button--icon-only.button--responsive{min-width:56px}}.button--primary{border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-text-on-primary)}@media (hover:hover){.button--primary:hover:not(:disabled,[aria-disabled=true]){border-color:var(--color-primary-hover);background-color:var(--color-primary-hover)}}.button--primary:active:not(:disabled,[aria-disabled=true]),.button--primary[aria-pressed=true]:not(:disabled,[aria-disabled=true]){border-color:var(--color-primary-pressed);background-color:var(--color-primary-pressed)}.button--secondary{border-color:var(--color-primary);color:var(--color-primary);background-color:#0000}@media (hover:hover){.button--secondary:hover:not(:disabled,[aria-disabled=true]){border-color:var(--color-primary-hover);background-color:color-mix(in srgb, var(--color-primary) 8%, #0000);color:var(--color-primary-hover)}}.button--secondary:active:not(:disabled,[aria-disabled=true]),.button--secondary[aria-pressed=true]:not(:disabled,[aria-disabled=true]){border-color:var(--color-primary-pressed);background-color:color-mix(in srgb, var(--color-primary) 14%, #0000);color:var(--color-primary-pressed)}.button--accent{border-color:var(--color-secondary);background-color:var(--color-secondary);color:var(--color-text)}@media (hover:hover){.button--accent:hover:not(:disabled,[aria-disabled=true]){border-color:color-mix(in srgb, var(--color-secondary) 90%, var(--color-surface-brand));background-color:color-mix(in srgb, var(--color-secondary) 90%, var(--color-surface-brand))}}.button--accent:active:not(:disabled,[aria-disabled=true]),.button--accent[aria-pressed=true]:not(:disabled,[aria-disabled=true]){border-color:color-mix(in srgb, var(--color-secondary) 80%, var(--color-surface-brand));background-color:color-mix(in srgb, var(--color-secondary) 80%, var(--color-surface-brand))}.button--on-brand{border-color:color-mix(in srgb, var(--color-text-on-brand) 60%, var(--color-surface-brand));color:var(--color-text-on-brand);background-color:#0000}@media (hover:hover){.button--on-brand:hover:not(:disabled,[aria-disabled=true]){border-color:var(--color-text-on-brand);background-color:var(--color-surface-on-brand)}}.button--on-brand:active:not(:disabled,[aria-disabled=true]),.button--on-brand[aria-pressed=true]:not(:disabled,[aria-disabled=true]){border-color:var(--color-text-on-brand);background-color:color-mix(in srgb, var(--color-text-on-brand) 12%, #0000)}.button:disabled,.button[aria-disabled=true]:not(.button--busy){border-color:var(--color-border);background-color:var(--color-surface-secondary);color:var(--color-text-secondary);cursor:not-allowed}.button--busy{cursor:progress}.button--busy-centred .button__label{opacity:0}.button .button__icon--arrow{stroke-width:var(--icon-stroke-width-strong)}.button .button__spinner{color:inherit}.button__spinner--centred{justify-content:center;align-items:center;position:absolute;inset:0}
.text-link{text-underline-offset:2px;overflow-wrap:break-word;transition:background-color var(--duration-fast) var(--easing-standard),color var(--duration-fast) var(--easing-standard),text-decoration-thickness var(--duration-fast) var(--easing-standard);text-decoration:underline;text-decoration-thickness:1px}@media (hover:hover){.text-link:hover{text-decoration-thickness:2px}}.text-link:active{text-decoration-thickness:2px}.text-link:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.text-link--inline{color:var(--text-link-color,var(--color-primary))}@media (hover:hover){.text-link--inline:hover{color:var(--text-link-color,var(--color-primary-hover))}}.text-link--inline:active{color:var(--text-link-color,var(--color-primary-pressed))}.text-link--standalone{min-height:44px;color:inherit;font-weight:var(--font-weight-medium);align-items:center;display:inline-flex}.text-link--block{border-radius:var(--radius-control);background-color:var(--text-link-block-surface,var(--color-surface-secondary));min-height:56px;color:var(--color-primary);-webkit-hyphens:manual;hyphens:manual;overflow-wrap:anywhere;font-size:var(--font-size-md);line-height:var(--line-height-md);font-weight:var(--font-weight-medium);justify-content:space-between;align-items:center;gap:12px;padding:8px 24px;text-decoration:none;display:flex}@media (hover:hover){.text-link--block:hover{color:var(--color-primary-hover);text-decoration:underline;text-decoration-thickness:1px}}.text-link--block:active{background-color:var(--color-surface-pressed);color:var(--color-primary-pressed);text-decoration:underline;text-decoration-thickness:2px}.text-link__label{-webkit-hyphens:manual;hyphens:manual;min-width:0}.text-link .text-link__arrow{stroke-width:var(--icon-stroke-width-strong)}
