:root{color-scheme:light;--bg:#fffdf7;--bg-subtle:#f2efe5;--bg-muted:#e8e4d8;--ink:#242820;--ink-2:#474b40;--muted:#64685b;--line:#d8d9cb;--line-strong:#7d876e;--accent:#b83d19;--accent-hover:#963014;--accent-soft:#ffe8d9;--accent-ring:#b83d1933;--good:#15803d;--good-soft:#eaf7ee;--warn:#b45309;--warn-soft:#fff7e8;--bad:#b91c1c;--bad-soft:#fdecec;--info:#b83d19;--violet:#6d28d9;--violet-soft:#f2edfd;--shadow-sm:0 2px 0 #dce1cf;--shadow:3px 4px 0 #dce1cf;--radius-sm:5px;--radius:12px;--radius-lg:18px;--content:1160px;--prose:720px;--control:44px;--font:"Avenir Next", "Century Gothic", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;font-family:var(--font);font-feature-settings:"cv11", "ss01";font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}@media (pointer:coarse){:root{--control:48px}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{background:var(--bg);min-width:320px;color:var(--ink);margin:0;font-size:16px;line-height:1.55}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}img,svg,video,canvas{max-width:100%;display:block}a{color:var(--accent);text-underline-offset:.16em;text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 5px var(--accent-ring)}[hidden]{display:none!important}::selection{background:#ffd4b8}kbd{border:1px solid var(--line-strong);background:var(--bg);font-family:var(--mono);border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-size:.8em}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--ink);color:#fff;padding:10px 14px;font-weight:600;position:fixed;top:8px;left:8px;translate:0 -150%}.skip-link:focus{translate:0}.site-frame{width:min(calc(100% - 40px), var(--content));margin-inline:auto}main{min-height:60vh}.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:saturate(160%)blur(8px);background:#fffdf7;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:16px;min-height:76px;display:flex}.site-header nav{align-items:center;gap:4px;display:flex}.site-header nav a{border-radius:var(--radius-sm);color:var(--ink-2);padding:8px 10px;font-size:.92rem;font-weight:500}.site-header nav a:hover{background:var(--bg-muted);color:var(--ink);text-decoration:none}.site-header nav a[aria-current=page]{color:var(--ink);font-weight:600}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:9px;font-weight:750;display:inline-flex}.brand:hover{text-decoration:none}.brand svg{width:24px;height:24px;color:var(--accent)}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:64px;padding:36px 0 44px;font-size:.9rem}.site-footer__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 32px;display:grid}.site-footer__column{align-content:start;gap:24px;display:grid}.site-footer h2{margin:0 0 8px;font-size:.85rem;font-weight:600}.site-footer h2 a{color:var(--ink)}.site-footer ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.site-footer__note{flex-basis:100%}.site-footer__meta{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px 20px;margin-top:28px;padding-top:18px;font-size:.82rem;display:flex}h1,h2,h3,h4,p,ul,ol{margin-top:0}h1,h2,h3,h4{color:var(--ink);letter-spacing:-.02em;font-weight:750;line-height:1.2}h1{margin-bottom:10px;font-size:clamp(1.7rem,2.8vw,2.1rem)}h2{margin-bottom:14px;font-size:1.3rem}h3{letter-spacing:-.01em;margin-bottom:6px;font-size:1rem}p{margin-bottom:1em}.lede{max-width:70ch;color:var(--ink-2);font-size:1.02rem}.text-muted{color:var(--muted)}.text-small{font-size:.88rem}.button,button.button{min-height:var(--control);border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:.94rem;font-weight:560;line-height:1.2;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.button:hover,button.button:hover{border-color:var(--accent-hover);background:var(--accent-hover);text-decoration:none}.button:active,button.button:active{transform:translateY(1px)}.button:disabled,button.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button--secondary,button.button--secondary{border-color:var(--line-strong);background:var(--bg);color:var(--ink)}.button--secondary:hover,button.button--secondary:hover{border-color:var(--line-strong);background:var(--bg-subtle)}.button--danger,button.button--danger{border-color:var(--line-strong);background:var(--bg);color:var(--bad)}.button--danger:hover,button.button--danger:hover{background:var(--bad-soft);border-color:#f1b5b5}.button--small,button.button--small{min-height:36px;padding:6px 12px;font-size:.88rem}.text-link{font-weight:500}.field input,.field select,.field textarea,.catalog-search input{width:100%;min-height:var(--control);border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);border-radius:8px;padding:8px 12px;font-size:.94rem;transition:border-color .12s,box-shadow .12s}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364685b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}.field input:focus,.field select:focus,.field textarea:focus,.catalog-search input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring);outline:none}.field input[type=color]{padding:4px}.field input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--accent);margin:2px 8px 0 0}.pill{border:1px solid var(--line);background:var(--bg-subtle);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:500;display:inline-flex}.pill svg{width:13px;height:13px}.pill--good{background:var(--good-soft);color:var(--good);border-color:#cfe9d8}.home-intro{max-width:760px;padding:56px 0 40px}.home-intro h1{font-size:clamp(1.9rem,3.6vw,2.5rem)}.home-intro .lede{margin-bottom:22px}.catalog-search{max-width:520px;position:relative}.catalog-search svg{width:18px;height:18px;color:var(--muted);pointer-events:none;position:absolute;top:50%;left:13px;translate:0 -50%}.catalog-search input{padding-left:40px}.search-status{min-height:22px;color:var(--muted);margin:8px 0 0;font-size:.88rem}.home-facts{color:var(--muted);flex-wrap:wrap;gap:8px 24px;margin:6px 0 0;padding:0;font-size:.88rem;list-style:none;display:flex}.home-facts li{align-items:center;gap:7px;display:inline-flex}.home-section{padding:32px 0 48px}.home-section>h2{margin-bottom:14px}.featured-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.featured-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);color:var(--ink);align-content:start;gap:4px;padding:18px 18px 16px;transition:border-color .12s,box-shadow .12s,transform .12s;display:grid}.featured-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow);text-decoration:none;transform:translateY(-1px)}.featured-card:hover strong{color:var(--accent)}.featured-card .section-chip{margin-bottom:10px}.featured-card strong{font-weight:600}.featured-card>span:not(.section-chip){color:var(--muted);font-size:.88rem;line-height:1.45}.category-row{padding:44px 0}.category-row .article-section__label p{max-width:30ch}.test-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;display:grid}.test-list a{color:var(--ink);border-radius:8px;gap:2px;margin-inline:-12px;padding:10px 12px;display:grid}.test-list a:hover{background:var(--bg-subtle);text-decoration:none}.test-list a:hover strong{color:var(--accent)}.test-list strong{font-weight:560}.test-list small{color:var(--muted);font-size:.86rem;line-height:1.45}.home-about{padding-bottom:8px}.home-about .article-section__body p{max-width:68ch}.home-about .article-section__body p:last-child{margin-bottom:0}.breadcrumbs{color:var(--muted);flex-wrap:wrap;gap:6px;padding-top:20px;font-size:.84rem;display:flex}.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--ink)}.page-intro{max-width:820px;padding:14px 0 18px}.page-intro h1{margin-bottom:6px}.page-intro .lede{margin:0}.test-shell{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-sm);margin-bottom:16px}device-test{min-height:280px;display:block}.test-loading{min-height:280px;color:var(--muted);place-items:center;font-size:.92rem;display:grid}.test-shell__foot{border-top:1px solid var(--line);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--bg-subtle);color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 18px 12px;font-size:.82rem;line-height:1.5;display:flex}.test-shell__foot p{margin:0}.test-shell__foot .pill{padding:2px 8px;font-size:.74rem}.test-shell__foot strong{color:var(--ink-2);font-weight:600}.test-page-actions{flex-wrap:wrap;align-items:center;gap:10px 18px;min-height:44px;margin-bottom:40px;display:flex}.share-control{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.share-control .button svg{width:16px;height:16px}.share-control__status{color:var(--muted);font-size:.82rem}.share-control__fallback{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg);width:min(360px,70vw);min-height:36px;padding:6px 10px;font-size:.82rem}.report-test-link{color:var(--muted);font-size:.86rem}.report-test-link:hover{color:var(--ink)}.article-grid{margin-top:16px}.article-section{grid-template-columns:260px minmax(0, var(--prose));border-top:1px solid var(--line);gap:24px 56px;padding:52px 0;display:grid}.article-section:last-child{padding-bottom:24px}.section-chip{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:10px;place-items:center;margin-bottom:14px;display:inline-grid}.section-chip svg{width:18px;height:18px}.section-chip--good{background:var(--good-soft);color:var(--good)}.section-chip--warn{background:var(--warn-soft);color:var(--warn)}.section-chip--muted{background:var(--bg-muted);color:var(--ink-2)}.section-chip--violet{background:var(--violet-soft);color:var(--violet)}.article-section__label h2{margin-bottom:6px;font-size:1.25rem}.article-section__label p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.5}.article-section__label a{margin-top:10px;font-size:.92rem;font-weight:500;display:inline-block}.article-section__body p,.article-section__body li{color:var(--ink-2);line-height:1.6}.article-section__body h3{color:var(--ink);margin-bottom:4px;font-size:1.02rem}.step-list,.troubleshooting-list{counter-reset:steps;gap:26px;margin:0;padding:0;list-style:none;display:grid}.step-list li,.troubleshooting-list li{counter-increment:steps;padding-left:48px;position:relative}.step-list li:before,.troubleshooting-list li:before{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);content:counter(steps);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:.82rem;font-weight:600;display:grid;position:absolute;top:-2px;left:0}.troubleshooting-list li:before{background:var(--warn-soft);color:var(--warn)}.step-list p,.troubleshooting-list p{margin:0}.troubleshooting-list summary{cursor:pointer}.troubleshooting-list summary h3{margin:0;display:inline}.troubleshooting-list details[open] summary{margin-bottom:4px}.result-list{border:1px solid var(--line);border-radius:var(--radius-lg);display:grid;overflow:hidden}.result-list article{padding:20px 22px}.result-list article+article{border-top:1px solid var(--line)}.result-list h3{margin-bottom:6px}.result-list p{margin:0}.limits-panel{border-radius:var(--radius-lg);background:var(--bg-subtle);padding:20px 22px}.limits-panel ul{gap:8px;margin:0;padding-left:18px;display:grid}.limits-panel li::marker{color:var(--muted)}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;padding:18px 44px 18px 0;font-size:1.02rem;font-weight:560;line-height:1.4;list-style:none;position:relative}.faq-list summary:hover{color:var(--accent)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364685b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") 50%/contain no-repeat;width:16px;height:16px;transition:rotate .15s;position:absolute;top:50%;right:4px;translate:0 -50%}.faq-list details[open] summary:after{rotate:45deg}.faq-list details p{margin:0;padding:0 44px 20px 0}.related-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.related-list a{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);align-content:start;gap:4px;padding:16px 18px;transition:border-color .12s,box-shadow .12s;display:grid}.related-list a svg{width:20px;height:20px;color:var(--accent);margin-bottom:6px}.related-list a:hover{border-color:var(--line-strong);box-shadow:var(--shadow);text-decoration:none}.related-list a:hover strong{color:var(--accent)}.related-list strong{font-weight:600}.related-list span{color:var(--muted);font-size:.88rem;line-height:1.45}.simple-page,.not-found{max-width:var(--prose);padding:48px 0 40px}.simple-page h2{margin-top:36px}.simple-page p{color:var(--ink-2)}.simple-page ul{color:var(--ink-2);gap:8px;padding-left:22px;display:grid}.simple-page code{background:var(--bg-muted);font-family:var(--mono);border-radius:4px;padding:1px 5px;font-size:.9em}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:.76rem;font-weight:700}.policy-updated{margin:22px 0 30px;font-size:.86rem;color:var(--muted)!important}.policy-links{border-top:1px solid var(--line);flex-wrap:wrap;gap:10px 20px;margin-top:40px;padding-top:20px;display:flex}.privacy-choice{flex-wrap:wrap;align-items:center;gap:10px 16px;margin:20px 0 16px;display:flex}.privacy-choice span{color:var(--muted);font-size:.88rem}.contact-form{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-subtle);gap:20px;margin:32px 0 48px;padding:24px;display:grid;position:relative}.contact-form__honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-field{color:var(--ink-2);gap:6px;font-size:.86rem;font-weight:600;display:grid}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:var(--control);border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);border-radius:8px;padding:9px 12px;font-size:.96rem;font-weight:400}.form-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364685b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:34px}.form-field textarea{resize:vertical;min-height:180px;line-height:1.55}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring);outline:none}.form-help{color:var(--muted);font-size:.8rem;font-weight:400}.character-count{color:var(--muted);font-family:var(--mono);justify-self:end;font-size:.76rem;font-weight:400}.report-context{background:var(--accent-soft);color:var(--ink-2);border-radius:8px;margin:0;padding:10px 12px;font-size:.86rem}.turnstile-slot{min-height:65px}.form-actions{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.form-actions>span{color:var(--muted);font-size:.82rem}.contact-success{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--accent-soft);margin:32px 0 48px;padding:28px}.contact-success:focus{outline:3px solid var(--accent-ring);outline-offset:3px}.contact-success h2{margin:0 0 10px}.contact-success .button{margin-top:8px}.not-found{text-align:center;margin-inline:auto}.not-found p{max-width:48ch;margin-inline:auto}@media (width<=960px){.site-header nav a:not([data-keep]){display:none}.article-section{grid-template-columns:1fr;gap:20px;padding:40px 0}.article-section__label{grid-template-columns:36px minmax(0,1fr);align-items:start;gap:0 14px;display:grid}.section-chip{grid-row:1/-1;margin:0}.article-section__label h2,.article-section__label p,.article-section__label a{grid-column:2}.article-section__label h2{margin-top:5px;margin-bottom:4px}.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.test-list,.site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.site-frame{width:min(calc(100% - 28px), var(--content))}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-card{padding:14px}.home-intro{padding:36px 0 32px}.home-section{padding:24px 0 36px}.category-row{padding:32px 0}.test-list{grid-template-columns:1fr}.test-list a{margin-inline:0;padding-inline:0}.test-list a:hover{background:0 0}.page-intro{padding-top:10px}.test-shell{margin-inline:-8px;border-radius:var(--radius);margin-bottom:16px}.test-page-actions{margin-bottom:32px}.test-shell__foot{padding-inline:14px}.site-footer__grid{display:none}.site-footer__meta{border-top:0;margin-top:0;padding-top:0}.related-list{grid-template-columns:1fr}.article-section{padding:36px 0}.step-list li,.troubleshooting-list li{padding-left:42px}.site-footer__grid{grid-template-columns:1fr;gap:22px}.form-grid{grid-template-columns:1fr}.contact-form{padding:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.skip-link,.site-header,.site-footer,.breadcrumbs,.page-intro,.test-shell__foot,.test-page-actions,.article-grid,.tool-actions,.test-status{display:none!important}.site-frame,.test-shell,device-test{width:100%;box-shadow:none;border:0;margin:0;padding:0}}.test-tool{gap:16px;min-height:280px;padding:18px;display:grid}.test-tool>*{min-width:0}.test-status{min-height:24px;color:var(--ink-2);align-items:center;gap:10px;font-size:.92rem;display:flex}.test-status p{margin:0;font-weight:500}.status-dot{background:var(--line-strong);border-radius:50%;flex:none;width:10px;height:10px;position:relative}.test-status[data-status=running] .status-dot,.test-status[data-status=starting] .status-dot{background:var(--info)}.test-status[data-status=running] .status-dot:after{border:2px solid var(--info);content:"";opacity:0;border-radius:50%;animation:1.6s ease-out infinite status-pulse;position:absolute;inset:-4px}.test-status[data-status=success] .status-dot{background:var(--good)}.test-status[data-status=success] p{color:var(--good)}.test-status[data-status=attention] .status-dot,.test-status[data-status=permission-required] .status-dot{background:var(--warn)}.test-status[data-status=attention] p,.test-status[data-status=permission-required] p{color:var(--warn)}.test-status[data-status=error] .status-dot,.test-status[data-status=unsupported] .status-dot,.test-status[data-status=permission-denied] .status-dot{background:var(--bad)}.test-status[data-status=error] p,.test-status[data-status=unsupported] p,.test-status[data-status=permission-denied] p{color:var(--bad)}@keyframes status-pulse{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(1.4)}}.tool-actions{flex-wrap:wrap;gap:8px;display:flex}.field-grid,.result-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.field{color:var(--muted);gap:5px;font-size:.8rem;font-weight:500;display:grid}.result-card{border:1px solid var(--line);background:var(--bg);border-radius:8px;min-height:74px;padding:10px 12px}.result-card small,.result-card strong{display:block}.result-card small{color:var(--muted);font-size:.76rem;font-weight:500}.result-card strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em;overflow-wrap:anywhere;margin-top:3px;font-size:1.2rem;font-weight:600}.screen-source{color:var(--muted);margin-top:4px;font-size:.72rem;display:block}.inline-notice{border:1px solid color-mix(in srgb, var(--warn) 30%, var(--bg));background:var(--warn-soft);color:var(--warn);border-radius:8px;margin:0;padding:10px 14px;font-size:.88rem}.inline-notice strong{color:inherit}.meter{background:var(--bg-muted);border-radius:999px;height:10px;overflow:hidden}.meter>span{width:var(--value,0%);border-radius:inherit;background:var(--accent);height:100%;transition:width 90ms linear;display:block}.media-waveform{border:1px solid var(--line);background:var(--bg-subtle);border-radius:8px;width:100%;height:140px;display:block}.media-tool audio{width:100%}.observation-card{border:1px solid var(--line);background:var(--bg-subtle);border-radius:8px;margin:0;padding:12px 14px 14px}.observation-card legend{color:var(--ink);padding-inline:4px;font-size:.9rem;font-weight:600}.observation-receipt{gap:10px;display:grid}.observation-receipt__result,.observation-output{border-left:3px solid var(--accent);background:var(--bg);min-height:40px;color:var(--ink-2);border-radius:0 6px 6px 0;margin:0;padding:10px 12px;font-size:.9rem}.camera-stage{background:var(--ink);border-radius:10px;position:relative;overflow:hidden}.camera-stage video,.camera-stage canvas,.meeting-grid video{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.stage-fullscreen-exit,.display-fullscreen-exit{z-index:5;min-height:40px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #00000026;border-radius:999px;padding:8px 14px;font-size:.88rem;font-weight:600;position:absolute;top:12px;right:12px;box-shadow:0 2px 12px #0000004d}.meeting-grid{grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);align-items:start;gap:16px;display:grid}.meeting-grid video{background:var(--ink);border-radius:10px}.meeting-grid>div{gap:12px;display:grid}.meeting-grid p{margin:0}.keyboard-capture,.pointer-pad,.touch-stage,.sensor-visual{border:1px solid var(--line-strong);background:var(--bg-subtle);border-radius:10px;position:relative;overflow:hidden}.keyboard-capture{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;min-height:200px;padding:14px;overflow-x:auto}.keyboard-capture:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring)}.keyboard-capture>p{color:var(--muted);margin-bottom:12px;font-size:.86rem;position:sticky;left:0}.keyboard-capture>p strong{color:var(--ink)}.keyboard-capture--compact{text-align:center;align-content:center;justify-items:center;min-height:140px;display:grid;overflow:hidden}.keyboard-capture--compact strong{font-size:1.3rem}.event-log{border:1px solid var(--line);background:var(--bg);border-radius:8px;min-width:0;padding:12px 14px}.event-log h3{color:var(--muted);margin-bottom:8px;font-size:.8rem;font-weight:600}.event-log ol{max-height:200px;color:var(--ink-2);font-family:var(--mono);margin:0;padding-left:22px;font-size:.8rem;line-height:1.6;overflow:auto}.pointer-pad{cursor:crosshair;text-align:center;touch-action:none;user-select:none;background-image:radial-gradient(circle,#2428201f 1px,#0000 1px);background-size:20px 20px;align-content:center;justify-items:center;gap:4px;min-height:240px;padding:28px;display:grid}.pointer-pad>strong{font-size:1.15rem;font-weight:600}.pointer-pad>span:not(.pointer-marker){max-width:54ch;color:var(--muted);font-size:.9rem}.pointer-marker{z-index:2;top:var(--pointer-y,-30px);left:var(--pointer-x,-30px);background:var(--accent);width:16px;height:16px;box-shadow:0 0 0 1px var(--accent);pointer-events:none;border:2px solid #fff;border-radius:50%;position:absolute;translate:-50% -50%}.check-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.mouse-button,.signal-check{border:1px solid var(--line);background:var(--bg);text-align:center;border-radius:8px;align-content:center;gap:2px;min-height:64px;padding:10px;font-size:.88rem;transition:background-color 70ms linear,border-color 70ms linear;display:grid}.mouse-button strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.15rem}.mouse-button[data-state=tested],.signal-check[data-state=seen]{border-color:color-mix(in srgb, var(--accent) 40%, var(--bg));background:var(--accent-soft)}.mouse-button[data-state=held]{border-color:var(--accent-hover);background:var(--accent);color:#fff}.mouse-button[data-state=held] strong{color:#fff}.signal-check{text-align:left;grid-template-columns:16px 1fr;place-items:center start}.signal-check>span{border:2px solid var(--line-strong);border-radius:50%;width:12px;height:12px}.signal-check[data-state=seen]>span{border-color:var(--good);background:var(--good);box-shadow:inset 0 0 0 2px #fff}.gamepad-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.gamepad-layout>section{border:1px solid var(--line);background:var(--bg);border-radius:10px;min-width:0;padding:14px}.gamepad-layout h3{margin-bottom:10px;font-size:.9rem}.gamepad-buttons,.gamepad-axes{gap:6px;display:grid}.gamepad-control{border:1px solid var(--line);background:var(--bg-subtle);border-radius:7px;grid-template-columns:minmax(74px,.8fr) minmax(90px,1fr) minmax(92px,.8fr);align-items:center;gap:8px;padding:8px 10px;font-size:.82rem;display:grid}.gamepad-control strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;text-align:right}.gamepad-control[data-state=active]{border-color:var(--accent)}.gamepad-control[data-state=held]{border-color:var(--accent);background:var(--accent-soft)}.axis-meter{background:var(--bg-muted);border-radius:999px;height:10px;position:relative}.axis-meter i{background:var(--line-strong);width:1px;position:absolute;top:-3px;bottom:-3px;left:50%}.axis-meter>span{top:50%;left:var(--axis-value,50%);background:var(--accent);width:10px;height:18px;box-shadow:0 0 0 1px var(--accent);border:2px solid #fff;border-radius:4px;position:absolute;translate:-50% -50%}.touch-stage{background:var(--bg);height:clamp(380px,58vw,600px);min-height:380px}.touch-stage:fullscreen{border:0;border-radius:0;width:100vw;height:100vh}.touch-stage canvas{touch-action:none;width:100%;height:100%;display:block}.sensor-visual{background-color:var(--bg-subtle);background-image:linear-gradient(90deg, transparent calc(50% - .5px), var(--line-strong) 50%, transparent calc(50% + .5px)), linear-gradient(transparent calc(50% - .5px), var(--line-strong) 50%, transparent calc(50% + .5px));min-height:300px}.sensor-visual:before{border:1px dashed var(--line-strong);content:"";border-radius:50%;position:absolute;inset:12.5%}.sensor-visual>span{z-index:1;top:calc(50% + var(--sensor-y,0%));left:calc(50% + var(--sensor-x,0%));background:var(--accent);width:30px;height:30px;box-shadow:0 0 0 1px var(--accent), 0 4px 14px #18181b2e;border:4px solid #fff;border-radius:50%;transition:top 70ms linear,left 70ms linear;position:absolute;translate:-50% -50%}.audio-channel-grid,.preset-grid,.surround-map{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.audio-channel-grid button,.preset-grid button,.surround-map button{border:1px solid var(--line-strong);background:var(--bg);min-height:68px;color:var(--ink);cursor:pointer;text-align:center;border-radius:8px;align-content:center;justify-items:center;gap:2px;padding:10px 12px;font-weight:600;transition:background-color 90ms linear,border-color 90ms linear;display:grid}.audio-channel-grid button:hover,.preset-grid button:hover,.surround-map button:hover{border-color:var(--accent);background:var(--accent-soft)}.audio-channel-grid button span,.surround-map button span{color:var(--muted);font-size:.78rem;font-weight:400}.preset-grid button{min-height:44px;font-weight:500}.frequency-tool .inline-notice,.surround-tool .inline-notice,.latency-tool .inline-notice{max-width:72ch}.reaction-pad,.click-pad{border:1px solid var(--line-strong);background:var(--bg-subtle);min-height:260px;color:var(--ink);cursor:pointer;text-align:center;touch-action:manipulation;user-select:none;border-radius:10px;place-content:center;gap:6px;padding:28px;transition:background-color 80ms linear,border-color 80ms linear;display:grid}.reaction-pad strong,.click-pad strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(2.4rem,7vw,4rem);font-weight:650}.reaction-pad span,.click-pad span{color:var(--muted)}.click-pad:hover{border-color:var(--accent)}.reaction-pad[data-phase=waiting]{color:#fff;background:#dc2626;border-color:#e7b7b7}.reaction-pad[data-phase=waiting] span{color:#ffffffd9}.reaction-pad[data-phase=ready]{color:#fff;background:#22c55e;border-color:#15803d}.reaction-pad[data-phase=ready] span{color:#ffffffe6}.reaction-pad[data-phase=false-start]{background:var(--bad-soft);border-color:#f1b5b5}.typing-passage{border:1px solid var(--line);background:var(--bg);min-height:110px;font-family:var(--mono);border-radius:8px;margin:0;padding:16px;font-size:1.05rem;line-height:1.7}.typing-tool textarea{resize:vertical;min-height:110px}.aim-field{border:1px solid var(--line-strong);background-color:var(--bg-subtle);touch-action:manipulation;user-select:none;background-image:radial-gradient(circle,#2428201f 1px,#0000 1px);background-size:20px 20px;border-radius:10px;place-items:center;min-height:400px;display:grid;position:relative;overflow:hidden}.aim-target{background:var(--accent);width:54px;height:54px;box-shadow:0 0 0 2px var(--accent), 0 3px 12px #18181b33;cursor:crosshair;border:7px solid #fff;border-radius:50%;padding:0;position:absolute;translate:-50% -50%}.aim-target:after{content:"";background:#fff;border-radius:50%;width:10px;height:10px;margin:auto;display:block}@media (width<=860px){.gamepad-layout{grid-template-columns:1fr}}@media (width<=620px){.test-tool{gap:14px;padding:14px}.tool-actions .button{flex:130px}.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.result-card strong{font-size:1.05rem}.pointer-pad{min-height:320px}.touch-stage{height:440px;min-height:360px}.gamepad-control{grid-template-columns:minmax(68px,.75fr) minmax(72px,1fr)}.gamepad-control strong{text-align:left;grid-column:1/-1}.meeting-grid,.audio-channel-grid{grid-template-columns:1fr}.reaction-pad,.click-pad{min-height:220px}}.media-level{color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 12px;font-size:.84rem;font-weight:500;display:grid}.media-level .meter{border:1px solid var(--line-strong);height:14px;box-shadow:inset 0 2px #24282014}.media-level output{min-width:4ch;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;font-size:1rem;font-weight:600}.media-tool .media-waveform{color:var(--accent);border-color:var(--line-strong);background-color:var(--bg-subtle);background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:24px 24px;box-shadow:inset 0 2px #2428200d}.media-info{border:1px solid var(--line);columns:2;column-rule:1px solid var(--line);background:var(--bg);border-top:0;border-radius:8px;column-gap:0;margin:0;overflow:hidden}.media-info>div{border-top:1px solid var(--line);break-inside:avoid;justify-content:space-between;gap:12px;padding:9px 14px;font-size:.88rem;display:flex}.media-info>div:nth-child(odd){background:var(--bg-subtle)}.media-info dt{color:var(--muted)}.media-info dd{color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere;font-weight:600;font-family:var(--mono);margin:0;font-size:.8rem}.media-recording{border-top:1px dashed var(--line-strong);gap:10px;padding-top:14px;display:grid}.media-playback{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.media-playback audio{flex:260px;width:auto;min-width:0}.media-band{color:var(--muted);margin-top:4px;font-size:.76rem;font-weight:500;display:block}.result-card[data-band=fine] .media-band{color:var(--good)}.result-card[data-band=warn]{border-color:var(--warn)}.result-card[data-band=warn] .media-band{color:var(--warn)}.result-card[data-band=hot]{border-color:var(--bad);background:var(--bad-soft)}.result-card[data-band=hot] .media-band{color:var(--bad)}.result-card .button--small{margin-top:8px}.media-tool .camera-stage{width:min(100%, calc(72vh * var(--stage-ratio,1.7778)));aspect-ratio:var(--stage-ratio,1.7778);border:2px solid var(--ink);background:var(--ink);box-shadow:0 4px 0 var(--line-strong);margin:0 auto}.media-tool .camera-stage:before{color:var(--bg-muted);font:.8rem var(--mono);content:"Camera preview";place-items:center;display:grid;position:absolute;inset:0}.media-tool .camera-stage video,.media-tool .camera-stage canvas{aspect-ratio:auto;object-fit:contain;transform-origin:50%;background:0 0;width:100%;height:100%;position:absolute;inset:0}.media-tool .camera-stage:fullscreen{aspect-ratio:auto;width:100vw;height:100vh;box-shadow:none;background:#000;border:0;border-radius:0}.stage-toolbar{display:none}.camera-stage:fullscreen .stage-toolbar{z-index:5;gap:8px;display:flex;position:absolute;top:12px;left:12px}.button[data-orientation][aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.media-tool input[type=range]{min-height:0;accent-color:var(--accent);background:0 0;border:0;padding:0}.media-tool input[type=range]:focus{box-shadow:none;outline:2px solid var(--accent);outline-offset:4px}.media-tool [data-zoom-value]{color:var(--ink);font-variant-numeric:tabular-nums}.media-photo{justify-items:start;gap:10px;margin:0;display:grid}.media-photo img{border:1px solid var(--line-strong);background:var(--bg);max-width:min(100%,480px);box-shadow:3px 3px 0 var(--line);border-radius:4px;padding:8px;display:block}.meeting-tool .meeting-grid .camera-stage{width:100%}@media (width<=620px){.camera-stage:fullscreen .stage-toolbar{top:auto;right:12px;bottom:max(12px, env(safe-area-inset-bottom))}.camera-stage:fullscreen .stage-toolbar .button{flex:1}.media-info{columns:1;column-rule:none}.media-level{grid-template-columns:minmax(0,1fr) auto}.media-level>span:first-child{grid-column:1/-1}}.media-tool [hidden]{display:none}.audio-volume,.audio-range{color:var(--muted);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-subtle);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:10px 14px;font-size:.84rem;font-weight:500;display:grid}.audio-volume input[type=range],.audio-range input[type=range]{width:100%;min-height:var(--control);accent-color:var(--accent);cursor:pointer;margin:0}.audio-volume output,.audio-range output{min-width:4ch;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;font-size:.92rem;font-weight:600}.audio-range output{color:var(--muted);font-weight:500}.audio-hint{color:var(--muted);margin-top:-8px;font-size:.8rem;display:block}.audio-tool :is(.audio-channel-grid,.preset-grid,.surround-map) button{background:var(--bg);box-shadow:0 2px 0 var(--line);border-bottom-width:3px;border-radius:9px}.audio-tool :is(.audio-channel-grid,.surround-map) button strong{font-family:var(--mono);font-size:1.15rem}.audio-tool :is(.audio-channel-grid,.preset-grid,.surround-map) button:hover{background:var(--accent-soft);border-color:var(--accent)}.audio-tool :is(.audio-channel-grid,.preset-grid,.surround-map) button[aria-pressed=true]{box-shadow:inset 0 2px 0 var(--accent-ring);border-top-width:3px;border-bottom-width:1px}.audio-channel-grid button[aria-pressed=true],.surround-map button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-hover)}.audio-channel-grid button[aria-pressed=true] span,.surround-map button[aria-pressed=true] span{color:var(--accent-hover)}.audio-help{margin:0;font-size:.9rem}.audio-readout{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-subtle);text-align:center;min-height:92px;box-shadow:inset 0 3px 0 var(--line);align-content:center;justify-items:center;gap:2px;padding:12px;display:grid}.audio-readout strong{font-family:var(--mono);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(2.2rem,6vw,3.2rem);font-weight:650;line-height:1.1}.audio-readout span{color:var(--muted);font-size:.88rem}.bass-tool .preset-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.bass-tool .preset-grid button{gap:1px;min-height:54px;display:grid}.bass-tool .preset-grid button span{color:var(--muted);font-size:.76rem;font-weight:400}.audio-capability{border:1px solid var(--line);border-left:3px solid var(--line-strong);background:var(--bg-subtle);color:var(--ink-2);border-radius:0 8px 8px 0;margin:0;padding:10px 14px;font-size:.9rem}.audio-capability[data-state=stereo]{border-left-color:var(--warn)}.audio-capability[data-state=discrete]{border-left-color:var(--good)}.surround-controls{grid-template-columns:minmax(120px,160px) minmax(0,1fr);align-items:end;gap:12px 16px;display:grid}.surround-tool .surround-map{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-subtle);grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"fl c fr""sl you sr"".lfe.";gap:8px;width:100%;max-width:560px;margin:0 auto;padding:16px;display:grid}.surround-tool .surround-map[data-map-layout="7.1"]{grid-template-areas:"fl c fr""sl you sr""rl lfe rr"}.surround-map [data-position=FL]{grid-area:fl}.surround-map [data-position=C]{grid-area:c}.surround-map [data-position=FR]{grid-area:fr}.surround-map [data-position=SL]{grid-area:sl}.surround-map [data-position=SR]{grid-area:sr}.surround-map [data-position=RL]{grid-area:rl}.surround-map [data-position=RR]{grid-area:rr}.surround-map [data-position=LFE]{grid-area:lfe}.surround-you{border:1px dashed var(--line-strong);min-height:68px;color:var(--muted);background:var(--bg);font-size:.82rem;font-weight:600;font-family:var(--mono);border-radius:50%;grid-area:you;place-items:center;display:grid}.latency-tool .reaction-pad{min-height:300px}.latency-tool .reaction-pad[data-phase=listening]{border-color:var(--accent);background:var(--bg)}.latency-tool .reaction-pad[data-phase=between]{border-color:var(--line-strong);background:var(--bg-subtle)}.latency-tool .reaction-pad[data-phase=done]{border-color:var(--accent);background:var(--accent-soft)}.latency-tool .reaction-pad[data-phase=done] strong{color:var(--accent-hover)}.audio-card-note{color:var(--muted);margin-top:4px;font-size:.72rem;line-height:1.35;display:block}@media (width<=620px){.audio-volume,.audio-range{gap:6px 8px;padding:8px 10px}.surround-controls .audio-volume{grid-template-columns:minmax(0,1fr) auto}.surround-controls .audio-volume>span{grid-column:1/-1}.surround-tool .surround-map{padding:10px}.bass-tool .preset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.surround-controls{grid-template-columns:minmax(96px,120px) minmax(0,1fr)}.latency-tool .reaction-pad{min-height:240px}.surround-tool .surround-map button{min-height:60px;padding:8px 6px}.surround-tool .surround-map button span{font-size:.7rem}}.kb-capture{padding:14px}.kb-capture>.kb-prompt{margin:0 0 12px;font-size:.9rem}.kb-capture>.kb-prompt strong{margin-bottom:2px;display:block}.kb-phone-note{border-left:3px solid var(--warn);background:var(--bg);color:var(--ink-2);border-radius:0 6px 6px 0;margin:0 0 12px;padding:10px 12px;font-size:.88rem;position:sticky;left:0}.kb-map{--gap:4px;--block-gap:14px;--cap:36px;align-items:flex-start;gap:var(--block-gap);width:100%;display:flex;container-type:inline-size}.kb-map[data-layout=full] .kb-block{--cap:clamp(20px, calc((100cqw - 19 * var(--gap) - 2 * var(--block-gap)) / 22), 52px)}.kb-map:not([data-layout=full]) .kb-block{--cap:clamp(20px, calc((100cqw - 16 * var(--gap) - var(--block-gap)) / 18), 52px)}.kb-block{gap:var(--gap);flex:none;display:grid}.kb-row{gap:var(--gap);display:flex}.kb-block--numpad{padding-top:calc(var(--cap) + var(--gap))}.kb-grid{gap:var(--gap);grid-auto-rows:var(--cap);grid-template-columns:repeat(4, var(--cap));display:grid}.kb-map[data-layout=tkl] .kb-block--numpad,.kb-map[data-layout=compact] .kb-block--numpad{display:none}.kb-map[data-layout=compact] .kb-row[data-row=edit]{visibility:hidden}.kb-key,.kb-gap{--u:1;width:calc(var(--u) * var(--cap) + (var(--u) - 1) * var(--gap));height:var(--cap);flex:none;place-content:center;display:grid}.kb-key[data-u="1.1667"]{--u:1.1667}.kb-key[data-u="1.25"]{--u:1.25}.kb-key[data-u="1.5"]{--u:1.5}.kb-key[data-u="1.75"]{--u:1.75}.kb-key[data-u="2"]{--u:2}.kb-key[data-u="2.25"]{--u:2.25}.kb-key[data-u="2.75"]{--u:2.75}.kb-key[data-u="6.25"]{--u:6.25}.kb-grid .kb-key{width:auto}.kb-grid .kb-key[data-u="2"]{grid-column:span 2}.kb-grid .kb-key[data-tall]{grid-row:span 2;height:auto}.kb-key{border:1px solid var(--line-strong);box-shadow:inset 0 1px 0 var(--bg);background:var(--bg);color:var(--ink);font-size:clamp(.6rem, calc(var(--cap) * .3), .88rem);text-align:center;white-space:nowrap;border-bottom-width:3px;border-radius:5px;padding:0 2px;font-weight:500;line-height:1;transition:background-color 70ms linear,border-color 70ms linear,translate 70ms linear;overflow:hidden}.kb-key[data-state=tested]{border-color:color-mix(in srgb, var(--accent) 35%, var(--bg));background:var(--accent-soft)}.kb-key[data-state=held]{border-color:var(--accent-hover);background:var(--accent);box-shadow:none;color:#fff;border-bottom-width:1px;translate:0 1px}.kb-key[data-target]{outline:2px dashed var(--accent);outline-offset:-3px}.kb-key[data-target][data-state=held]{outline-color:#fff}.kb-key[data-extra]{border-color:var(--warn);background:var(--warn-soft);color:var(--warn)}.kb-key[data-extra][data-state=held]{border-color:var(--warn);background:var(--warn);color:#fff}.kb-extras{color:var(--ink-2);margin:12px 0 0;font-size:.86rem;position:sticky;left:0}.kb-extras span{font-family:var(--mono);font-size:.82rem}.kb-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.kb-bar .test-status{flex:260px;min-width:0}.kb-bar .tool-actions{align-items:center}.kb-layouts{gap:4px;display:inline-flex}.kb-layouts .button[aria-pressed=true],.kb-presets .button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-hover)}.kb-presets{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.kb-presets>span{color:var(--muted);margin-right:4px;font-size:.86rem;font-weight:500}.kb-note,.kb-verdict{color:var(--muted);margin:0;font-size:.86rem}.kb-verdict{min-height:1.4em;color:var(--ink-2);font-weight:500}.kb-detail{color:var(--muted);margin-top:4px;font-size:.9rem;display:block}.keycode-capture{gap:4px;min-height:190px}.keycode-hero{justify-items:center;gap:8px;display:grid}.keycode-hero__key{border:1px solid var(--line-strong);background:var(--bg);font-family:var(--mono);color:var(--ink);letter-spacing:-.03em;overflow-wrap:anywhere;border-bottom-width:4px;border-radius:8px;padding:12px 20px;font-size:clamp(2.2rem,7vw,4rem);font-weight:650;line-height:1.05}.keycode-hero__meta{color:var(--ink-2);font-family:var(--mono);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;gap:8px 28px;font-size:1.05rem;display:flex}.keycode-hero__meta>span{justify-items:center;gap:2px;display:grid}.keycode-hero__meta small{color:var(--muted);font-family:var(--font);font-size:.72rem}.result-card .result-copy{width:100%;color:var(--ink);cursor:pointer;font-variant-numeric:tabular-nums;letter-spacing:-.01em;overflow-wrap:anywhere;text-align:left;background:0 0;border:0;border-radius:4px;margin-top:3px;padding:0;font-size:1.2rem;font-weight:600;line-height:1.3;display:block}.result-card .result-copy:hover{color:var(--accent)}@media (width<=620px){.kb-bar{flex-direction:column;align-items:stretch}.kb-bar .test-status{flex:none}.kb-bar .tool-actions .button{flex:auto}.kb-layouts{flex:100%}.kb-layouts .button{flex:1 1 0}.result-card .result-copy{font-size:1.05rem}}.pointer-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.pointer-bar .test-status{flex:260px;min-width:0}.pointer-bar .tool-actions{align-items:center}.field--inline{color:var(--ink-2);align-items:center;gap:8px;font-size:.88rem;display:inline-flex}.field--inline select{width:auto;min-height:var(--control)}.pointer-pad>strong,.pointer-pad>span:not(.pointer-marker){z-index:1;position:relative}.pointer-trail{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.pointer-hero{justify-items:center;gap:2px;line-height:1;display:grid}.pointer-hero strong{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(2.6rem,7vw,4rem);font-weight:650}.pointer-hero em{color:var(--muted);font-size:.9rem;font-style:normal;font-weight:500}.mouse-layout{grid-template-columns:minmax(0,1fr) 230px;align-items:stretch;gap:12px;display:grid}.mouse-pad{min-height:320px}.mouse-panel{box-shadow:inset 0 3px 0 var(--bg-muted);border:1px solid var(--line);background:var(--bg);border-radius:10px;align-content:start;gap:10px;padding:12px;display:grid}.mouse-figure{width:100%;max-height:210px;margin-inline:auto}.mouse-body{fill:#e6ebdb;stroke:var(--ink-2);stroke-width:2px}.mouse-zone{fill:var(--bg);stroke:var(--ink-2);stroke-width:2px;transition:fill 70ms linear,stroke 70ms linear}.mouse-zone[data-state=tested]{fill:var(--accent-soft);stroke:var(--accent)}.mouse-zone[data-state=held]{fill:var(--accent);stroke:var(--accent-hover)}.mouse-zone[data-state=held]+.mouse-label{fill:#fff}.mouse-label{fill:var(--muted);pointer-events:none;text-anchor:middle;font-size:13px;font-weight:600}.mouse-label--small{font-size:9px}.mouse-arrow{fill:var(--line-strong);transition:fill 70ms linear}.mouse-arrow[data-state=lit],.mouse-arrow[data-state=seen]{fill:var(--accent)}.mouse-counts{gap:4px;margin:0;padding:0;list-style:none;display:grid}.mouse-counts li{color:var(--ink-2);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;font-size:.84rem;display:flex}.mouse-counts strong{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums}.mouse-counts li[data-state=tested]{background:var(--accent-soft)}.mouse-counts li[data-state=held]{background:var(--accent);color:#fff}.mouse-counts li[data-state=held] strong{color:#fff}.double-click-pad[data-state=fast]{border-color:var(--warn);background:var(--warn-soft)}.wheel-pad{min-height:280px;padding-bottom:88px}.wheel-indicators{z-index:1;gap:4px;display:grid;position:absolute;top:14px;left:14px}.wheel-indicators span{border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 6px;font-size:.8rem;font-weight:500;transition:background-color 70ms linear,border-color 70ms linear,color 70ms linear;display:inline-flex}.wheel-indicators i{font-size:.95rem;font-style:normal}.wheel-indicators span[data-state=seen]{border-color:var(--accent);color:var(--ink-2)}.wheel-indicators span[data-state=lit]{border-color:var(--accent);background:var(--accent);color:#fff}.wheel-streak{border:1px solid var(--line);background:var(--bg);border-radius:6px;align-items:stretch;gap:2px;height:64px;padding:0 2px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.wheel-streak:before{background:var(--line-strong);content:"";height:1px;position:absolute;top:50%;left:0;right:0}.wheel-streak i{flex:1 1 0;min-width:3px;position:relative}.wheel-streak i:before{height:calc(var(--h,40%) / 2);content:"";border-radius:2px;position:absolute;left:0;right:0}.wheel-streak i[data-dir=up]:before{background:var(--accent);bottom:50%}.wheel-streak i[data-dir=down]:before{background:var(--muted);top:50%}.speed-pad{min-height:260px}.rate-pad{min-height:280px}.rate-scale{padding-top:14px;position:relative}.rate-scale ol{border-top:1px solid var(--line-strong);color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;margin:0;padding:10px 0 0;font-size:.78rem;list-style:none;display:flex}.rate-scale li{position:relative}.rate-scale li:before{background:var(--line-strong);content:"";width:1px;height:6px;position:absolute;top:-10px;left:50%}.rate-scale li:first-child{text-align:left}.rate-scale li:last-child{text-align:right}.rate-scale__marker{top:2px;left:var(--pos,0%);background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 1px var(--accent);border:2px solid #fff;border-radius:50%;position:absolute;translate:-50%}.trackpad-layout{grid-template-columns:minmax(0,1fr) 250px;align-items:stretch;gap:12px;display:grid}.trackpad-pad{min-height:320px}.check-list{align-content:start;gap:6px;margin:0;padding:0;list-style:none;display:grid}.check-list .signal-check{min-height:44px;padding:8px 10px}.dpi-pad{min-height:260px}.pointer-note{color:var(--muted);margin:0;font-size:.86rem}.dpi-pad[data-holding]{cursor:none}.dpi-escape{font-size:.8rem}.dpi-escape kbd{font-size:.72rem}@media (width<=720px){.mouse-layout,.trackpad-layout{grid-template-columns:1fr}.mouse-panel{order:-1;grid-template-columns:120px minmax(0,1fr);align-items:center}.mouse-figure{max-height:170px}.mouse-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.mouse-pad,.trackpad-pad{min-height:220px}.check-list{grid-template-columns:repeat(2,minmax(0,1fr))}.check-list .signal-check{min-height:40px;font-size:.82rem}.wheel-pad{min-height:260px;padding-top:110px}.wheel-indicators{grid-template-columns:repeat(2,auto)}}@media (width<=620px){.pointer-bar{flex-direction:column;align-items:stretch}.pointer-bar .test-status{flex:none}.pointer-bar .tool-actions .button{flex:auto}.field--inline{justify-content:space-between}.rate-pad,.speed-pad,.dpi-pad{min-height:220px}.mouse-counts li{font-size:.8rem}}.gamepad-slots{flex-wrap:wrap;gap:6px;display:flex}.gamepad-slot{min-height:var(--control);border:1px solid var(--line-strong);background:var(--bg);color:var(--ink-2);cursor:pointer;border-radius:6px;padding:4px 12px;font-size:.84rem;font-weight:500}.gamepad-slot[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.gamepad-identity{border:1px solid var(--line);background:var(--bg-subtle);border-radius:8px;gap:4px;padding:12px 14px;display:grid}.gamepad-identity__main{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gamepad-identity__main strong{font-size:1.02rem;font-weight:600}.gamepad-identity__name{color:var(--ink-2);overflow-wrap:anywhere;font-size:.92rem}.gamepad-identity__meta{min-height:1.4em;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.pad-graphic{width:100%;max-width:480px;margin:0 auto;transition:opacity .16s;overflow:visible}.pad-graphic[data-idle=true] .pad-body{fill:var(--bg-subtle)}.pad-body{fill:#e6ebdb;stroke:var(--ink-2);stroke-width:2px}.pad-button rect,.pad-button circle{fill:var(--bg);stroke:var(--line-strong);stroke-width:1.5px;transition:fill 80ms linear,stroke 80ms linear}.pad-button[data-state=active] rect,.pad-button[data-state=active] circle{stroke:var(--accent)}.pad-button[data-state=tested] rect,.pad-button[data-state=tested] circle{fill:var(--accent-soft);stroke:var(--accent)}.pad-button[data-state=held] rect,.pad-button[data-state=held] circle{fill:var(--accent);stroke:var(--accent)}.pad-glyph{fill:var(--ink-2);font-family:var(--font);pointer-events:none;user-select:none;font-size:11px;font-weight:650}.pad-button[data-state=held] .pad-glyph{fill:#fff}.pad-stick .pad-stick__well{fill:var(--bg-muted);stroke:var(--line-strong)}.pad-stick[data-state=held] .pad-stick__well{fill:var(--accent-soft);stroke:var(--accent)}.pad-stick .pad-stick__dot{fill:var(--accent);stroke:#fff;stroke-width:2px}.pad-trigger-outline{fill:var(--bg-muted);stroke:var(--line-strong);stroke-width:1.5px}.pad-button .pad-trigger-fill{fill:var(--accent);stroke:none}.pad-readout{fill:var(--muted);font-family:var(--mono);font-variant-numeric:tabular-nums;user-select:none;font-size:10px}.gamepad-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.gamepad-toolbar__count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.86rem}.rumble-row{flex-wrap:wrap;flex:auto;align-items:center;gap:6px 8px;display:flex}.rumble-row__label{color:var(--ink-2);font-size:.86rem;font-weight:500}.rumble-row__status{color:var(--muted);flex:160px;font-size:.82rem}.gamepad-platforms{border-top:1px solid var(--line);padding-top:14px}.gamepad-platforms h3{margin:0 0 10px;font-size:.92rem}.gamepad-platforms dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.gamepad-platforms dl>div{border:1px solid var(--line);border-radius:8px;min-width:0;padding:10px 12px;scroll-margin-top:80px}.gamepad-platforms dt{font-size:.86rem;font-weight:600}.gamepad-platforms dd{color:var(--muted);margin:4px 0 0;font-size:.82rem;line-height:1.5}.gamepad-platforms[data-detected=xbox] [data-family=xbox],.gamepad-platforms[data-detected=playstation] [data-family=playstation],.gamepad-platforms[data-detected=switch] [data-family=switch]{border-color:var(--accent);background:var(--accent-soft)}.drift-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.drift-stick{align-content:start;gap:8px;display:grid}.drift-stick h3{text-align:center;margin:0;font-size:.92rem}.drift-field{aspect-ratio:1;border:1px solid var(--line);background-color:#eef1e5;background-image:linear-gradient(90deg, transparent calc(50% - .5px), var(--line-strong) 50%, transparent calc(50% + .5px)), linear-gradient(transparent calc(50% - .5px), var(--line-strong) 50%, transparent calc(50% + .5px)), radial-gradient(circle closest-side, transparent 0 49.4%, var(--line) 49.8% 50.6%, transparent 51% 98.6%, var(--line-strong) 99% 100%);border-radius:10px;width:100%;max-width:300px;margin:0 auto;position:relative;box-shadow:inset 0 2px 3px #2428200f}.drift-field[data-state=outside]{border-color:var(--warn)}.drift-ring{width:var(--deadzone-size,10%);aspect-ratio:1;border:2px dashed var(--warn);pointer-events:none;background:#b4530914;border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}.drift-marker{top:calc(50% + var(--stick-y,0%));left:calc(50% + var(--stick-x,0%));background:var(--accent);width:18px;height:18px;box-shadow:0 0 0 1px var(--accent);pointer-events:none;border:3px solid #fff;border-radius:50%;position:absolute;translate:-50% -50%}.drift-readout{text-align:center;gap:2px;min-height:58px;display:grid}.drift-readout strong{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:1.45rem;font-weight:600}.drift-readout span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.82rem}.drift-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.drift-summary>div{background:var(--bg-subtle);border:1px solid var(--line);border-radius:8px;min-width:0;padding:8px 10px}.drift-summary dt{color:var(--muted);font-size:.74rem;font-weight:500}.drift-summary dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:2px 0 0;font-size:.92rem;font-weight:600}.drift-note{min-height:2.6em;color:var(--muted);font-size:.8rem;line-height:1.4;display:block}.drift-controls{flex-wrap:wrap;align-items:end;gap:12px 16px;display:flex}.drift-deadzone{flex:240px}.drift-deadzone output{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.drift-deadzone input[type=range],.rumble-custom input[type=range]{min-height:0;height:var(--control);accent-color:var(--accent);background:0 0;border:0;padding:0}.drift-deadzone input[type=range]:focus,.rumble-custom input[type=range]:focus{box-shadow:none}.drift-deadzone input[type=range]:focus-visible,.rumble-custom input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.rumble-presets{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;display:grid}.rumble-status{min-height:2.6em;color:var(--ink-2);margin:0;font-size:.95rem;font-weight:500}.rumble-meta{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.84rem}.rumble-custom{background:var(--bg-subtle);border:1px solid var(--line);border-radius:10px}.rumble-custom summary{cursor:pointer;padding:12px 14px;font-size:.92rem;font-weight:500}.rumble-custom summary:hover{color:var(--accent)}.rumble-custom>.field-grid{padding:0 14px 4px}.rumble-custom>.tool-actions{padding:10px 14px 14px}.rumble-custom output{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}@media (width<=860px){.gamepad-platforms dl{grid-template-columns:1fr}}@media (width<=620px){.drift-grid{grid-template-columns:1fr}.drift-field{max-width:100%}.gamepad-toolbar{flex-direction:column;align-items:stretch}.gamepad-toolbar>.button{width:100%}.rumble-row .button{flex:auto}.rumble-row__status{flex-basis:100%}.rumble-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.rumble-presets .button--danger{grid-column:1/-1}}.result-grid--pair{grid-template-columns:repeat(2,minmax(0,1fr))}.result-card--headline strong{font-size:clamp(1.5rem,4vw,2rem)}.tool-crosslink,.tool-hint,.sensor-caption{color:var(--muted);margin:0;font-size:.88rem;line-height:1.45}.tool-hint{color:var(--ink-2)}.tool-crosslink a{text-underline-offset:2px;text-decoration:underline}.touch-stage[data-stage]{background:#eef1e5;flex-direction:column;height:clamp(380px,58vw,600px);min-height:380px;display:flex}.touch-stage[data-stage] canvas{touch-action:none;flex:1 1 0;width:100%;height:auto;min-height:0;display:block}.touch-stage[data-stage] canvas:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}.touch-stage__bar{padding:8px 10px;padding-top:calc(8px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--line);background:var(--bg-subtle);flex:none;justify-content:space-between;align-items:center;gap:10px;display:flex}.touch-stage__bar[hidden]{display:none}.touch-stage__badge{color:var(--ink);font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:.92rem;font-weight:600}.touch-stage[data-complete=true] .touch-stage__badge{color:var(--good)}.touch-stage[data-stage]:fullscreen,.touch-stage[data-stage].is-full-viewport{border:0;border-radius:0;width:100%;height:100%;min-height:100%}.touch-stage[data-stage].is-full-viewport{z-index:10000;position:fixed;inset:0}.vibration-patterns{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.vibration-pattern.button{border-top:3px solid var(--line-strong);text-align:center;align-content:center;gap:2px;min-height:86px;padding:10px 12px;display:grid}.vibration-pattern strong{font-size:1rem}.vibration-pattern span{color:var(--muted);font-size:.8rem;font-weight:500}.phone-vibration-tool .inline-notice{max-width:72ch}.sensor-visual__yaw{width:2px;height:42%;translate:-50% -100%;rotate:var(--sensor-yaw,0deg);transform-origin:bottom;background:var(--accent);opacity:.55;border-radius:1px;position:absolute;top:50%;left:50%}@media (width<=620px){.touch-stage[data-stage]{height:440px;min-height:360px}.sensor-visual{min-height:200px}.vibration-patterns{grid-template-columns:repeat(2,minmax(0,1fr))}}.sensor-visual{border-color:var(--line-strong);background-color:#eef1e5;box-shadow:inset 0 2px 3px #2428200f}.sensor-visual:before{border-style:solid}.display-stage-shell,.motion-field,.fixer-field{border:2px solid var(--ink);border-radius:var(--radius);min-height:360px;box-shadow:0 4px 0 var(--line-strong);background:#000;position:relative;overflow:hidden}.display-stage-shell:fullscreen,.motion-field:fullscreen,.fixer-field:fullscreen,.display-stage-shell.is-full-viewport,.motion-field.is-full-viewport,.fixer-field.is-full-viewport{width:100%;height:100%;min-height:100%;box-shadow:none;border:0;border-radius:0}.display-stage-shell.is-full-viewport,.motion-field.is-full-viewport,.fixer-field.is-full-viewport{z-index:10000;position:fixed;inset:0}.display-stage{cursor:pointer;touch-action:pan-y;user-select:none;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.display-stage:focus-visible{outline:3px solid var(--accent);outline-offset:-6px;box-shadow:none}.display-start{z-index:4;white-space:nowrap;position:absolute;bottom:20px;left:50%;translate:-50%;box-shadow:0 2px 12px #00000059}[data-fullscreen=true] .display-start{display:none}.display-toast,.display-badge{z-index:5;color:#fff;font-variant-numeric:tabular-nums;pointer-events:none;white-space:pre;font-size:.85rem;font-weight:600;font-family:var(--mono);background:#000000b3;border:1px solid #ffffff59;border-radius:5px;padding:6px 12px;position:absolute;top:12px;left:12px}.display-toast{opacity:0;transition:opacity .25s}.display-toast.is-visible{opacity:1}.display-zone-overlay{pointer-events:none;background:linear-gradient(90deg,#0000 33.1%,#ffffff59 33.2% 33.5%,#0000 33.6% 66.3%,#ffffff59 66.4% 66.7%,#0000 66.8%),linear-gradient(#0000 33.2%,#ffffff59 33.3% 33.6%,#0000 33.7% 66.4%,#ffffff59 66.5% 66.8%,#0000 66.9%);position:absolute;inset:0}.display-pattern-label{min-height:1.5em;color:var(--ink-2);margin:0;font-size:.92rem}.display-hint{max-width:72ch;color:var(--muted);margin:0;font-size:.86rem}.display-controls{border:1px solid var(--line);background:var(--bg-subtle);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:10px 16px;padding:14px;display:flex}.display-picker{flex-wrap:wrap;gap:10px;display:flex}.display-picker .field select,.display-picker .field input{width:auto;min-width:170px}.display-picker .field input[type=color]{min-width:64px}.display-controls .button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-hover)}.pixel-legend{color:var(--ink-2);flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;font-size:.86rem;display:flex}.pixel-legend span{align-items:center;gap:8px;display:inline-flex}.pixel-legend i{border:1px solid var(--line-strong);background:#e4e4e4;border-radius:4px;width:24px;height:24px;position:relative}.pixel-legend i:after{content:"";background:#000;width:4px;height:4px;position:absolute;top:10px;left:10px}.pixel-legend i[data-kind=bright],.pixel-legend i[data-kind=stuck]{background:#111}.pixel-legend i[data-kind=bright]:after{background:#fff}.pixel-legend i[data-kind=stuck]:after{background:red}.contrast-grid{grid-template-columns:repeat(8,minmax(32px,1fr));gap:clamp(4px,1vw,12px);width:min(92%,900px);padding:clamp(36px,7vw,80px);display:grid}.contrast-swatch{aspect-ratio:1;font:700 clamp(.65rem, 1.7vw, 1rem) / 1 var(--mono);border:1px solid #7f7f7fa6;place-items:center;display:grid}.gamma-chart{background:#777;gap:14px;width:min(94%,980px);padding:clamp(36px,7vw,72px) clamp(16px,5vw,56px);display:grid}.gamma-row{color:#fff;text-shadow:0 1px 2px #000;grid-template-columns:110px 1fr 1fr;align-items:stretch;min-height:52px;font-weight:700;display:grid}.gamma-row>span{background:#333;place-items:center;display:grid}.gamma-stripes{background:repeating-linear-gradient(90deg,#000 0 1px,#fff 1px 2px)}.rgb-steps{grid-template-columns:repeat(8,1fr);min-height:54px;display:grid}.rgb-steps>span{border:1px solid #777}.projector-mark{border:3px solid;place-items:center;display:grid;position:absolute;inset:7%}.projector-mark:before,.projector-mark:after{content:"";background:currentColor;position:absolute}.projector-mark:before{width:110%;height:2px;top:50%;left:-5%}.projector-mark:after{width:2px;height:110%;top:-5%;left:50%}.projector-mark--fringe{color:#fff;filter:drop-shadow(2px 0 red)drop-shadow(-2px 0 #0ff)}.projector-circle{aspect-ratio:1;border:3px solid;border-radius:50%;width:min(55vh,55vw)}.projector-corner{font-weight:700;position:absolute}.projector-corner--tl{top:4px;left:6px}.projector-corner--br{bottom:4px;right:6px}.viewing-angle-chart{background:#777;grid-template-columns:repeat(3,1fr);gap:clamp(6px,1vw,12px);width:min(88%,760px);padding:clamp(32px,7vw,72px);display:grid}.viewing-angle-chart>span{text-shadow:0 1px 2px #000;border:1px solid #ffffff8c;place-items:center;min-height:70px;font-weight:700;display:grid}.motion-field{cursor:pointer;background:#888;min-height:290px}.motion-field--light{background:#fff}.motion-target{color:#111;width:120px;height:74px;font:900 1.25rem / 1 var(--mono);will-change:transform;background:#fff;border:4px solid;place-items:center;display:grid;position:absolute;top:50%;left:12px;translate:0 -50%}.motion-target:after{content:"";background:repeating-linear-gradient(90deg,currentColor 0 5px,#0000 5px 10px);height:8px;position:absolute;bottom:11px;left:15px;right:15px}.frame-skip-grid{grid-template-columns:repeat(12,1fr);gap:clamp(3px,.8vw,10px);width:min(96%,1100px);padding:clamp(44px,7vw,80px) clamp(12px,4vw,48px);display:grid}.frame-cell{aspect-ratio:1;color:#111;font:700 clamp(.6rem, 1.6vw, 1rem) / 1 var(--mono);border:2px solid #111;border-radius:3px;place-items:center;display:grid}.frame-cell.is-active{color:#fff;background:#111}.frame-examples{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.frame-examples figure{gap:6px;margin:0;display:grid}.frame-examples figcaption{color:var(--muted);font-size:.82rem}.frame-example{background:#111;border-radius:6px;grid-template-columns:repeat(8,1fr);gap:3px;padding:6px;display:grid}.frame-example span{aspect-ratio:1;border:1px solid #444;border-radius:2px}.frame-example span[data-lit]{background:#fff}.refresh-hero{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-subtle);text-align:center;justify-items:center;gap:2px;padding:22px 16px 16px;display:grid}.refresh-hero strong{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(3rem,9vw,4.6rem);font-weight:650;line-height:1}.refresh-hero em{color:var(--muted);font-size:1rem;font-style:normal;font-weight:500}.refresh-hero__note{min-height:1.4em;color:var(--ink-2);margin-top:6px;font-size:.9rem;font-weight:500}.refresh-hero[data-state=warming] strong,.refresh-hero[data-state=settling] strong{color:var(--muted)}.result-grid--fps{grid-template-columns:repeat(4,minmax(0,1fr))}.frame-visualization,.motion-comparison{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);gap:8px;padding:14px;display:grid}.frame-visualization>strong,.motion-comparison>strong{font-size:.92rem}.frame-chart{background:linear-gradient(var(--bg-subtle) 1px, transparent 1px);background-size:100% 25%;border-radius:8px;width:100%;height:150px;display:block}.frame-chart__median{stroke:var(--warn);stroke-width:2px;stroke-dasharray:8 6;vector-effect:non-scaling-stroke}.frame-chart__line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;vector-effect:non-scaling-stroke}.frame-chart-note,.motion-comparison-note{color:var(--muted);margin:0;font-size:.8rem}.motion-comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.motion-reference{color:var(--muted);gap:5px;font-size:.78rem;font-weight:600;display:grid}.motion-reference-track{border:1px solid var(--line-strong);background:var(--bg-subtle);border-radius:999px;height:34px;position:relative;overflow:hidden}.motion-reference-dot{background:var(--accent);will-change:transform;border-radius:50%;width:20px;height:20px;position:absolute;top:6px;left:6px}.screen-hero{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-subtle);text-align:center;justify-items:center;gap:4px;padding:24px 16px 20px;display:grid}.screen-hero>strong{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(2.4rem,8vw,4rem);font-weight:650;line-height:1.05}.screen-hero>span{color:var(--muted);font-size:.9rem}.screen-hero>.screen-hero__physical{color:var(--ink-2);margin-top:10px;font-size:clamp(1.1rem,3vw,1.5rem);font-weight:600}.screen-hero__physical-note{font-size:.8rem}.screen-diagonal{max-width:320px}.refresh-hero,.screen-hero{border-color:var(--line-strong);box-shadow:inset 0 3px 0 var(--line)}.frame-visualization>strong,.motion-comparison>strong{font-family:var(--mono);font-size:.8rem}.frame-chart{background-color:var(--bg-subtle);background-image:linear-gradient(var(--line) 1px, transparent 1px)}.fixer-field{touch-action:none}.fixer-patch{color:#fff;cursor:move;touch-action:none;user-select:none;background:#222;border:2px dashed #ffffffbf;border-radius:3px;place-items:center;font-size:.72rem;font-weight:600;display:grid;position:absolute;translate:-50% -50%}.fixer-patch:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:none}.fixer-patch canvas{width:100%;height:100%;image-rendering:pixelated;display:none;position:absolute;inset:0}.fixer-patch[data-state=running],.fixer-patch[data-state=paused]{border-style:solid}.fixer-patch[data-state=running] canvas,.fixer-patch[data-state=paused] canvas{display:block}.fixer-patch[data-state=running] .fixer-patch__label{display:none}.fixer-patch[data-state=paused] .fixer-patch__label{background:#000000b3;border-radius:3px;padding:2px 6px;position:relative}.fixer-resize{background:var(--accent);cursor:nwse-resize;touch-action:none;border:2px solid #fff;border-radius:4px 0 0;width:16px;height:16px;position:absolute;bottom:0;right:0}.pixel-fixer-tool .inline-notice{max-width:72ch}@media (width<=720px){.result-grid--fps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.display-controls{padding:10px}.display-stage-shell,.fixer-field{min-height:300px}.motion-field{min-height:240px}.contrast-grid{grid-template-columns:repeat(4,1fr)}.gamma-row{grid-template-columns:64px 1fr 1fr}.motion-target{width:92px}.frame-skip-grid{grid-template-columns:repeat(8,1fr)}.motion-comparison-grid,.frame-examples{grid-template-columns:1fr}.display-picker{width:100%}.display-picker .field{flex:140px}.display-picker .field select{width:100%;min-width:0}}@media (prefers-reduced-motion:reduce){.motion-target,.motion-reference-dot{will-change:auto}}.printer-controls{gap:12px;display:grid}.printer-modes .button{flex:200px}.printer-modes .button[aria-current=true]{box-shadow:0 0 0 3px var(--accent-ring)}.printer-options{flex-wrap:wrap;align-items:end;gap:10px 20px;display:flex}.printer-paper{width:160px}.printer-note{color:var(--muted);margin:0 0 10px;font-size:.88rem}.printer-preview{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-muted);background-image:radial-gradient(var(--line-strong) .7px, transparent .7px);background-size:16px 16px;padding:18px;overflow:auto}.printer-sheet{color:#000;background:#fff;width:min(100%,720px);margin:auto;padding:28px;font-family:Arial,Helvetica,sans-serif;box-shadow:0 1px 2px #00000014,0 8px 24px #0000001a}@media screen{.printer-sheet[data-paper=letter][data-mode=full]{aspect-ratio:8.5/11}.printer-sheet[data-paper=a4][data-mode=full]{aspect-ratio:210/297}}.print-sheet-head{border-bottom:3px solid #000;justify-content:space-between;align-items:end;gap:20px;padding-bottom:8px;display:flex}.print-sheet-head h3,.print-sheet-head p{color:#000;margin:0}.print-sheet-head h3{letter-spacing:0;font-size:20px}.print-sheet-head small{font-size:11px}.print-sheet-head p{text-align:right;font-size:10px;line-height:1.4}.print-section{margin-top:18px}.print-section h4{color:#000;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700}.print-section small{margin-top:6px;font-size:9px;line-height:1.4;display:block}.print-gray-ramp{border:1px solid #000;grid-template-columns:repeat(11,1fr);height:55px;display:grid}.print-gray-ramp span{align-items:end;padding:3px;font-size:8px;display:grid}.print-gray-ramp b,.print-swatch b,.print-ink b{color:#000;background:#fff;justify-self:start;padding:1px 3px}.print-fine-lines{background:repeating-linear-gradient(90deg,#000 0 .25mm,#0000 .25mm 2mm),repeating-linear-gradient(0deg,#000 0 .25mm,#0000 .25mm 1.5mm);border:1px solid #000;height:70px;margin-top:8px}.print-text-samples{gap:6px;margin-top:10px;display:grid}.print-text{margin:0;line-height:1.3}.print-text--serif{font-family:Georgia,Times New Roman,Times,serif}.print-text--sans{font-family:Arial,Helvetica,sans-serif}.print-cmyk{grid-template-columns:repeat(4,1fr);gap:4mm;display:grid}.print-ink{gap:2mm;display:grid}.print-ink__block{border:1px solid #000;align-items:end;min-height:40mm;padding:5px;font-size:9px;font-weight:700;display:grid}.print-ink__ramp{border:1px solid #000;align-items:center;height:8mm;padding:0 4px;font-size:8px;font-weight:700;display:grid}.print-swatches{grid-template-columns:repeat(3,1fr);gap:4px;margin-top:8px;display:grid}.print-swatch{border:1px solid #000;align-items:end;min-height:10mm;padding:4px;font-size:9px;font-weight:700;display:grid}.print-rainbow{background:linear-gradient(90deg,#000,red,#ff0,#0f0,#0ff,#00f,#f0f,#fff);border:1px solid #000;height:10mm;margin-top:8px}.print-alignment-row{grid-template-columns:3fr 2fr;gap:4mm;display:grid}.print-alignment-row>*{height:150px}.print-registration{background-color:#0000;background-image:linear-gradient(#999 1px,#0000 1px),linear-gradient(90deg,#999 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:10mm 10mm;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:2px solid #000;position:relative}.print-registration:before{content:"";border:4px double #0ff;border-radius:50%;width:24mm;height:24mm;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:1mm 0 #f0f,-1mm 0 #ff0}.print-cross:before,.print-cross:after{content:"";background:#000;position:absolute;top:50%;left:50%;translate:-50% -50%}.print-cross:before{width:30mm;height:.5mm}.print-cross:after{width:.5mm;height:30mm}.print-ruler{border-top:1px solid #000;width:150mm;max-width:100%;height:16px;margin-top:6px;position:relative}.print-ruler span{border-left:1px solid #000;padding-top:4px;padding-left:2px;font-size:8px;line-height:1;position:absolute;top:0}.print-ruler span:last-child{border-left:0;border-right:1px solid #000;padding-left:0;padding-right:2px;translate:-100%}.print-tone-image{background:radial-gradient(circle at 72% 32%,#fff 0 4%,#ffd27c 5% 12%,#0000 13%),radial-gradient(circle at 24% 67%,#f3b59f 0 12%,#0000 13%),linear-gradient(145deg,#133a5e,#60a7b9 42%,#e8ca93 43% 61%,#467143 62%);border:1px solid #000;position:relative;overflow:hidden}.print-tone-image:after{content:"";background:linear-gradient(90deg,#111,#777,#eee);border-radius:50% 50% 12% 12%;width:28%;height:55%;position:absolute;bottom:9%;right:5%}.print-tone-ramp{background:linear-gradient(90deg,#000,#fff);border:1px solid #000;height:8mm;margin-top:8px}.midi-connect{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.midi-connect__note{color:var(--muted);margin:0;font-size:.88rem}.midi-checks{align-content:start}.midi-checks label{min-height:24px;color:var(--ink-2);align-items:center;font-size:.88rem;font-weight:400;display:flex}.midi-checks input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);margin:0 8px 0 0}.midi-stage{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-subtle);border-top:5px solid var(--ink);min-width:0;box-shadow:0 3px 0 var(--line);position:relative}.midi-keyboard{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;min-height:132px;padding:8px 8px 10px;display:flex;overflow-x:auto}.midi-keyboard:focus-visible{outline-offset:-2px}.midi-key{border:1px solid var(--line-strong);background:var(--bg);min-width:34px;color:var(--ink-2);font-variant-numeric:tabular-nums;text-align:center;border-bottom-width:3px;border-radius:0 0 4px 4px;flex:0 0 34px;align-items:end;padding:6px 2px;font-size:.66rem;transition:background-color 60ms linear,color 60ms linear;display:grid}.midi-key.is-black{z-index:1;border-color:var(--ink);background:var(--ink);color:#0000;border-radius:0 0 3px 3px;flex-basis:22px;min-width:22px;height:72px;margin-inline:-11px}.midi-key.is-active{border-color:var(--accent-hover);background:var(--accent);color:#fff}.midi-stage__overlay{z-index:2;border-radius:inherit;background:color-mix(in srgb, var(--bg-subtle) 75%, transparent);color:var(--ink-2);text-align:center;pointer-events:none;place-items:center;margin:0;padding:16px;font-size:.92rem;font-weight:500;display:grid;position:absolute;inset:0}.midi-stage__overlay span{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg);max-width:34ch;box-shadow:2px 3px 0 var(--line);padding:10px 16px}.midi-stage[data-state=live] .midi-stage__overlay{display:none}.midi-stage[data-state=live] .midi-key{color:var(--ink-2)}.midi-stage[data-state=live] .midi-key.is-black{color:#0000}.midi-stage[data-state=live] .midi-key.is-active{color:#fff}.midi-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.midi-controls__extra{display:contents}.midi-control{border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:4px;padding:10px 12px;font-size:.8rem;font-weight:500;display:grid}.midi-control strong{color:var(--ink);font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:.95rem}.midi-control.is-live{border-color:var(--accent);background:var(--accent-soft)}.midi-control .meter{grid-column:1/-1;height:8px}.midi-control:not(.is-live) .meter>span{background:var(--line-strong)}.meter--center{position:relative}.meter--center:after{background:var(--line-strong);content:"";width:1px;position:absolute;top:-2px;bottom:-2px;left:50%}.midi-log-wrap{border:1px solid var(--line);border-radius:8px;max-height:320px;overflow:auto}.midi-log{border-collapse:collapse;width:100%;font-size:.82rem}.midi-log__caption{color:var(--muted);text-align:left;padding:8px 10px;font-size:.78rem;font-weight:600}.midi-log th,.midi-log td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:7px 10px}.midi-log th{background:var(--bg-subtle);color:var(--muted);font-size:.76rem;font-weight:600;position:sticky;top:0}.midi-log td{font-family:var(--mono);font-variant-numeric:tabular-nums}.midi-log tbody tr:nth-child(2n){background:var(--bg-subtle)}.midi-log__caption{border-bottom:1px solid var(--line);background:var(--bg);font-family:var(--mono)}.midi-log .midi-empty{padding:24px 14px;font-family:inherit}.midi-empty{color:var(--muted);text-align:center!important;white-space:normal!important}@media (width<=620px){.printer-preview{padding:6px}.printer-sheet{padding:14px}.print-sheet-head{gap:4px;display:grid}.print-sheet-head h3{font-size:17px}.print-sheet-head p{text-align:left}.printer-paper{width:100%}.print-cmyk{gap:2mm}.print-alignment-row{grid-template-columns:1fr}.print-alignment-row>*{height:120px}.midi-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.midi-log th:nth-child(2),.midi-log td:nth-child(2),.midi-log th:nth-child(6),.midi-log td:nth-child(6){display:none}}@media print{.printer-tool{min-height:0;padding:0;display:block}.printer-controls{display:none!important}.printer-preview{background:#fff;border:0;border-radius:0;padding:0;overflow:visible}.printer-sheet{width:100%;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;margin:0;padding:0}.print-sheet-head{break-inside:avoid}.print-section{break-inside:avoid;margin-top:5mm}.print-section:first-of-type{margin-top:4mm}.print-gray-ramp{height:14mm}.print-fine-lines{height:18mm}.print-ink__block{min-height:40mm}.print-alignment-row>*{height:48mm}.printer-sheet[data-mode=bw] .print-gray-ramp{height:24mm}.printer-sheet[data-mode=bw] .print-fine-lines{height:30mm}.printer-sheet[data-mode=color] .print-ink__block{min-height:110mm}.printer-sheet[data-mode=color] .print-ink__ramp{height:12mm}.printer-sheet[data-mode=color] .print-swatch{min-height:20mm}.printer-sheet[data-mode=color] .print-rainbow{height:16mm}.printer-sheet[data-paper=letter][data-mode=full] .print-section{margin-top:4mm}.printer-sheet[data-paper=letter][data-mode=full] .print-ink__block{min-height:32mm}.printer-sheet[data-paper=letter][data-mode=full] .print-alignment-row>*{height:40mm}}.bench-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.bench-bar .test-status{flex:260px;min-width:0}.bench-tabs{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-subtle);flex-wrap:wrap;gap:4px;padding:3px;display:inline-flex}.bench-tabs button{min-height:calc(var(--control) - 10px);color:var(--ink-2);cursor:pointer;font-size:.88rem;font-weight:650;font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:4px;padding:4px 12px}.bench-tabs button:hover{color:var(--ink)}.bench-tabs button[aria-checked=true]{border-color:var(--line-strong);background:var(--accent-soft);color:var(--accent-hover);box-shadow:0 2px 0 var(--line)}.bench-tabs button:disabled{cursor:default;opacity:.6}.bench-tabs[data-disabled=true] button[aria-checked=true]{opacity:1}.reaction-pad{background:#e6ebdb;min-height:380px}.click-pad{background:#e6ebdb;min-height:340px;box-shadow:inset 0 3px #24282012}.click-pad em{background:var(--accent-soft);color:var(--accent-hover);border-radius:999px;margin:2px auto 0;padding:3px 12px;font-size:.9rem;font-style:normal;font-weight:600;display:inline-block}.click-pad[data-state=running]{border-color:var(--accent)}.click-pad[data-state=result] strong{font-size:clamp(2rem,6vw,3.4rem)}.click-pad[data-state=stopped]{border-color:var(--warn)}.reaction-pad[data-phase=done]{border-color:var(--accent);background:var(--accent-soft)}.typing-area{border:1px solid var(--line-strong);background:var(--bg);box-shadow:inset 0 3px 0 var(--bg-muted);cursor:text;border-radius:10px;padding:18px 20px;display:grid;position:relative}.typing-area[data-focus=true]{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring)}.typing-area[data-state=stopped]{border-color:var(--warn)}.typing-tool .typing-passage{min-height:0;max-height:5.4em;color:var(--muted);font-family:var(--mono);letter-spacing:.01em;overflow-wrap:anywhere;user-select:none;background:0 0;border:0;border-radius:0;padding:0;font-size:1.35rem;line-height:1.8;overflow:hidden}.typing-area[data-state=result] .typing-passage{opacity:.35}.tw{white-space:pre;display:inline-block}.tc{border-radius:2px;position:relative}.tc[data-state=correct]{color:var(--ink)}.tc[data-state=wrong]{background:var(--bad-soft);color:var(--bad);text-decoration:underline;text-decoration-color:var(--bad)}.tc--space[data-state=wrong]{background:var(--bad)}.tc[data-caret=true]:before{background:var(--line-strong);content:"";border-radius:1px;width:2px;position:absolute;top:.15em;bottom:.15em;left:-1px}.typing-area[data-focus=true] .tc[data-caret=true]:before{background:var(--accent);animation:1s step-end infinite typing-caret}@keyframes typing-caret{50%{opacity:0}}.typing-input{color:#0000;caret-color:#0000;opacity:0;resize:none;cursor:text;background:0 0;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.typing-input:focus{box-shadow:none;outline:none}.typing-hint{min-height:1.5em;color:var(--muted);margin:10px 0 0;font-size:.86rem}.typing-result{border-top:1px solid var(--line);text-align:center;gap:4px;margin-top:10px;padding-top:12px;display:grid}.typing-result strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(2rem,6vw,3rem);font-weight:650}.typing-result span{color:var(--ink-2);font-size:.95rem}.typing-result__again{color:var(--muted);font-size:.86rem}.aim-caption{color:var(--muted);white-space:nowrap;pointer-events:none;margin:0;font-size:.92rem;font-weight:500;position:absolute;top:calc(50% + 44px);left:50%;translate:-50%}.aim-summary{text-align:center;pointer-events:none;gap:2px;width:min(92%,560px);display:grid;position:absolute;top:22px;left:50%;translate:-50%}.aim-summary strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(1.8rem,5vw,2.6rem);font-weight:650}.aim-summary span{color:var(--ink-2);font-size:.92rem}@media (width<=620px){.reaction-pad,.click-pad{min-height:260px}.bench-tabs{width:100%}.bench-tabs button{flex:auto;padding-inline:8px}.typing-tool .typing-passage{font-size:1.15rem}.aim-caption{white-space:normal;text-align:center;width:80%}}.reaction-pad[data-phase=waiting]{border-color:var(--bad);background:var(--bad)}.reaction-pad[data-phase=ready]{border-color:var(--good);background:var(--good)}.reaction-pad[data-phase=waiting] strong,.reaction-pad[data-phase=ready] strong,.reaction-pad[data-phase=waiting] span,.reaction-pad[data-phase=ready] span{color:#fff}.typing-result strong,.aim-summary strong{font-family:var(--mono)}.aim-field{background-color:#eef1e5}.aim-target{border-color:var(--bg);box-shadow:0 0 0 2px var(--ink), 0 3px 0 var(--line-strong)}body{background:#f8f7ef}.site-header{border-bottom:1px solid var(--ink);-webkit-backdrop-filter:none}.brand{letter-spacing:-.065em;gap:11px;font-size:1.4rem;font-weight:850}.brand svg{width:38px;height:38px;color:var(--ink);background:#f57543;border-radius:9px;padding:6px;rotate:-5deg}.site-header nav a{padding:10px 9px;font-size:.82rem;font-weight:650}.site-header nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent)}.site-header nav a[data-keep]{background:var(--ink);color:var(--bg);border-radius:6px;margin-left:8px;padding-inline:16px}.site-header nav a[data-keep]:hover{background:var(--accent)}h1,h2{letter-spacing:-.045em}.home-intro{grid-template-columns:1.2fr 1fr;align-items:center;gap:42px;max-width:none;padding:62px 0 42px;display:grid}.home-intro__copy{min-width:0}.workbench-label{font-family:var(--mono);color:var(--ink-2);letter-spacing:.085em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:17px;font-size:.7rem;font-weight:500;display:flex}.workbench-label>span{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px}.home-intro h1{letter-spacing:-.065em;margin-bottom:23px;font-size:clamp(2.8rem,5.5vw,4.65rem);font-weight:850;line-height:1.04}.home-intro h1 em{color:var(--accent);letter-spacing:-.065em;font-family:Georgia,Times New Roman,serif;font-weight:400}.home-intro .lede{max-width:45ch;font-size:1.03rem;line-height:1.7}.catalog-search{max-width:520px;display:block}.catalog-search input{border:1.5px solid var(--ink);background:var(--bg);border-radius:9px;height:57px;padding-left:45px;box-shadow:3px 3px #d8ddca}.catalog-search svg{color:var(--ink);left:16px}.catalog-search input::placeholder{color:var(--muted);opacity:1}.search-status{margin-top:8px;font-size:.8rem}.home-facts{color:var(--ink-2);gap:8px 16px;font-size:.71rem}.home-facts svg{width:13px;height:13px;color:var(--ink-2)}.workbench-art{width:100%;position:relative}.workbench-art svg{width:100%;height:auto}.workbench-sticker{border:1.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#f9df79;border-radius:5px;padding:10px 16px;font-size:.82rem;font-weight:750;position:absolute;top:5px;right:21px;rotate:7deg}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.section-heading .workbench-label,.catalog-heading .workbench-label{margin-bottom:9px}.section-heading h2,.catalog-heading h2{margin:0;font-size:clamp(1.5rem,2.7vw,2rem)}.section-heading>a{color:var(--ink);flex:none;padding-block:8px;font-size:.84rem;font-weight:650}.section-heading>a span{color:var(--accent);margin-left:8px}.home-section{padding-top:24px}.featured-grid{gap:15px}.featured-card{background:var(--bg);border-color:#b7beab;border-radius:13px;min-height:184px;padding:20px;position:relative;box-shadow:0 3px #e0e3d5}.featured-card:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:3px 5px #cfd6bf}.featured-card__top{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.featured-card .section-chip{width:42px;height:42px;color:var(--ink);background:#e9edde;border:1px solid #d0d5c3;border-radius:10px;margin:0}.featured-card:nth-child(4n+2) .section-chip{background:#ffe4d4;border-color:#e6cbb9}.featured-card:nth-child(4n+3) .section-chip{background:#ede5f6;border-color:#d6c9e6}.featured-card:nth-child(4n) .section-chip{background:#fbefba;border-color:#e6d899}.featured-card .section-chip svg{width:22px;height:22px}.featured-card .tool-number{font:.7rem var(--mono);color:var(--muted)}.tool-number>span{margin-left:9px;font-size:1.05rem}.featured-card strong{letter-spacing:-.02em;font-size:1rem;font-weight:750}.featured-card>span:not(.section-chip):not(.featured-card__top){color:var(--ink-2);font-size:.81rem}.catalog{scroll-margin-top:95px}.catalog-heading{border-top:2px solid var(--ink);padding:30px 0}.category-row{scroll-margin-top:95px}.article-section{border-color:#c8cebc;grid-template-columns:280px minmax(0,1fr);gap:24px 55px}.article-section__label h2{font-size:1.3rem}.section-chip{border:1px solid color-mix(in srgb, currentColor 20%, transparent);border-radius:8px}.test-list{gap:8px 22px}.test-list a{border-bottom:1px solid var(--line);border-radius:0;margin:0;padding:12px}.test-list a:hover{background:#e9edde;border-radius:7px}.test-list strong{font-size:.93rem;font-weight:700}.test-list small{font-size:.81rem}.breadcrumbs{font-family:var(--mono);padding-top:24px;font-size:.72rem}.page-intro{padding:17px 0 24px}.page-intro h1{font-size:clamp(1.8rem,3.4vw,2.5rem);font-weight:850}.page-intro .lede{font-size:.96rem}.test-shell{border:1.5px solid var(--line-strong);border-top:5px solid var(--ink);box-shadow:4px 5px #dce1cf}.test-shell__foot{background:#edf0e4}.test-tool{padding:22px}.test-status{font-size:.86rem}.result-card{background:#f5f5eb;border-color:#cfd5c2;border-radius:7px}.result-card small{font-family:var(--mono);font-size:.7rem}.result-card strong{font-family:var(--mono);font-size:1.2rem}.button,button.button{box-shadow:0 2px 0 var(--accent-hover);border-radius:6px;font-weight:700}.button--secondary,button.button--secondary,.button--danger,button.button--danger{box-shadow:0 2px #d7dccb}.button:disabled{box-shadow:none}.keyboard-capture{background:#e6ebdb;border-color:#b1baa1}.kb-key{background:#fffdf7;border-color:#9da78e;border-bottom-width:3px}.mouse-button[data-state=tested],.signal-check[data-state=seen]{border-color:#d7a487}.pointer-pad{background-color:#eef1e5}.pill{font-family:var(--mono);font-size:.7rem}.result-list{background:var(--bg)}.limits-panel{border:1px solid var(--line);background:#edf0e4}.related-list a{background:var(--bg);box-shadow:0 2px #e0e3d5}.related-list a:hover{border-color:var(--ink)}.step-list li:before,.troubleshooting-list li:before{font-family:var(--mono);border:1px solid;border-radius:7px}.simple-page h1{font-size:clamp(2rem,4vw,3rem)}.contact-form{background:#edf0e4;box-shadow:4px 4px #dce1cf}.site-footer{border-top:2px solid var(--ink);background:#e9edde;padding-top:32px}.footer-brand-row{border-bottom:1px solid #bcc5ae;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-bottom:30px;padding-bottom:30px;display:flex}.footer-brand-row p{color:var(--ink-2);margin:0;font-family:Georgia,serif;font-size:1.15rem;font-style:italic}.site-footer .brand{color:var(--ink)}.footer-top{margin-left:auto;font-size:.8rem}.site-footer h2{font-weight:750}.site-footer a{color:#505a45}.site-footer a:hover{color:var(--accent)}.site-footer__meta{border-color:#bcc5ae}@media (width<=1100px){.site-header nav a{padding-inline:6px;font-size:.75rem}.home-intro{gap:25px}.home-facts{max-width:370px}}@media (width<=960px){.article-section{grid-template-columns:1fr;gap:20px}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-intro{grid-template-columns:1.15fr 1fr;gap:20px;padding-top:45px}.home-intro h1{font-size:3.1rem}.workbench-label{font-size:.63rem}.home-intro .lede{font-size:.93rem}.workbench-sticker{padding:7px 10px;font-size:.7rem;right:10px}}@media (width<=620px){.site-header__inner{min-height:66px}.brand{font-size:1.3rem}.brand svg{width:34px;height:34px}.site-header nav a[data-keep]{padding:10px 15px;font-size:.8rem}.home-intro{grid-template-columns:1fr;gap:25px;padding:35px 0 22px}.home-intro h1{font-size:clamp(2.8rem,11vw,4rem)}.home-intro .lede{max-width:40ch}.workbench-art{justify-self:center;max-width:330px}.home-facts{gap:10px 15px;max-width:none}.section-heading{flex-direction:column;align-items:start;gap:7px}.section-heading h2,.catalog-heading h2{font-size:1.65rem}.featured-grid{gap:12px}.featured-card{min-height:195px;padding:14px}.featured-card strong{font-size:.94rem}.featured-card .tool-number{font-size:.63rem}.featured-card .section-chip{width:35px;height:35px}.test-list{gap:2px}.test-list a{padding:12px 0}.test-list a:hover{background:0 0}.test-tool{padding:14px}.test-shell{box-shadow:2px 3px #dce1cf}.page-intro h1{font-size:1.85rem}.footer-brand-row{align-items:start;gap:14px}.footer-brand-row p{flex-basis:100%;order:2}.footer-top{padding-top:8px}}@media print{body{background:#fff}.test-shell{box-shadow:none;border:0}}p a:not(.button),.article-section__body li a{text-decoration:underline}@media (width<=620px){.workbench-art{max-width:240px}.workbench-sticker{padding:5px 8px;font-size:.63rem}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:where(input,select,textarea,button){accent-color:var(--accent)}.field input,.field select,.field textarea,.form-field input,.form-field select,.form-field textarea{border-radius:var(--radius-sm)}.field input:disabled,.field select:disabled,.field textarea:disabled,.form-field input:disabled,.form-field select:disabled,.form-field textarea:disabled{background-color:var(--bg-muted);cursor:not-allowed}.test-status{padding-block:5px}.status-dot{box-shadow:0 0 0 3px var(--bg), 0 0 0 4px var(--line)}.event-log,.observation-card{border-radius:var(--radius-sm)}.event-log h3,.event-log h2,.observation-card legend{font-family:var(--mono);letter-spacing:0;font-size:.76rem;font-weight:600}.observation-card{border-style:dashed}.stage-fullscreen-exit,.display-fullscreen-exit{min-height:var(--control);border:1px solid var(--ink);border-radius:var(--radius-sm);background:var(--bg);box-shadow:2px 2px 0 var(--ink)}.stage-fullscreen-exit:hover,.display-fullscreen-exit:hover{background:var(--accent-soft)}.faq-list summary{border-radius:var(--radius-sm);padding-left:16px}.faq-list summary:hover{background:var(--bg-subtle)}.faq-list details[open]{background:var(--bg)}.faq-list details p{padding-left:16px}.troubleshooting-list summary{min-height:30px;padding-top:2px}.troubleshooting-list summary::marker{color:var(--warn)}.test-page-actions .button{min-height:var(--control)}.report-test-link{min-height:var(--control);align-items:center;text-decoration:underline;display:inline-flex}@media (forced-colors:active){.status-dot{border:1px solid canvastext}:focus-visible{outline:3px solid highlight}.section-chip,.brand svg{border:1px solid canvastext}.button,button.button{border-color:buttontext}}@media print{.test-tool.printer-tool{padding:0}}.simple-page{max-width:800px;margin-inline:auto;padding-top:42px}.document-header{border-bottom:2px solid var(--ink);margin-bottom:30px;padding-bottom:28px}.document-header__label{align-items:center;gap:12px;margin-bottom:20px;display:flex}.document-header__label .eyebrow{color:var(--ink-2);font-family:var(--mono);letter-spacing:.07em;margin:0;font-size:.73rem}.document-header__icon{border:1px solid var(--ink);width:43px;height:43px;box-shadow:2px 2px 0 var(--ink);background:#f9df79;border-radius:10px;flex:none;place-items:center;display:grid;rotate:-4deg}.document-header__icon svg{width:24px;height:24px}.document-header h1{max-width:21ch;margin-bottom:22px;line-height:1.08}.document-header .lede{max-width:65ch;margin-bottom:0}.simple-page>h2{padding-top:10px;font-size:1.3rem}.simple-page>p,.simple-page>ul{line-height:1.8}.simple-page li::marker{color:var(--accent)}.policy-updated{border:1px solid var(--line-strong);font:.73rem var(--mono);background:#edf0e4;border-radius:5px;margin-top:0;padding:6px 10px;display:inline-block}.privacy-choice{border:1px solid var(--line-strong);background:#edf0e4;border-radius:9px;padding:18px}.policy-links{border-top:1px solid var(--line-strong);padding-top:24px}.policy-links a{border:1px solid var(--line-strong);background:var(--bg);border-radius:6px;padding:9px 13px;font-weight:650;display:inline-block}.contact-form{border-color:var(--line-strong);border-top:4px solid var(--ink)}.contact-form .form-field>span:first-child{font-size:.84rem;font-weight:700}.contact-form :is(input,select,textarea):not([type=hidden]){background-color:var(--bg);border-color:var(--line-strong);border-radius:6px}.contact-form :is(input,select,textarea):focus-visible{outline:3px solid var(--accent-ring);outline-offset:3px;border-color:var(--accent)}.character-count{font-family:var(--mono)}.contact-success{border:1px solid var(--ink);border-top:4px solid var(--good);background:#edf0e4;box-shadow:4px 4px #dce1cf}.not-found{padding-block:70px}.not-found__display{font:800 clamp(5rem, 18vw, 8rem)/1 var(--mono);color:var(--ink);justify-content:center;align-items:center;gap:12px;margin-bottom:32px;display:flex}.not-found__display svg{border:2px solid var(--ink);background:#f57543;border-radius:22px;width:clamp(85px,20vw,120px);height:auto;padding:16px;rotate:-7deg;box-shadow:5px 5px #dce1cf}.not-found .button{margin-top:14px}.test-loading{color:var(--ink-2);font-family:var(--mono);align-items:center;gap:10px;font-size:.8rem;display:flex}.test-loading:before{content:"";border:2px solid var(--ink);background:#f57543;border-radius:50%;width:10px;height:10px}.share-control__fallback{border:1px solid var(--line-strong);background:var(--bg);max-width:100%;font-family:var(--mono);border-radius:5px}@media (width<=620px){.simple-page{padding-top:28px}.document-header{margin-bottom:24px;padding-bottom:23px}.document-header h1{font-size:2.1rem}.privacy-choice{padding:14px}.privacy-choice .button{white-space:normal;width:100%}.not-found{padding-block:44px}}.contact-form>*,.contact-form .form-field{min-width:0}.contact-form .turnstile-slot{min-height:140px}
