:root{--base-font-size: 16px;--focus-color: #1976d2;--focus-outline-width: 2px;--focus-outline-offset: 2px}html{font-size:var(--base-font-size)}.skip-link{position:absolute;top:-40px;left:0;background:#1976d2;color:#fff;padding:8px 16px;text-decoration:none;z-index:100000;border-radius:0 0 4px}.skip-link:focus{top:0}*:focus{outline:var(--focus-outline-width) solid var(--focus-color);outline-offset:var(--focus-outline-offset)}*:focus:not(:focus-visible){outline:none}*:focus-visible{outline:var(--focus-outline-width) solid var(--focus-color);outline-offset:var(--focus-outline-offset)}.high-visibility-focus *:focus{outline:3px solid #ff0000;outline-offset:3px;box-shadow:0 0 0 6px #f003}html.high-contrast{filter:contrast(1.5) brightness(.9)}html.highest-contrast{filter:contrast(2) brightness(.8)}.reduced-motion *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.protanopia{filter:url(#protanopia-filter)}.deuteranopia{filter:url(#deuteranopia-filter)}.tritanopia{filter:url(#tritanopia-filter)}.monochrome{filter:grayscale(100%)}.reading-mode{max-width:800px;margin:0 auto;line-height:1.8;font-family:Georgia,serif;background-color:beige;color:#333}.reading-mode *{max-width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.keyboard-navigation-active *:focus{outline:3px solid #ff4081;outline-offset:3px}button,a,input,select,textarea,[role=button],[role=link]{min-height:44px;min-width:44px}.error{color:#d32f2f;border-color:#d32f2f}.error-message{color:#d32f2f;font-weight:600}.success{color:#2e7d32;border-color:#2e7d32}.success-message{color:#2e7d32;font-weight:600}.warning{color:#ed6c02;border-color:#ed6c02}.warning-message{color:#ed6c02;font-weight:600}.info{color:#0288d1;border-color:#0288d1}.info-message{color:#0288d1;font-weight:600}.loading{position:relative}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid #1976d2;border-radius:50%;border-top-color:transparent;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[role=tooltip]{position:absolute;z-index:1000;padding:8px 12px;background-color:#000000e6;color:#fff;border-radius:4px;font-size:14px;white-space:nowrap;pointer-events:none}[role=dialog]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border:2px solid #333;border-radius:8px;padding:20px;max-width:90vw;max-height:90vh;overflow:auto;z-index:10000}[role=dialog]::backdrop{background-color:#00000080}table{border-collapse:collapse;width:100%}table caption{font-weight:700;margin-bottom:10px;text-align:left}table th{background-color:#f5f5f5;font-weight:700;text-align:left;padding:10px}table td{padding:10px;border-top:1px solid #ddd}table tr:hover{background-color:#f5f5f5}label{display:block;margin-bottom:5px;font-weight:600}input:required,select:required,textarea:required{border-left:3px solid #1976d2}input:invalid,select:invalid,textarea:invalid{border-color:#d32f2f}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#d32f2f}button:disabled,[aria-disabled=true]{opacity:.6;cursor:not-allowed}@media print{*{background:#fff!important;color:#000!important}a{text-decoration:underline!important}a[href^=http]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.no-print{display:none!important}}.color-blind-filters{position:absolute;width:0;height:0}svg{display:none}.large-text{font-size:125%!important}.large-text *{font-size:inherit}[data-focus-style=bold] *:focus{outline:4px solid var(--focus-color);outline-offset:4px;box-shadow:0 0 0 8px #1976d233}[data-focus-style=custom] *:focus{outline:3px dashed var(--focus-color);outline-offset:3px;border-radius:4px}@media (max-width: 768px){:root{--base-font-size: 14px}}@media (min-width: 1200px){:root{--base-font-size: 18px}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.image-container{position:relative;overflow:hidden;background-color:#f3f4f6}.aspect-ratio-16-9{padding-bottom:56.25%}.aspect-ratio-4-3{padding-bottom:75%}.aspect-ratio-1-1{padding-bottom:100%}.aspect-ratio-content{position:absolute;top:0;left:0;width:100%;height:100%}.font-loading{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.font-loaded{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}@media (prefers-reduced-motion: no-preference){*{scroll-behavior:smooth}.animate-fade-in{animation:fadeIn .3s ease-in-out}.animate-slide-up{animation:slideUp .3s ease-out}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.gpu-accelerated{transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.contain-layout{contain:layout}.contain-paint{contain:paint}.contain-strict{contain:strict}.scroll-container{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.virtual-scroll{position:relative;overflow-y:auto;-webkit-overflow-scrolling:touch}.virtual-scroll-viewport{position:relative;min-height:100%}.virtual-scroll-item{position:absolute;left:0;right:0;contain:layout style paint}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1em;margin-bottom:.5em;border-radius:4px}.skeleton-button{height:2.5em;width:6em;border-radius:4px}.skeleton-avatar{width:3em;height:3em;border-radius:50%}.performance-table{table-layout:fixed;width:100%}.performance-table th,.performance-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.performance-input{font-size:16px}.loading-overlay{position:fixed;inset:0;background-color:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:9999;contain:layout style paint}img{max-width:100%;height:auto;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}img[loading=lazy]{background-color:#f3f4f6}picture img{width:100%;height:auto;object-fit:cover}.fancy-animation{animation:none}.js-loaded .fancy-animation{animation:fancyMove 2s ease-in-out infinite}@keyframes fancyMove{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (prefers-color-scheme: dark){:root{color-scheme:dark}.skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a,#2a2a2a 75%)}}@media print{.no-print{display:none!important}*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}}
