.skip-link{position:absolute;top:-100%;left:16px;padding:12px 24px;background:var(--color-primary, #0d9488);color:#fff;font-weight:600;font-size:14px;border-radius:8px;text-decoration:none;z-index:10000;transition:top .2s ease}.skip-link:focus{top:16px}:focus-visible{outline:2px solid var(--color-primary, #0d9488);outline-offset:2px}:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-primary, #0d9488);outline-offset:2px;border-radius:inherit}.card-interactive:focus-visible{outline:2px solid var(--color-primary, #0d9488);outline-offset:0;box-shadow:0 0 0 4px #0d948833}.modal-focus-trap{position:relative}.modal-focus-trap:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid transparent;border-radius:inherit;pointer-events:none;transition:border-color .2s ease}.modal-focus-trap:focus-within:before{border-color:#0d94884d}tr:focus-visible{outline:none;background:#0d94881a!important}tr:focus-visible td:first-child{box-shadow:inset 3px 0 0 var(--color-primary, #0d9488)}.select-wrapper:focus-within{box-shadow:0 0 0 2px var(--color-primary, #0d9488);border-radius:10px}[data-keyboard-nav=true] *:focus{outline:2px solid var(--color-primary, #0d9488);outline-offset:2px}@media(prefers-contrast:high){:focus-visible{outline:3px solid currentColor;outline-offset:3px}button:focus-visible,a:focus-visible{outline:3px solid currentColor;background:#0000001a}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.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}.sr-only-focusable:focus,.sr-only-focusable:focus-visible{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}@keyframes focus-pulse{0%,to{box-shadow:0 0 0 2px var(--color-primary, #0d9488)}50%{box-shadow:0 0 0 4px #0d94884d}}.focus-animate:focus-visible{animation:focus-pulse 1.5s ease-in-out infinite}.touch-target{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.icon-button{position:relative}.icon-button:after{content:attr(aria-label);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:6px 12px;background:#000000e6;color:#fff;font-size:12px;border-radius:6px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;z-index:1000}.icon-button:hover:after,.icon-button:focus-visible:after{opacity:1;visibility:visible}.input-error:focus-visible{outline-color:var(--color-error, #ef4444)}.input-success:focus-visible{outline-color:var(--color-success, #10b981)}[aria-busy=true]{cursor:wait}[aria-busy=true]:focus-visible{outline-style:dashed}[aria-disabled=true],[disabled]{cursor:not-allowed;opacity:.5}[aria-disabled=true]:focus-visible,[disabled]:focus-visible{outline:2px dashed var(--color-text-dim, #94a3b8)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.theme-light ::-webkit-scrollbar{width:8px;height:8px}.theme-light ::-webkit-scrollbar-track{background:#f8fafc}.theme-light ::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.theme-light ::-webkit-scrollbar-thumb:hover{background:#94a3b8}.theme-dark ::-webkit-scrollbar{width:8px;height:8px}.theme-dark ::-webkit-scrollbar-track{background:#1e293b}.theme-dark ::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}.theme-dark ::-webkit-scrollbar-thumb:hover{background:#475569}.theme-light ::selection{background:#0d948840}.theme-dark ::selection{background:#0d948866}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-modal{animation:modalIn .2s ease}.animate-fade{animation:fadeIn .2s ease}.animate-slide-up{animation:slideUp .3s ease}@keyframes swapmore-spin{to{transform:rotate(360deg)}}.swapmore-spin{animation:swapmore-spin 1s linear infinite}
