@import url('/assets/fonts.css');

:root{--bg:#f7f8f4;--paper:#fff;--ink:#26332b;--muted:#738075;--green:#2d6647;--forest:#244e3b;--lime:#d7efad;--line:#e4e8df;--soft:#eef2e9;--radius:18px;--font:'DM Sans',Arial,sans-serif;font-family:var(--font);color:var(--ink);background:var(--bg);font-synthesis:none;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:default}button,input,select,textarea{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #5c9266;outline-offset:4px}h1,h2,h3,p{margin:0}button .icon,a .icon{flex-shrink:0}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}img{max-width:100%;display:block}::selection{background:#d7efad;color:#244e3b}main:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:15px;background:var(--forest);color:white;padding:15px;z-index:1000}.skip-link:focus{top:10px}
.site-header{border-bottom:1px solid var(--line);background:rgba(255,255,255,.68)}.nav-wrap{max-width:1320px;min-height:89px;margin:auto;padding:0 42px;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:18px;letter-spacing:-.7px;font-weight:800}.brand-accent{color:var(--green)}.brand-dot{color:#69a359}.brand-icon{width:38px;height:38px;color:var(--green);display:flex}.brand-icon svg{width:100%;height:100%}.main-nav{display:flex;gap:30px;align-self:stretch;align-items:stretch;margin-left:auto}.main-nav a{display:flex;align-items:center;position:relative;font-size:13px;font-weight:600;color:#788077;white-space:nowrap;transition:color .2s}.main-nav a:hover,.main-nav a.active{color:var(--green)}.main-nav a.active:after{content:'';position:absolute;height:3px;background:var(--green);bottom:-1px;left:0;right:0;border-radius:3px 3px 0 0}.nav-note{font-size:11px;color:var(--muted);display:flex;gap:7px;align-items:center;white-space:nowrap}.live-dot{width:6px;height:6px;border-radius:50%;background:#71a16d;display:inline-block;box-shadow:0 0 0 3px #71a16d12;flex-shrink:0}#app{max-width:1236px;margin:auto;padding:0 36px 52px;min-height:72vh}.hero{display:flex;justify-content:space-between;align-items:center;min-height:276px;padding:41px 0 38px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#69836e;font-weight:700;display:inline-flex;align-items:center;gap:8px;line-height:1.5}.tiny-star{font-size:16px;color:var(--green)}h1{font-size:59px;letter-spacing:-2.6px;font-weight:750;line-height:1.04;margin-top:16px}h1 span{color:var(--green)}.hero p{font-size:14px;margin-top:18px;color:var(--muted);line-height:1.7}.hero-stamp{position:relative;width:270px;height:205px;margin:0 75px 0 30px;transform:rotate(-6deg)}.stamp-orbit{position:absolute;width:242px;height:174px;border:1px dashed #c7d6c1;left:14px;top:9px;border-radius:50%;transform:rotate(-14deg)}.stamp-screen{position:absolute;left:60px;top:24px;width:153px;height:124px;border:2px solid #3c6446;border-radius:15px;background:#eef3e7;box-shadow:5px 5px 0 #dae6ce;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.stamp-screen .icon{width:47px;height:47px;stroke-width:1.35}.stamp-screen span{font-size:8px;font-weight:750;letter-spacing:1.9px;text-align:center;line-height:1.6;color:#536d4a}.stamp-base{position:absolute;left:94px;top:153px;border-bottom:2px solid #3c6446;width:83px;height:14px}.stamp-base:before{content:'';position:absolute;left:36px;top:-5px;height:18px;border-left:2px solid #3c6446}.stamp-note{position:absolute;left:64px;bottom:8px;font-size:10px;color:#78906c;font-family:monospace}.stamp-star{position:absolute;color:#71924f;z-index:1}.star-one{font-size:30px;left:24px;top:48px}.star-two{font-size:23px;right:14px;bottom:44px}
.checker-section{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:23px;align-items:start}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.checker-form{padding:25px 27px 20px;box-shadow:0 4px 14px #18331f03}.section-caption{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:28px;font-size:9px;letter-spacing:1.25px;font-weight:700}.section-caption>span:first-child{display:flex;align-items:center;gap:7px}.section-caption .icon{width:16px;height:16px;color:var(--green)}.small-pill{font-size:7px;letter-spacing:.7px;background:#f1f5eb;color:#718361;padding:5px 7px;border-radius:4px;white-space:nowrap}.field-heading{display:flex;align-items:center;gap:8px;margin-bottom:11px}.field-heading label{font-size:12px;font-weight:700}.step-number{width:21px;height:21px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;background:#edf3e7;color:#779466;flex-shrink:0}.field-heading .text-button{margin-left:auto;font-size:10px;font-weight:500}.text-button{border:0;background:none;padding:0;color:var(--green);display:inline-flex;align-items:center;gap:5px;font-weight:650;font-size:12px}.text-button .icon{width:14px;height:14px}.text-button:hover{text-decoration:underline}.selection-button{display:flex;align-items:center;gap:13px;width:100%;min-height:73px;border:1px solid #dce3d7;background:#fbfcf9;border-radius:10px;padding:12px 14px;text-align:left;transition:border-color .2s,background .2s}.selection-button:hover{border-color:#87a17b;background:#f6f9f2}.selection-button>.icon{color:#83917e;width:17px;height:17px;margin-left:auto}.selection-icon{background:#eaf0e2;color:#58744b;width:42px;height:42px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.selection-icon .icon{width:26px;height:26px}.selection-text{min-width:0}.selection-text strong{font-size:14px;display:block;font-weight:650;line-height:1.4}.selection-text small{font-size:10px;display:block;color:var(--muted);margin-top:3px}.selection-text small span{padding:0 4px;color:#b2b9ae}.device-spec-summary{display:flex;align-items:center;gap:6px;color:#939b8e;margin-top:8px;font-size:10px}.device-spec-summary .icon{width:12px;height:12px}.second-step{margin-top:23px}.game-selection{background:white}.selection-art{width:43px!important;height:43px!important;border-radius:7px!important;flex-shrink:0;aspect-ratio:1!important}.selection-art .art-fallback{font-size:15px!important}.selection-art img{object-fit:cover}.free-space-field{display:flex;align-items:center;justify-content:space-between;margin:17px 0;font-size:10px;gap:15px}.free-space-field label{font-weight:600}.free-space-field label span{font-weight:400;color:#8c9587;margin-left:3px}.free-space-field>div{display:flex;align-items:center;border:1px solid var(--line);border-radius:5px;padding-right:9px;background:#fbfcf9;color:var(--muted)}.free-space-field input{width:82px;border:0;background:transparent;padding:7px 9px;font-size:11px;outline-offset:0;color:var(--ink)}.free-space-field>div>span{font-size:9px}.primary-button{background:var(--green);color:white;border:1px solid var(--green);border-radius:8px;padding:14px 21px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:46px;transition:background .2s,transform .2s}.primary-button:hover{background:#234f37;transform:translateY(-1px)}.primary-button .icon{width:18px;height:18px}.check-button{width:100%;justify-content:space-between;padding:13px 18px;font-size:13px}.form-footnote{display:flex;gap:6px;align-items:center;justify-content:center;font-size:9px;color:#939b8d;margin-top:13px}.form-footnote .icon{width:12px;height:12px}
.result-card{border-radius:var(--radius);background:var(--forest);padding:26px 29px 20px;color:#f3f5e9;position:relative;overflow:hidden;min-height:425px;display:flex;flex-direction:column;box-shadow:0 5px 15px #244e3b08}.result-card:after{content:'';position:absolute;width:280px;height:280px;right:-130px;top:-170px;border:1px solid #cce5ad15;box-shadow:0 0 0 30px #cce5ad05,0 0 0 60px #cce5ad03;border-radius:50%;pointer-events:none}.result-topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.result-eyebrow{font-size:8px;font-weight:600;letter-spacing:1.2px;display:flex;align-items:center;gap:7px;color:#c2d0b7}.result-eyebrow .live-dot{background:#c0df8d;width:5px;height:5px}.estimate-tag{border:1px solid #cfe0bf36;font-size:7px;letter-spacing:.8px;padding:5px 6px;border-radius:4px;color:#b5c9a7}.result-main{display:flex;gap:19px;justify-content:space-between;align-items:center;margin:27px 0 24px}.result-copy{flex:1;min-width:0}.result-label{display:flex;align-items:center;gap:5px;color:#d2e6b5;font-size:9px;font-weight:600;margin-bottom:11px}.result-label .icon{width:15px;height:15px;background:#d7efad17;border-radius:50%;padding:1px}.result-copy h2{font-size:29px;line-height:1.13;letter-spacing:-1px;font-weight:650;margin-bottom:12px;max-width:300px}.result-copy p{color:#b8c9af;font-size:11px;line-height:1.75;max-width:300px}.score-wrap{display:flex;flex-direction:column;align-items:center;gap:13px;margin-right:2px}.score-ring{height:126px;width:126px;padding:6px;background:conic-gradient(from 35deg,#d4efad calc(var(--score)*1%),#d4efad21 0);border-radius:50%;transform:rotate(-35deg)}.score-ring>div{border-radius:50%;background:var(--forest);width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(35deg)}.score-ring strong{font-size:43px;font-weight:600;letter-spacing:-2px;line-height:1.2;color:#e0f0c4}.score-ring span{font-size:9px;letter-spacing:1px;color:#afc79b;margin-top:3px}.score-caption{font-size:7px;letter-spacing:1.2px;color:#afc79b;font-weight:600}.quick-specs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cfddbb26;border-bottom:1px solid #cfddbb26;padding:16px 0;margin-bottom:17px}.quick-spec{display:flex;flex-direction:column;gap:8px;padding-left:19px;border-left:1px solid #cfddbb26}.quick-spec:first-child{padding-left:0;border-left:0}.quick-spec>span{font-size:9px;display:flex;gap:5px;color:#aec2a5;align-items:center}.quick-spec .icon{width:13px;height:13px}.quick-spec strong{font-weight:500;font-size:10px;display:flex;gap:5px;align-items:center;color:#dcebc9;white-space:nowrap}.quick-spec strong i{font-size:11px;font-style:normal}.quick-spec strong.quick-warn{color:#e9d698}.quick-spec strong.quick-fail{color:#f4b29c}.quick-spec strong.quick-unknown{color:#d1d9cb}.settings-tip{background:#163c2b69;border:1px solid #ceddb211;border-radius:8px;display:flex;gap:10px;padding:12px 13px;margin-top:auto}.settings-tip>.icon{color:#d4e6a7;width:16px;height:16px;margin-top:1px}.settings-tip strong{font-size:10px;color:#d7e5c6;font-weight:600}.settings-tip p{font-size:10px;color:#afc29f;line-height:1.6;margin-top:5px}.result-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px}.result-detail-button,.share-button{border:0;background:none;color:#d8e7c9;display:flex;align-items:center;gap:7px;padding:0;font-size:10px}.result-detail-button:hover,.share-button:hover{color:white}.result-detail-button .icon{width:13px;height:13px}.share-button{font-size:9px;color:#b8cda5}.share-button .icon{width:14px;height:14px}.result-caveat{font-size:8px;display:flex;align-items:flex-start;justify-content:center;gap:5px;color:#98a08f;line-height:1.5;margin-top:10px;padding:0 6px}.result-caveat .icon{width:12px;height:12px}.status-limited,.status-unsupported{--forest:#4b5140;background:var(--forest)}.status-limited .result-label,.status-unsupported .result-label{color:#ead5a0}.platform-message{font-size:11px;color:#dae4ca;display:flex;gap:10px;align-items:center;border-top:1px solid #cfe0bd26;border-bottom:1px solid #cfe0bd26;padding:16px 0;margin-bottom:18px}.result-pending{justify-content:flex-start}.result-pending h2{font-size:30px;line-height:1.2;margin:17px 0 12px;letter-spacing:-1px}.result-pending>p{font-size:12px;color:#bdcfb2;line-height:1.8;max-width:370px}.pending-icon{margin-top:32px;display:flex;align-items:center;justify-content:center;width:50px;height:50px;border:1px solid #b7d39755;border-radius:12px;color:var(--lime)}.pending-note{font-size:10px;color:#c5d6b7;margin-top:auto;padding-top:24px}
.trust-strip{display:flex;align-items:center;gap:27px;padding:22px 1px 30px;font-size:9px;color:#8b9584;border-bottom:1px solid var(--line)}.trust-strip>span{display:flex;align-items:center;gap:6px;white-space:nowrap}.trust-strip .icon{width:13px;height:13px;color:#839975}.trust-strip>a{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:9px}.trust-strip>a:hover{color:var(--green)}.popular-section{margin-top:34px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.section-heading h2{font-size:24px;font-weight:650;letter-spacing:-.7px;margin-top:7px;line-height:1.2}.subtle-link{font-size:10px;display:flex;align-items:center;gap:7px;color:#6e8066;margin-bottom:2px}.subtle-link .icon{height:14px;width:14px}.game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}.game-card{min-width:0;border:1px solid var(--line);border-radius:12px;background:white;overflow:hidden;transition:transform .2s,box-shadow .2s}.game-card:hover{transform:translateY(-3px);box-shadow:0 7px 20px #244e3b0b}.game-card-image{display:block;position:relative;padding:7px 7px 0}.game-art{background:linear-gradient(125deg,var(--art-color),color-mix(in srgb,var(--art-color),#142232 40%));position:relative;overflow:hidden;aspect-ratio:16/9;border-radius:7px;display:flex;align-items:center;justify-content:center;color:#fff}.game-art img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;transition:transform .35s}.game-card:hover .game-art img{transform:scale(1.05)}.game-art>.icon{position:absolute;width:80px;height:80px;right:10%;top:21%;transform:rotate(-16deg);opacity:.13}.art-fallback{font-size:42px;font-weight:800;letter-spacing:-3px;position:relative;z-index:0;color:#ffffffd9;text-shadow:3px 3px #0002}.art-tag{position:absolute;bottom:9px;left:16px;color:#fff;font-size:6px;letter-spacing:.8px;border:1px solid #fff6;background:#1119;backdrop-filter:blur(5px);padding:5px 7px;border-radius:4px}.game-card-body{padding:14px 15px 12px}.game-card-title{font-size:13px;font-weight:650;letter-spacing:-.3px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-card-title:hover{color:var(--green)}.game-card-body>p{font-size:8px;color:#91998b;margin-top:6px;line-height:1.5}.game-card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:16px;gap:6px}.compatibility-dot{font-size:8px;display:flex;align-items:center;gap:5px;color:#77886a}.compatibility-dot:before{content:'';width:4px;height:4px;border-radius:50%;background:#8cab6c;flex-shrink:0}.fit-limited{color:#a08d56}.fit-limited:before{background:#bea257}.fit-unsupported{color:#92998d}.fit-unsupported:before{background:#979f91}.round-button{border:1px solid #e7ebdf;background:#f5f8f0;border-radius:50%;width:25px;height:25px;display:flex;align-items:center;justify-content:center;color:#6b825b;flex-shrink:0}.round-button:hover{background:#e5edd9}.round-button .icon{width:12px;height:12px}.bottom-callout{display:flex;align-items:center;gap:18px;border:1px dashed #d9e1cf;border-radius:12px;padding:21px 25px;margin-top:30px;background:#f0f3eb}.callout-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:#e5ecd9;border-radius:9px;color:#7d9566;transform:rotate(-6deg)}.callout-icon .icon{width:25px;height:25px}.bottom-callout h3{font-size:12px;font-weight:600}.bottom-callout p{font-size:10px;color:#8d9684;margin-top:5px}.bottom-callout>a{font-size:10px;margin-left:auto;display:flex;gap:12px;align-items:center;color:#617a51}.bottom-callout>a .icon{width:14px;height:14px}.site-footer{max-width:1164px;margin:0 auto;border-top:1px solid var(--line);padding:28px 0 34px;display:flex;align-items:center;justify-content:space-between;gap:30px;color:#8f9888;font-size:9px;line-height:1.8}.footer-brand{font-size:12px;font-weight:700;color:#6e7d64;letter-spacing:-.3px}.footer-brand span{color:#79a25f}.site-footer>p{text-align:center}.site-footer>p>span{font-size:8px;color:#a3ab9c}.site-footer>a{color:#7b8c6c}.site-footer>a span{padding-left:5px}
.page-intro{padding:58px 0 40px;max-width:820px}.page-intro h1{font-size:49px;letter-spacing:-2px;line-height:1.1;margin-top:14px}.page-intro>p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:19px;max-width:640px}.library-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px}.search-field{position:relative;display:flex;gap:12px;align-items:center;border:1px solid #dce3d5;border-radius:9px;background:white;padding:0 14px;min-width:0}.search-field>.icon{color:#97a18f;width:18px;height:18px}.search-field input{border:0;background:transparent;min-width:0;width:100%;padding:15px 0;color:var(--ink);font-size:12px;outline-offset:0}.search-field input::placeholder{color:#929b8b}.library-toolbar .search-field{width:390px}.filter-tabs{display:flex;background:#edf1e8;border:1px solid #e7ecdf;border-radius:8px;padding:4px;gap:3px}.filter-tabs button{border:0;background:transparent;font-size:11px;color:#87917e;white-space:nowrap;padding:10px 15px;border-radius:5px}.filter-tabs button.active{background:white;color:var(--green);box-shadow:0 1px 5px #2237180a}.filter-tabs button:hover{color:var(--green)}.library-count{font-size:10px;color:#98a08f;margin:23px 0 20px}.library .game-grid{row-gap:24px}.device-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.device-card{background:white;border:1px solid var(--line);border-radius:12px;padding:22px;transition:border-color .2s}.device-card:hover{border-color:#aebda0}.device-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.device-illustration{width:60px;height:60px;background:#edf3e5;border:1px solid #e6eddd;border-radius:13px;color:#668652;display:flex;align-items:center;justify-content:center;transform:rotate(-3deg)}.device-illustration>.icon{width:35px;height:35px;stroke-width:1.3}.device-illustration.phone{background:#eff1f8;color:#7d88a0;border-color:#e5e9f3;transform:rotate(5deg)}.platform-pill{font-size:9px;background:#f1f4ed;color:#839372;padding:5px 9px;border-radius:5px}.device-card h3{font-size:17px;letter-spacing:-.5px;font-weight:650}.device-card>p{font-size:11px;color:#929b8a;margin-top:8px}.device-card-specs{display:flex;gap:17px;margin:21px 0;color:#89947f;font-size:10px}.device-card-specs span{display:flex;gap:5px;align-items:center}.device-card-specs .icon{width:13px;height:13px}.device-card-link{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding-top:17px;font-size:11px;color:#678251}.device-card-link .icon{width:15px;height:15px}.empty-state{grid-column:1/-1;text-align:center;padding:55px 20px;width:100%;color:#8e9b82}.empty-state>.icon{height:32px;width:32px;margin-bottom:15px}.empty-state h3{font-size:20px;color:#526649;font-weight:600}.empty-state p{margin-top:10px;font-size:12px;line-height:1.7}.empty-state .primary-button{margin-top:20px}
.back-link{display:inline-block;font-size:11px;color:#7d9170;margin:30px 0 0}.detail-hero{display:flex;gap:40px;align-items:center;margin:30px 0 45px}.detail-hero>div:last-child{flex:1}.detail-hero h1{font-size:41px;line-height:1.15;margin-top:12px;letter-spacing:-1.6px}.detail-hero p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:15px;max-width:620px}.detail-hero .primary-button{margin-top:22px;padding:12px 18px}.detail-game-art{width:330px;flex-shrink:0}.detail-game-art .game-art{border-radius:14px}.large-device-icon{width:180px;height:180px;border-radius:24px;background:#eaf0e2;color:#74955d;display:flex;align-items:center;justify-content:center;transform:rotate(-3deg);flex-shrink:0}.large-device-icon .icon{width:100px;height:100px;stroke-width:1.2}.detail-columns{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center}.spec-panel{padding:25px 28px}.spec-panel h2{font-size:22px;letter-spacing:-.6px;font-weight:600}.spec-panel h3{font-size:17px;display:flex;gap:9px;align-items:center;font-weight:600}.spec-panel h3 .icon{color:#7b9866;width:21px;height:21px}.spec-list{margin:18px 0 24px}.spec-list>div{display:flex;justify-content:space-between;gap:22px;font-size:11px;padding:13px 0;border-bottom:1px solid var(--line);line-height:1.6}.spec-list dt{color:#8a957f;flex-shrink:0;max-width:35%}.spec-list dd{text-align:right;margin:0;color:#4f6047}.source-link{font-size:10px;color:var(--green);display:inline-flex;gap:8px;align-items:center;margin-right:20px}.source-link:hover{text-decoration:underline}.detail-notes h2{font-size:27px;letter-spacing:-.8px;margin:13px 0 17px;font-weight:600}.detail-notes p{font-size:12px;color:#829178;line-height:1.9;margin:10px 0}.detail-notes .text-button{margin-top:12px}.device-game-links{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.device-game-links>a{border:1px solid var(--line);background:white;border-radius:9px;display:flex;align-items:center;gap:11px;padding:12px}.device-game-links>a:hover{border-color:#91a77f}.device-game-links>a>span{font-size:10px;line-height:1.6;color:#94a087}.device-game-links>a strong{display:block;color:#587247;font-weight:600}.device-game-links>a>.icon{width:15px;height:15px;color:#7b9369;margin-left:auto}.requirements-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.requirement-notes{border-top:1px solid var(--line);padding:15px 0;margin-top:-5px}.requirement-notes p{font-size:10px;color:#86937a;line-height:1.8;margin-bottom:7px}.review-date{font-size:10px;color:#99a08e;line-height:1.7}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.method-card{padding:29px}.method-card .step-number{width:32px;height:32px;font-size:12px;margin-bottom:26px}.method-card h2{font-size:21px;line-height:1.25;letter-spacing:-.6px;margin-bottom:16px;font-weight:600}.method-card p{font-size:12px;line-height:1.9;color:#87947d}.about-body{display:grid;grid-template-columns:1fr 280px;gap:65px;margin-top:48px;align-items:start}.about-body h2{font-size:23px;letter-spacing:-.6px;margin:32px 0 15px;font-weight:600}.about-body h2:first-child{margin-top:0}.about-body p{font-size:13px;line-height:1.9;color:#819175;margin-bottom:15px}.score-legend{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:23px 0}.score-legend>div{border:1px solid var(--line);border-radius:9px;padding:17px 10px;background:white;text-align:center}.score-legend strong{font-size:24px;color:var(--green);display:block;font-weight:600}.score-legend span{font-size:9px;color:#839579;line-height:1.6;display:block;margin-top:7px}.secondary-button{border:1px solid #cfdcc3;background:#f3f7ed;color:var(--green);border-radius:7px;padding:11px 17px;font-size:11px;display:inline-flex;align-items:center;justify-content:center}.secondary-button:hover{background:#e8f0df}.about-body .review-date{font-size:10px;margin-top:20px}.about-body .primary-button{margin-top:15px}.about-aside{background:var(--forest);padding:31px;border-radius:18px;color:var(--lime);position:sticky;top:30px}.about-aside>.icon{width:35px;height:35px;margin-bottom:28px}.about-aside h3{font-size:30px;line-height:1.2;letter-spacing:-1px;font-weight:500;margin-bottom:20px}.about-aside p{color:#b7cba5;font-size:12px}.about-aside span{font-size:10px;color:#91ac7f;line-height:1.8;display:block;margin-top:24px}.not-found{padding:100px 0;text-align:center}.not-found h1{font-size:53px;line-height:1.1}.not-found p{color:var(--muted);font-size:14px;margin:25px auto;max-width:450px;line-height:1.8}.not-found .primary-button{margin-top:5px}
.breakdown{scroll-margin-top:24px;margin-top:35px}.breakdown .section-heading p{font-size:11px;color:#859678;margin-top:10px}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:white}.comparison-table{border-collapse:collapse;width:100%;font-size:11px;text-align:left}.comparison-table th,.comparison-table td{padding:16px 18px;border-bottom:1px solid var(--line);line-height:1.7}.comparison-table thead{background:#eef3e8;color:#728564;font-size:10px}.comparison-table th{font-weight:600}.comparison-table tbody tr:last-child>*{border:0}.comparison-table tbody th{white-space:nowrap;color:#5e7450}.comparison-table td{color:#8a9580;max-width:290px}.check-state{white-space:nowrap;font-size:9px;padding:5px 7px;border-radius:4px;display:inline-block}.check-pass{color:#548039;background:#eef6e6}.check-warn,.check-unknown{color:#968047;background:#f7f2e3}.check-fail{color:#a16852;background:#faf0e9}.breakdown-notes{padding:24px;background:#f0f3e9;border-radius:12px;margin-top:20px}.breakdown h3{font-size:15px;font-weight:600;letter-spacing:-.3px}.breakdown-notes ul{font-size:11px;color:#7f906f;line-height:1.9;padding-left:17px;margin:12px 0 20px}.breakdown-notes li{margin-bottom:5px}.alternatives{margin-top:25px}.alternatives>div{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:15px}.alternatives button{display:flex;align-items:center;gap:10px;text-align:left;background:white;border:1px solid var(--line);border-radius:10px;padding:12px}.alternatives button>span{min-width:0}.alternatives button strong{display:block;font-size:11px;font-weight:600}.alternatives button small{display:block;color:#889b79;font-size:9px;margin-top:5px}.alternatives button>.icon{width:15px;height:15px;margin-left:auto;color:#8fa47c}
dialog{border:1px solid #e0e8d5;border-radius:18px;max-width:calc(100% - 32px);width:560px;padding:27px;color:var(--ink);background:#fcfdf9;box-shadow:0 25px 100px #112b2655;max-height:calc(100dvh - 48px)}dialog::backdrop{background:#16291e77;backdrop-filter:blur(5px)}dialog[open]{animation:dialog-in .18s ease-out}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:22px}.dialog-heading h2{font-size:26px;font-weight:650;letter-spacing:-.9px;margin-top:9px;line-height:1.2}.dialog-heading .eyebrow{font-size:8px}.icon-button{background:transparent;border:1px solid #e3e9db;border-radius:50%;width:29px;height:29px;display:flex;align-items:center;justify-content:center;color:#95a18a;flex-shrink:0}.icon-button .icon{width:15px;height:15px}.icon-button:hover{background:#ecf1e5;color:#587744}.picker-filters{margin:15px 0;display:inline-flex;max-width:100%;overflow:auto}.picker-filters button{font-size:10px;padding:9px 13px}.picker-results{max-height:360px;overflow-y:auto;min-height:120px;margin:0 -8px;padding:0 8px}.picker-item{width:100%;border:0;border-bottom:1px solid #e9eedf;display:flex;gap:12px;align-items:center;text-align:left;padding:12px 5px;background:none;border-radius:6px}.picker-item:hover{background:#f0f5e9}.picker-item:last-child{border-bottom:0}.picker-item>span:not(.selection-icon){flex:1;min-width:0}.picker-item strong{display:block;font-size:12px;font-weight:600}.picker-item small{display:block;font-size:9px;color:#8b9a7f;margin-top:5px;line-height:1.5}.picker-item>.icon{width:15px;height:15px;color:#7b9965;flex-shrink:0}.picker-footer{border-top:1px solid var(--line);padding-top:20px;margin-top:12px;display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:10px;color:#8a9a7e}.picker-footer .text-button{font-size:10px}.dialog-description{font-size:12px;line-height:1.8;color:#8a987f;margin:-3px 0 22px}.input-label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#6b805d;font-weight:500;margin-bottom:16px}.input-label input,.input-label select,textarea{border:1px solid #dbe4d2;background:white;border-radius:7px;padding:12px 11px;font-size:12px;color:#485e3a;width:100%;min-width:0}.input-label select{appearance:auto;padding-right:10px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:17px}.custom-hint{display:flex;align-items:flex-start;gap:8px;font-size:10px;color:#8c9b80;line-height:1.7;margin:4px 0 22px}.custom-hint .icon{width:16px;height:16px;flex-shrink:0}.full-width{width:100%}.share-dialog{width:510px}.share-dialog textarea{resize:none;margin:0 0 17px;line-height:1.8;overflow-wrap:anywhere}.copy-status{font-size:11px;line-height:1.8;color:#708f59;text-align:center;margin-top:14px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100;background:#244e3b;color:#e8f2df;border:1px solid #608154;border-radius:10px;box-shadow:0 5px 30px #142a1b30;padding:14px 23px;font-size:12px;max-width:calc(100% - 30px);width:max-content;line-height:1.6}.toast.visible{opacity:1;transform:translate(-50%,0)}.noscript{background:#eef4e4;color:#4a6538;padding:25px;text-align:center;font-size:14px}
@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1450px){.nav-wrap{max-width:1410px}#app{max-width:1290px}.site-footer{max-width:1218px}.hero{min-height:295px}.hero h1{font-size:66px}.checker-form{padding:27px 30px 23px}.result-card{min-height:439px;padding:28px 31px 24px}.result-main{margin:31px 0 25px}.result-copy h2{font-size:32px}.game-card-title{font-size:14px}.game-card-body>p{font-size:9px}.game-card-body{padding:16px}.hero-stamp{margin-right:95px}}
@media(max-width:1130px){.nav-wrap{padding:0 30px;gap:28px}.nav-note{display:none}.main-nav{gap:27px}#app{padding-left:30px;padding-right:30px}.hero-stamp{margin-right:40px}.checker-section{gap:18px;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}.checker-form{padding:22px 21px 18px}.result-card{padding:23px 23px 19px;min-height:421px}.section-caption{letter-spacing:.8px}.small-pill{font-size:6px}.result-copy h2{font-size:26px}.score-ring{height:108px;width:108px}.score-ring strong{font-size:37px}.score-caption{font-size:6px}.quick-spec{padding-left:11px}.quick-spec strong{font-size:9px}.result-copy p{font-size:10px}.hero h1{font-size:55px}.trust-strip{gap:18px}.trust-strip>a{font-size:8px}.site-footer{margin:0 30px}.game-grid{gap:15px}.game-card-title{font-size:12px}.game-card-body{padding:13px 12px}.game-card-body>p{font-size:7px}.compatibility-dot{font-size:7px}.about-body{gap:40px}.game-card-bottom{gap:3px}}
@media(max-width:900px){.nav-wrap{min-height:78px}.brand{font-size:16px}.brand-icon{width:32px;height:32px}.main-nav{gap:22px}.main-nav a{font-size:11px}.hero-stamp{margin-right:10px;transform:rotate(-6deg) scale(.9)}.checker-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.checker-form{padding:20px 17px}.small-pill{display:none}.section-caption{margin-bottom:23px}.field-heading .text-button{font-size:8px}.field-heading label{font-size:11px}.selection-text strong{font-size:12px}.selection-text small{font-size:9px}.selection-button{padding:10px;gap:10px}.result-card{padding:23px 21px 19px;min-height:410px}.result-main{gap:12px}.result-copy h2{font-size:25px}.result-copy p{font-size:10px}.score-ring{height:90px;width:90px;padding:5px}.score-ring strong{font-size:31px}.score-caption{font-size:5px;letter-spacing:.8px}.result-label{font-size:8px}.estimate-tag{font-size:5px}.result-eyebrow{font-size:7px;letter-spacing:.8px}.result-main{margin:25px 0 20px}.quick-spec>span{font-size:8px}.quick-spec strong{font-size:8px;gap:3px}.quick-spec{padding-left:8px}.settings-tip{padding:11px}.settings-tip p{font-size:9px}.result-caveat{font-size:7px}.trust-strip{gap:20px;font-size:8px;flex-wrap:wrap;padding:21px 0;justify-content:center}.trust-strip>a{margin-left:0}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.game-card-title{font-size:14px}.game-card-body{padding:16px}.game-card-body>p{font-size:9px}.compatibility-dot{font-size:9px}.art-tag{font-size:7px}.device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-toolbar{align-items:stretch;flex-direction:column;gap:13px}.library-toolbar .search-field{width:100%}.library-toolbar .filter-tabs{align-self:flex-start}.detail-hero{gap:27px}.detail-game-art{width:260px}.detail-hero h1{font-size:32px}.detail-hero p{font-size:12px}.detail-columns{gap:28px}.spec-panel{padding:22px}.device-game-links{grid-template-columns:repeat(2,1fr)}.method-card{padding:22px}.method-card h2{font-size:19px}.method-grid{gap:16px}.about-body{grid-template-columns:1fr 220px;gap:32px}.about-aside{padding:24px}.about-aside h3{font-size:26px}.alternatives>div{grid-template-columns:1fr}.requirements-grid{gap:17px}.comparison-table th,.comparison-table td{padding:14px 12px;font-size:10px}}
@media(max-width:760px){.nav-wrap{padding:0 22px;flex-wrap:wrap;gap:0;min-height:100px}.brand{width:100%;padding-top:15px;font-size:17px}.brand-icon{width:31px;height:31px}.main-nav{width:100%;margin-left:0;justify-content:space-between;min-height:43px;gap:15px}.main-nav a{font-size:10px;line-height:1.5}.main-nav a.active:after{height:2px}#app{padding:0 22px 35px}.hero{padding:32px 0;min-height:230px}.hero h1{font-size:48px;letter-spacing:-2px;margin-top:13px}.hero .eyebrow{font-size:8px;letter-spacing:1.2px}.hero p{font-size:12px;max-width:330px;margin-top:15px}.hero-stamp{width:170px;transform:rotate(-6deg) scale(.72);transform-origin:right center;margin:0 -10px 0 -20px;flex-shrink:0}.stamp-star.star-two{right:-85px}.checker-section{grid-template-columns:1fr;gap:18px}.checker-form{padding:24px}.section-caption{font-size:9px;letter-spacing:1px;margin-bottom:25px}.small-pill{display:block;font-size:7px}.field-heading label{font-size:12px}.field-heading .text-button{font-size:10px}.selection-button{padding:12px 14px;gap:14px}.selection-text strong{font-size:14px}.selection-text small{font-size:10px}.device-spec-summary{font-size:10px}.form-footnote{font-size:9px}.free-space-field{font-size:11px;margin:19px 0}.result-card{padding:25px;min-height:410px}.result-main{margin:26px 0;gap:20px}.result-copy h2{font-size:32px}.result-copy p{font-size:11px}.score-ring{height:119px;width:119px;padding:6px}.score-ring strong{font-size:42px}.score-caption{font-size:6px;letter-spacing:1px}.result-label{font-size:9px}.result-eyebrow{font-size:8px;letter-spacing:1.1px}.estimate-tag{font-size:7px}.quick-spec>span{font-size:10px}.quick-spec strong{font-size:10px;gap:5px}.quick-spec{padding-left:20px;gap:9px}.quick-specs{padding:17px 0}.settings-tip{padding:13px}.settings-tip p{font-size:10px}.result-detail-button{font-size:11px}.share-button{font-size:10px}.result-caveat{font-size:8px;line-height:1.8;margin-top:12px;padding:0}.trust-strip{justify-content:flex-start;gap:16px;row-gap:14px;margin-top:3px}.trust-strip>span{font-size:8px}.trust-strip>a{width:100%;font-size:9px}.popular-section{margin-top:29px}.section-heading{gap:15px}.section-heading h2{font-size:23px}.subtle-link{font-size:9px;max-width:126px;line-height:1.6}.game-grid{gap:15px}.game-card-body{padding:14px}.game-card-title{font-size:13px}.game-card-body>p{font-size:8px}.compatibility-dot{font-size:8px}.bottom-callout{padding:18px;gap:14px;flex-wrap:wrap}.bottom-callout h3{font-size:12px}.bottom-callout p{font-size:10px}.bottom-callout>a{margin-left:56px;font-size:10px}.site-footer{margin:0 22px;gap:15px;flex-wrap:wrap;padding:25px 0;font-size:8px}.site-footer>p{display:none}.site-footer>a{font-size:9px}.page-intro{padding:40px 0 30px}.page-intro h1{font-size:39px;letter-spacing:-1.6px}.page-intro>p{font-size:12px}.library-toolbar .filter-tabs{width:100%;justify-content:space-between}.filter-tabs button{font-size:10px;padding:10px 12px}.device-card{padding:19px}.device-card h3{font-size:16px}.device-card>p{font-size:10px}.device-card-specs{gap:10px;font-size:9px}.detail-hero{align-items:flex-start;flex-direction:column;margin:25px 0 32px;gap:25px}.detail-game-art{width:100%;max-width:400px}.detail-hero h1{font-size:35px}.detail-hero .eyebrow{font-size:9px}.detail-hero p{font-size:12px}.large-device-icon{width:110px;height:110px;border-radius:17px}.large-device-icon .icon{width:65px;height:65px}.detail-columns{grid-template-columns:1fr;gap:30px}.detail-notes h2{font-size:26px}.detail-notes p{font-size:12px}.requirements-grid{grid-template-columns:1fr;gap:18px}.spec-panel{padding:25px}.spec-list>div{font-size:11px}.review-date{font-size:8px;max-width:110px;text-align:right}.method-grid{grid-template-columns:1fr;gap:15px}.method-card{padding:24px}.method-card .step-number{margin-bottom:19px}.method-card h2{font-size:23px}.method-card p{font-size:12px}.about-body{display:block;margin-top:33px}.about-body h2{font-size:25px}.about-body p{font-size:12px}.about-body .review-date{text-align:left;max-width:none;font-size:10px}.about-aside{margin-top:34px;position:static}.about-aside h3{font-size:30px}.score-legend{gap:7px}.score-legend>div{padding:15px 7px}.score-legend strong{font-size:24px}.score-legend span{font-size:8px}.breakdown{margin-top:30px}.comparison-table th,.comparison-table td{padding:12px;min-width:130px}.comparison-table thead th:first-child,.comparison-table tbody th{min-width:115px}.comparison-table td:last-child{min-width:115px}.breakdown-notes{padding:20px}.breakdown-notes ul{font-size:10px}.device-game-links{gap:10px}.device-game-links>a{padding:10px;gap:8px}.device-game-links>a>span{font-size:9px}.device-game-links .selection-art{width:35px!important;height:35px!important}.device-game-links>a>.icon{display:none}.not-found{padding:70px 0}.not-found h1{font-size:45px}.not-found p{font-size:12px}dialog{padding:24px}.dialog-heading h2{font-size:25px}.picker-results{max-height:45vh}.picker-footer{font-size:9px}.picker-footer .text-button{font-size:9px}.result-pending h2{font-size:31px}}
@media(max-width:480px){.hero-stamp{display:none}.hero{padding:30px 0 28px;min-height:220px}.hero h1{font-size:47px}.hero p{max-width:290px}.checker-form{padding:21px}.field-heading .text-button{font-size:9px}.section-caption{font-size:8px}.small-pill{font-size:6px}.result-card{padding:23px 21px;min-height:415px}.result-main{gap:13px}.result-copy h2{font-size:29px;max-width:180px}.result-copy p{font-size:10px;line-height:1.8}.score-ring{width:93px;height:93px;padding:5px}.score-ring strong{font-size:33px}.score-caption{font-size:5px;letter-spacing:.7px}.result-eyebrow{font-size:7px;letter-spacing:.8px}.estimate-tag{font-size:6px}.quick-spec{padding-left:12px}.quick-spec>span{font-size:9px}.quick-spec strong{font-size:8px}.result-label{font-size:8px}.quick-spec .icon{width:12px;height:12px}.settings-tip strong{font-size:9px}.settings-tip p{font-size:9px}.result-detail-button{font-size:10px}.share-button{font-size:9px}.result-caveat{font-size:7px}.trust-strip{gap:11px;row-gap:13px}.trust-strip>span{font-size:7px;gap:4px}.trust-strip .icon{height:11px;width:11px}.trust-strip>a{font-size:8px}.section-heading h2{font-size:22px}.section-heading .eyebrow{font-size:7px}.subtle-link{font-size:8px;max-width:103px;gap:4px}.game-grid{gap:11px}.game-card-image{padding:5px 5px 0}.art-tag{font-size:5px;letter-spacing:.5px;left:11px;bottom:7px;padding:4px}.game-card-body{padding:12px 10px}.game-card-title{font-size:11px;letter-spacing:-.2px}.game-card-body>p{font-size:7px;min-height:21px;line-height:1.5}.game-card-bottom{margin-top:9px}.compatibility-dot{font-size:6px;gap:3px}.round-button{width:22px;height:22px}.round-button .icon{width:10px;height:10px}.game-card .game-art{aspect-ratio:1.45}.bottom-callout{gap:12px;padding:16px}.bottom-callout h3{font-size:11px}.bottom-callout p{font-size:9px}.callout-icon{width:35px;height:35px}.bottom-callout>a{margin-left:47px}.device-grid{grid-template-columns:1fr}.device-card h3{font-size:18px}.device-card>p{font-size:11px}.device-card-top{margin-bottom:20px}.device-card-specs{font-size:10px}.library-toolbar .filter-tabs{overflow:auto}.filter-tabs button{padding:9px 10px;font-size:9px}.page-intro h1{font-size:37px}.form-columns{gap:12px}.picker-item strong{font-size:11px}.picker-item small{font-size:8px}.picker-footer{flex-wrap:wrap;gap:8px}.dialog-heading h2{font-size:23px}.custom-dialog .dialog-description{font-size:11px}.input-label{font-size:10px}.input-label input,.input-label select{font-size:11px}.toast{font-size:11px;padding:12px 18px}.source-link{margin-top:7px}.device-game-links{grid-template-columns:1fr}.device-game-links>a>span{font-size:11px}.device-game-links>a>.icon{display:block}.result-bottom{gap:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


/* =========================================================
   TECH HUD THEME
   Visual-only override layer. Existing layout and behavior stay intact.
   ========================================================= */
:root{
  --bg:#050816;
  --paper:rgba(10,16,32,.78);
  --ink:#eaf6ff;
  --muted:#8292ad;
  --green:#00e7ff;
  --forest:#071525;
  --lime:#7df9ff;
  --line:rgba(90,176,255,.17);
  --soft:rgba(17,30,51,.72);
  --radius:18px;
  --cyan:#00e7ff;
  --cyan-soft:rgba(0,231,255,.12);
  --violet:#8a5cff;
  --violet-soft:rgba(138,92,255,.13);
  --blue:#4d8dff;
  --good:#49f2a6;
  --warn:#ffd166;
  --bad:#ff6b81;
  --panel-shadow:0 24px 80px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.015) inset;
  color-scheme:dark;
}
html{background:#050816}
body{
  min-height:100vh;
  color:var(--ink);
  background:
    radial-gradient(circle at 14% 8%,rgba(0,231,255,.10),transparent 24rem),
    radial-gradient(circle at 84% 14%,rgba(138,92,255,.10),transparent 28rem),
    radial-gradient(circle at 50% 95%,rgba(77,141,255,.08),transparent 32rem),
    linear-gradient(180deg,#050816 0%,#07101f 48%,#050815 100%);
  position:relative;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(91,156,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(91,156,255,.045) 1px,transparent 1px);
  background-size:36px 36px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.95),rgba(0,0,0,.2));
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.16;
  background:repeating-linear-gradient(180deg,transparent 0 3px,rgba(255,255,255,.018) 4px);
}
::selection{background:rgba(0,231,255,.28);color:white}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:4px;
}
.skip-link{background:#091529;color:var(--cyan);border:1px solid rgba(0,231,255,.34);box-shadow:0 0 24px rgba(0,231,255,.14)}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  border-bottom:1px solid rgba(94,164,255,.14);
  background:rgba(5,8,22,.72);
  backdrop-filter:blur(22px) saturate(145%);
  box-shadow:0 8px 40px rgba(0,0,0,.18);
}
.site-header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--cyan),var(--violet),transparent);
  opacity:.45;
}
.nav-wrap{min-height:76px}
.brand{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:16px;
  letter-spacing:-.55px;
  text-shadow:0 0 18px rgba(0,231,255,.16);
}
.brand-accent,.brand-dot{color:var(--cyan)}
.brand-icon{
  width:36px;height:36px;
  color:var(--cyan);
  filter:drop-shadow(0 0 10px rgba(0,231,255,.24));
}
.main-nav a{
  color:#8d9bb3;
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
.main-nav a:hover,.main-nav a.active{color:#f5fbff;text-shadow:0 0 12px rgba(0,231,255,.25)}
.main-nav a.active:after{
  height:2px;
  background:linear-gradient(90deg,var(--cyan),var(--violet));
  box-shadow:0 0 12px rgba(0,231,255,.55);
}
.nav-note{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.8px;
  color:#8192ac;
  text-transform:uppercase;
}
.live-dot{
  background:var(--good);
  box-shadow:0 0 0 4px rgba(73,242,166,.07),0 0 14px rgba(73,242,166,.7);
  animation:techPulse 2s ease-in-out infinite;
}

#app{max-width:1280px}
.hero{min-height:310px;padding-top:54px}
.eyebrow,.section-caption,.review-date,.result-eyebrow,.score-caption,.art-tag,.small-pill,.platform-pill,.library-count{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
.eyebrow{
  color:#70dff2;
  letter-spacing:2px;
  text-shadow:0 0 12px rgba(0,231,255,.14);
}
.tiny-star{color:var(--cyan);filter:drop-shadow(0 0 6px rgba(0,231,255,.45))}
h1{
  color:#f4f9ff;
  font-size:clamp(48px,6vw,72px);
  letter-spacing:-3px;
  text-shadow:0 12px 42px rgba(0,0,0,.35);
}
h1 span{
  background:linear-gradient(90deg,var(--cyan),#78a8ff 45%,#b07cff);
  color:transparent;
  -webkit-background-clip:text;
  background-clip:text;
  text-shadow:none;
}
.hero p,.page-intro>p{color:#8c9ab1}
.hero-stamp{filter:drop-shadow(0 20px 42px rgba(0,0,0,.4))}
.stamp-orbit{border-color:rgba(0,231,255,.23);animation:techOrbit 16s linear infinite}
.stamp-screen{
  border:1px solid rgba(0,231,255,.52);
  background:linear-gradient(145deg,rgba(8,18,35,.95),rgba(11,23,48,.86));
  box-shadow:0 0 0 1px rgba(255,255,255,.03) inset,0 0 42px rgba(0,231,255,.13),10px 12px 0 rgba(11,24,47,.72);
  color:var(--cyan);
}
.stamp-screen::before{
  content:"SYS // READY";
  position:absolute;
  top:9px;
  left:12px;
  font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:1.4px;
  color:rgba(125,249,255,.6);
}
.stamp-screen span{color:#9ac6d7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.stamp-base{border-color:rgba(0,231,255,.44)}
.stamp-base:before{border-color:rgba(0,231,255,.44)}
.stamp-note{color:#6fb9cc;letter-spacing:1px}
.stamp-star{color:#8c6dff;text-shadow:0 0 14px rgba(138,92,255,.4)}

.panel,.game-card,.device-card,.bottom-callout,.assistant-section,.spec-panel{
  background:linear-gradient(145deg,rgba(12,20,39,.82),rgba(7,13,28,.72));
  border:1px solid rgba(92,162,255,.17);
  box-shadow:var(--panel-shadow);
  backdrop-filter:blur(18px) saturate(120%);
}
.panel{position:relative;overflow:hidden}
.panel::before,.assistant-section::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:72px;
  height:1px;
  background:linear-gradient(90deg,var(--cyan),transparent);
  box-shadow:0 0 12px rgba(0,231,255,.55);
}
.checker-form{box-shadow:var(--panel-shadow)}
.section-caption{color:#7c8ba3}
.section-caption .icon{color:var(--cyan)}
.small-pill{
  background:rgba(0,231,255,.07);
  border:1px solid rgba(0,231,255,.16);
  color:#7ee8f6;
}
.step-number{
  background:rgba(0,231,255,.08);
  border:1px solid rgba(0,231,255,.20);
  color:var(--cyan);
  box-shadow:0 0 18px rgba(0,231,255,.05) inset;
}
.field-heading label{color:#d9e6f5}
.text-button,.subtle-link,.device-card-link,.back-link{color:#73dff2}
.text-button:hover,.subtle-link:hover,.device-card-link:hover,.back-link:hover{color:#b9f7ff;text-shadow:0 0 12px rgba(0,231,255,.22)}

.selection-button{
  border:1px solid rgba(93,160,255,.16);
  background:rgba(7,13,28,.74);
  border-radius:13px;
  color:var(--ink);
}
.selection-button:hover{
  border-color:rgba(0,231,255,.42);
  background:rgba(9,20,39,.9);
  box-shadow:0 0 0 1px rgba(0,231,255,.05) inset,0 0 28px rgba(0,231,255,.07);
}
.selection-icon,.callout-icon,.pending-icon,.large-device-icon,.device-illustration{
  background:linear-gradient(145deg,rgba(0,231,255,.10),rgba(138,92,255,.08));
  color:#8fe8ff;
  border:1px solid rgba(0,231,255,.13);
}
.selection-text small,.device-spec-summary,.form-footnote{color:#7f8da5}
.free-space-field>div{
  background:rgba(5,11,24,.88);
  border-color:rgba(91,157,255,.17);
  border-radius:9px;
}
.free-space-field input{color:#ecf8ff}

.primary-button{
  position:relative;
  overflow:hidden;
  border-radius:10px;
  border:1px solid rgba(0,231,255,.58);
  background:linear-gradient(135deg,#00c5df,#315dff 58%,#8158ff);
  color:white;
  box-shadow:0 10px 30px rgba(37,100,255,.18),0 0 24px rgba(0,231,255,.10);
  letter-spacing:.15px;
}
.primary-button::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.22) 45%,transparent 70%);
  transform:translateX(-120%);
  transition:transform .5s ease;
}
.primary-button:hover{
  background:linear-gradient(135deg,#23dff2,#4875ff 58%,#956bff);
  transform:translateY(-2px);
  box-shadow:0 14px 36px rgba(37,100,255,.25),0 0 30px rgba(0,231,255,.15);
}
.primary-button:hover::after{transform:translateX(120%)}
.secondary-button{
  background:rgba(11,19,36,.78);
  color:#d8eafa;
  border:1px solid rgba(94,158,255,.2);
}
.secondary-button:hover{border-color:rgba(0,231,255,.4);background:rgba(11,26,46,.9)}

.result-card{
  --forest:#061322;
  border:1px solid rgba(0,231,255,.20);
  background:
    radial-gradient(circle at 84% 18%,rgba(0,231,255,.08),transparent 17rem),
    radial-gradient(circle at 15% 100%,rgba(138,92,255,.09),transparent 20rem),
    linear-gradient(155deg,#06111e,#081a2d 56%,#07111f);
  box-shadow:0 28px 90px rgba(0,0,0,.36),0 0 60px rgba(0,231,255,.05),0 0 0 1px rgba(255,255,255,.02) inset;
}
.result-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(0,231,255,.55),transparent 18%) top left/180px 1px no-repeat,
    linear-gradient(rgba(0,231,255,.55),transparent 18%) top left/1px 120px no-repeat,
    linear-gradient(270deg,rgba(138,92,255,.55),transparent 18%) bottom right/180px 1px no-repeat,
    linear-gradient(0deg,rgba(138,92,255,.55),transparent 18%) bottom right/1px 120px no-repeat;
}
.result-card:after{
  border-color:rgba(0,231,255,.08);
  box-shadow:0 0 0 30px rgba(0,231,255,.025),0 0 0 60px rgba(138,92,255,.018);
}
.result-eyebrow{color:#7ddbe9}
.estimate-tag{
  border-color:rgba(0,231,255,.2);
  color:#79cee0;
  background:rgba(0,231,255,.045);
}
.result-label{color:#7ef2d0}
.result-copy p{color:#91a7b8}
.score-ring{
  background:conic-gradient(from 35deg,var(--cyan) calc(var(--score)*1%),rgba(0,231,255,.10) 0);
  box-shadow:0 0 40px rgba(0,231,255,.10);
}
.score-ring>div{
  background:radial-gradient(circle,#0b2031 0%,#061322 68%);
  box-shadow:0 0 0 1px rgba(0,231,255,.08) inset;
}
.score-ring strong{color:#edfdff;text-shadow:0 0 18px rgba(0,231,255,.24)}
.score-ring span,.score-caption{color:#7fc4d1}
.quick-specs{border-color:rgba(104,168,255,.14)}
.quick-spec{border-color:rgba(104,168,255,.14)}
.quick-spec>span{color:#7892a8}
.quick-spec strong{color:#d8eaf6}
.quick-spec strong.quick-warn{color:var(--warn)}
.quick-spec strong.quick-fail{color:#ff9aac}
.quick-spec strong.quick-unknown{color:#92a3b7}
.settings-tip{
  background:rgba(0,231,255,.035);
  border:1px solid rgba(0,231,255,.10);
}
.settings-tip>.icon{color:#6fefff}
.settings-tip strong{color:#cbf5fb}
.settings-tip p{color:#839fb0}
.result-detail-button,.share-button{color:#a7ced9}
.result-detail-button:hover,.share-button:hover{color:#e9fdff}
.result-caveat{color:#6f8497}
.status-limited,.status-unsupported{
  --forest:#151729;
  background:
    radial-gradient(circle at 80% 20%,rgba(255,209,102,.06),transparent 18rem),
    linear-gradient(155deg,#121522,#171828);
  border-color:rgba(255,209,102,.16);
}
.status-limited .result-label,.status-unsupported .result-label{color:#ffd77b}

.trust-strip{
  border-color:rgba(91,157,255,.12);
  color:#6f8096;
}
.trust-strip .icon{color:#6dbad0}
.trust-strip>a:hover{color:var(--cyan)}
.section-heading h2,.page-intro h1,.detail-hero h1,.spec-panel h2,.spec-panel h3{color:#eef8ff}

.game-card,.device-card{
  overflow:hidden;
  border-radius:14px;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.game-card:hover,.device-card:hover{
  transform:translateY(-5px);
  border-color:rgba(0,231,255,.32);
  box-shadow:0 18px 48px rgba(0,0,0,.28),0 0 28px rgba(0,231,255,.06);
}
.game-card-body,.device-card{color:#e7f2fb}
.game-card-body>p,.device-card>p{color:#7f8ea4}
.game-card-title:hover{color:var(--cyan)}
.game-art{
  box-shadow:0 0 0 1px rgba(255,255,255,.04) inset;
  filter:saturate(.92) contrast(1.03);
}
.art-tag{
  border-color:rgba(255,255,255,.18);
  background:rgba(2,7,18,.7);
  color:#d8fbff;
  letter-spacing:1.1px;
}
.compatibility-dot{color:#86a89d}
.compatibility-dot:before{background:var(--good);box-shadow:0 0 10px rgba(73,242,166,.6)}
.fit-limited{color:#c7b47a}.fit-limited:before{background:var(--warn);box-shadow:0 0 10px rgba(255,209,102,.5)}
.fit-unsupported{color:#8996a8}.fit-unsupported:before{background:#718096;box-shadow:none}
.round-button{
  background:rgba(0,231,255,.05);
  border-color:rgba(0,231,255,.14);
  color:#82e7f5;
}
.round-button:hover{background:rgba(0,231,255,.11);border-color:rgba(0,231,255,.34)}

.bottom-callout{
  border-style:solid;
  border-color:rgba(95,161,255,.15);
  background:linear-gradient(120deg,rgba(0,231,255,.045),rgba(138,92,255,.035));
}
.bottom-callout p{color:#7f8da3}
.bottom-callout>a{color:#7be2f0}

.site-footer{
  border-color:rgba(89,153,255,.12);
  color:#667a91;
}
.footer-brand{color:#a0b3c8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.footer-brand span{color:var(--cyan)}
.site-footer>p>span{color:#5f7187}
.site-footer>a{color:#7896aa}

.page-intro{position:relative}
.page-intro::after{
  content:"";
  display:block;
  margin-top:28px;
  height:1px;
  max-width:540px;
  background:linear-gradient(90deg,var(--cyan),rgba(138,92,255,.4),transparent);
  opacity:.42;
}
.library-toolbar{
  padding:12px;
  border:1px solid rgba(91,157,255,.13);
  background:rgba(7,13,28,.55);
  border-radius:14px;
  backdrop-filter:blur(14px);
}
.search-field{
  background:rgba(4,10,23,.72);
  border-color:rgba(91,157,255,.17);
}
.search-field:focus-within{border-color:rgba(0,231,255,.42);box-shadow:0 0 0 3px rgba(0,231,255,.05)}
.search-field input{color:#e8f6ff}
.search-field input::placeholder{color:#63758c}
.filter-tabs{background:rgba(4,10,23,.55);border-color:rgba(91,157,255,.12)}
.filter-tabs button{color:#75869d}
.filter-tabs button.active{
  color:#dffaff;
  background:linear-gradient(135deg,rgba(0,231,255,.12),rgba(138,92,255,.10));
  border-color:rgba(0,231,255,.20);
  box-shadow:0 0 18px rgba(0,231,255,.05);
}
.library-count{color:#65798f}

.platform-pill{
  background:rgba(0,231,255,.06);
  color:#7fdce9;
  border:1px solid rgba(0,231,255,.13);
}
.device-card-specs{border-color:rgba(94,159,255,.10);color:#8797aa}
.device-card-link{border-color:rgba(94,159,255,.10)}
.spec-list>div{border-color:rgba(91,157,255,.10)}
.spec-list dt{color:#72849b}
.spec-list dd{color:#d5e5f1}
.requirement-notes{background:rgba(0,231,255,.035);border-color:rgba(0,231,255,.10)}
.requirement-notes p{color:#8196a9}
.source-link{color:#70dcea}

.dialog-heading h2{color:#f1f9ff}
dialog{
  color:var(--ink);
  background:linear-gradient(155deg,#08101f,#0a172a);
  border:1px solid rgba(0,231,255,.20);
  box-shadow:0 40px 120px rgba(0,0,0,.6),0 0 70px rgba(0,231,255,.06);
}
dialog::backdrop{background:rgba(0,4,12,.76);backdrop-filter:blur(6px)}
.icon-button{
  background:rgba(0,231,255,.045);
  border-color:rgba(0,231,255,.14);
  color:#8edee9;
}
.icon-button:hover{background:rgba(0,231,255,.10);border-color:rgba(0,231,255,.32)}
.picker-item{
  color:var(--ink);
  background:rgba(5,12,25,.58);
  border-color:rgba(91,157,255,.10);
}
.picker-item:hover{
  background:rgba(9,22,40,.88);
  border-color:rgba(0,231,255,.22);
}
.picker-item small{color:#72869d}
.picker-footer{border-color:rgba(91,157,255,.11);color:#74869b}
.input-label{color:#91a4b9}
.input-label input,.input-label select,.input-label textarea,
input,select,textarea{
  color:#eaf7ff;
  background:rgba(4,10,22,.82);
  border-color:rgba(91,157,255,.17);
}
.input-label input:focus,.input-label select:focus,.input-label textarea:focus,
input:focus,select:focus,textarea:focus{
  border-color:rgba(0,231,255,.42);
  box-shadow:0 0 0 3px rgba(0,231,255,.045);
}
.custom-hint,.dialog-description{color:#73869b}

.method-card .step-number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.about-body article,.about-aside{
  background:linear-gradient(145deg,rgba(12,20,39,.82),rgba(7,13,28,.72));
  border-color:rgba(91,157,255,.14);
  color:#d9e7f2;
}
.about-body p,.about-aside p,.about-aside span{color:#7f90a5}
.score-legend>div{background:rgba(0,231,255,.035);border-color:rgba(0,231,255,.10)}
.score-legend strong{color:#c9f8ff}

.toast{
  background:#081524;
  color:#dffaff;
  border:1px solid rgba(0,231,255,.23);
  box-shadow:0 18px 60px rgba(0,0,0,.4),0 0 30px rgba(0,231,255,.07);
}
.noscript{background:#121827;color:#d7e5ef;border-color:rgba(255,209,102,.2)}

@keyframes techPulse{
  0%,100%{opacity:.72;transform:scale(.92)}
  50%{opacity:1;transform:scale(1.08)}
}
@keyframes techOrbit{to{transform:rotate(346deg)}}

@media(max-width:900px){
  .nav-note{display:none}
  .hero{min-height:auto}
  .hero-stamp{opacity:.72}
}
@media(max-width:760px){
  body::before{background-size:28px 28px}
  .site-header{position:relative}
  .nav-wrap{padding:0 18px}
  h1{font-size:45px;letter-spacing:-2px}
  .hero{padding-top:34px}
  .library-toolbar{padding:9px}
}
@media(prefers-reduced-motion:reduce){
  .live-dot,.stamp-orbit{animation:none!important}
  .primary-button::after{display:none}
}


/* Exact device configuration clarity */
.device-config-line{
  color:#6fd7e8!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.15px;
  margin-top:4px!important;
  white-space:normal;
}
.device-config{
  color:#72cfe0!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:8px!important;
  line-height:1.55!important;
  letter-spacing:.15px;
  margin-top:8px!important;
}
.picker-config{
  color:#70d7e8!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  margin:4px 0 2px!important;
  white-space:normal;
}
.device-spec-summary span{
  overflow-wrap:anywhere;
}
.device-spec-summary b{
  color:#4d6278;
  font-weight:400;
  padding:0 3px;
}
.device-detail-hero p{
  max-width:680px;
}


/* =========================================================
   SMOOTH + COLLISION-SAFE LAYOUT
   Keeps the cyber theme while preventing narrow-screen overlap.
   ========================================================= */
:root{
  --ease-ui:cubic-bezier(.2,.75,.25,1);
  --ease-soft:cubic-bezier(.22,.61,.36,1);
}
html{scroll-padding-top:96px}
body{overscroll-behavior-y:none}
#app,
.panel,
.game-card,
.device-card,
.result-card,
.selection-button,
.primary-button,
.secondary-button,
.round-button,
.icon-button,
.filter-tabs button,
.picker-item,
.search-field,
input,
select,
textarea{
  transition:
    border-color .2s var(--ease-ui),
    background-color .2s var(--ease-ui),
    box-shadow .25s var(--ease-ui),
    color .2s var(--ease-ui),
    transform .22s var(--ease-ui),
    opacity .2s var(--ease-ui);
}

/* Give flex/grid children permission to shrink instead of colliding. */
.nav-wrap>*,
.hero>*,
.checker-section>*,
.result-main>*,
.result-topline>*,
.result-bottom>*,
.section-heading>*,
.bottom-callout>*,
.library-toolbar>*,
.detail-hero>*,
.detail-columns>*,
.picker-item>*,
.assistant-section>*{
  min-width:0;
}
.selection-text,
.result-copy,
.device-card,
.game-card-body,
.picker-item>span,
.detail-hero>div:last-child{
  min-width:0;
}
.selection-text strong,
.selection-text small,
.device-config-line,
.device-config,
.picker-config,
.device-spec-summary span,
.device-card h3,
.device-card>p,
.game-card-title,
.game-card-body>p,
.result-copy h2,
.result-copy p,
.settings-tip p,
.detail-hero h1,
.detail-hero p,
.spec-list dd,
.requirement-notes p,
.assistant-copy p,
.assistant-answer{
  overflow-wrap:anywhere;
  word-break:normal;
}

/* Desktop polish */
.panel,
.game-card,
.device-card,
.result-card,
.assistant-section{
  transform:translateZ(0);
  backface-visibility:hidden;
}
.game-card:hover,
.device-card:hover{
  transform:translateY(-3px);
}
.selection-button:hover,
.picker-item:hover{
  transform:translateY(-1px);
}
.primary-button:active,
.secondary-button:active,
.round-button:active,
.icon-button:active{
  transform:translateY(0) scale(.985);
}
.search-field:focus-within,
.input-label input:focus,
.input-label select:focus,
.input-label textarea:focus{
  box-shadow:0 0 0 3px rgba(0,231,255,.055),0 10px 30px rgba(0,0,0,.12);
}

/* Safer wrapping for busy rows */
.result-topline,
.result-bottom,
.section-heading,
.bottom-callout,
.picker-footer,
.device-card-specs{
  flex-wrap:wrap;
}
.result-topline{row-gap:8px}
.result-bottom{row-gap:10px}
.result-bottom>*{max-width:100%}
.device-card-specs span{min-width:0}
.device-card-link{gap:12px}
.quick-spec strong{white-space:normal}
.quick-spec{min-width:0}
.trust-strip>span{white-space:normal}
.platform-message{align-items:flex-start}
.platform-message .icon{margin-top:1px}
.assistant-prompts button{max-width:100%;white-space:normal;text-align:left;line-height:1.35}

/* Dialogs should never escape the viewport. */
dialog{
  width:min(720px,calc(100vw - 32px));
  max-width:calc(100vw - 32px);
  max-height:min(86vh,860px);
  overflow:auto;
  overscroll-behavior:contain;
}
#picker-dialog,
#custom-dialog{
  scrollbar-gutter:stable;
}
.dialog-heading{
  position:sticky;
  top:-1px;
  z-index:4;
  padding-bottom:12px;
  background:linear-gradient(180deg,#08101f 75%,rgba(8,16,31,0));
}
.picker-results{
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
}
.form-columns>*{min-width:0}

/* Tables and requirement panels stay readable rather than overflowing. */
.breakdown,
.requirements-grid,
.comparison-table{
  min-width:0;
}
.breakdown{
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scrollbar-width:thin;
}
.comparison-table{width:100%}

/* Tablet: stack the checker before it becomes squeezed. */
@media(max-width:980px){
  .checker-section{
    grid-template-columns:1fr;
    gap:20px;
  }
  .checker-form,
  .result-card{
    min-height:0;
  }
  .result-card{height:auto}
  .assistant-section{
    grid-template-columns:1fr;
    gap:24px;
  }
  .assistant-form .primary-button{justify-self:start}
}

/* Narrow tablet / large phone */
@media(max-width:700px){
  #app{padding-left:18px;padding-right:18px}
  .nav-wrap{
    padding-left:18px;
    padding-right:18px;
  }
  .main-nav{
    overflow-x:auto;
    justify-content:flex-start;
    gap:8px;
    scrollbar-width:none;
    -ms-overflow-style:none;
    padding-bottom:2px;
  }
  .main-nav::-webkit-scrollbar{display:none}
  .main-nav a{
    flex:0 0 auto;
    padding:0 8px;
  }

  .hero{
    display:grid;
    grid-template-columns:1fr;
    gap:18px;
  }
  .hero-stamp{
    justify-self:end;
    margin:0;
    max-width:100%;
  }

  .result-main{
    align-items:flex-start;
  }
  .quick-specs{
    grid-template-columns:1fr;
    gap:0;
    padding:0;
  }
  .quick-spec{
    border-left:0;
    border-top:1px solid rgba(104,168,255,.14);
    padding:13px 0;
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    gap:14px;
  }
  .quick-spec:first-child{border-top:0}
  .quick-spec>span,
  .quick-spec strong{
    min-width:0;
  }

  .library-toolbar .filter-tabs,
  .picker-filters{
    width:100%;
    overflow-x:auto;
    justify-content:flex-start;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .library-toolbar .filter-tabs::-webkit-scrollbar,
  .picker-filters::-webkit-scrollbar{display:none}
  .filter-tabs button{flex:0 0 auto}

  .section-heading{
    align-items:flex-start;
  }
  .subtle-link{
    max-width:none;
  }

  .device-grid,
  .game-grid{
    grid-template-columns:1fr;
  }
  .device-card-specs{
    gap:10px 16px;
  }
  .device-card-link{
    align-items:flex-start;
  }

  .form-columns{
    grid-template-columns:1fr;
  }
  .free-space-field{
    align-items:flex-start;
  }

  .detail-hero,
  .detail-columns{
    min-width:0;
  }
  .requirements-grid{
    grid-template-columns:1fr;
  }

  .assistant-prompts{
    display:grid;
    grid-template-columns:1fr;
  }
  .assistant-prompts button{width:100%}
}

/* Phones: fully stack collision-prone rows. */
@media(max-width:560px){
  .site-header{position:relative}
  .brand{max-width:100%;white-space:normal}
  .brand span{overflow-wrap:anywhere}

  h1,
  .hero h1,
  .page-intro h1,
  .detail-hero h1{
    font-size:clamp(34px,11vw,44px);
    line-height:1.02;
    letter-spacing:-1.7px;
  }

  .hero-stamp{display:none}

  .checker-form,
  .result-card,
  .assistant-section,
  .spec-panel,
  .device-card{
    padding-left:18px;
    padding-right:18px;
  }

  .section-caption{
    align-items:flex-start;
    flex-wrap:wrap;
    row-gap:8px;
  }
  .field-heading{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .field-heading .text-button{
    margin-left:0;
    width:100%;
    justify-content:flex-start;
  }

  .selection-button{
    align-items:flex-start;
  }
  .selection-button>.icon{
    margin-top:10px;
  }

  .free-space-field{
    flex-direction:column;
    gap:8px;
  }
  .free-space-field>div{
    width:100%;
  }
  .free-space-field input{
    width:100%;
    min-width:0;
  }

  .result-topline{
    align-items:flex-start;
  }
  .result-main{
    flex-direction:column;
    gap:22px;
  }
  .score-wrap{
    align-self:center;
    margin-right:0;
  }
  .result-copy h2,
  .result-copy p{
    max-width:none;
  }
  .score-ring{
    width:108px;
    height:108px;
  }
  .result-bottom{
    align-items:stretch;
    flex-direction:column;
  }
  .result-detail-button,
  .share-button{
    width:100%;
    justify-content:space-between;
    min-height:38px;
  }
  .settings-tip{
    align-items:flex-start;
  }

  .trust-strip{
    display:grid;
    grid-template-columns:1fr;
    justify-items:start;
    gap:11px;
  }
  .trust-strip>a{width:auto}

  .bottom-callout{
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:start;
  }
  .bottom-callout>a{
    grid-column:1/-1;
    margin-left:0;
  }

  .site-footer{
    align-items:flex-start;
  }

  dialog{
    width:calc(100vw - 20px);
    max-width:calc(100vw - 20px);
    max-height:90vh;
    padding:18px;
    border-radius:14px;
  }
  .dialog-heading{
    gap:12px;
  }
  .dialog-heading h2{
    font-size:22px;
  }
  .picker-item{
    align-items:flex-start;
    gap:10px;
    padding:11px 9px;
  }
  .picker-item>.icon{
    margin-top:8px;
  }
  .picker-footer{
    align-items:flex-start;
    flex-direction:column;
  }

  .comparison-table{
    min-width:680px;
  }
}

/* Tiny phones */
@media(max-width:390px){
  #app{padding-left:14px;padding-right:14px}
  .nav-wrap{padding-left:14px;padding-right:14px}
  .checker-form,
  .result-card,
  .assistant-section,
  .spec-panel,
  .device-card{
    padding-left:15px;
    padding-right:15px;
  }
  .selection-icon{
    width:38px;
    height:38px;
  }
  .selection-text strong{font-size:13px}
  .device-spec-summary{align-items:flex-start}
  .estimate-tag{display:none}
  .score-ring{
    width:98px;
    height:98px;
  }
  .primary-button{
    width:100%;
  }
}

/* Keep accessibility intact when motion is disabled. */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  #app,
  .panel,
  .game-card,
  .device-card,
  .result-card,
  .selection-button,
  .primary-button,
  .secondary-button,
  .round-button,
  .icon-button,
  .filter-tabs button,
  .picker-item,
  .search-field,
  input,
  select,
  textarea{
    transition:none!important;
    transform:none!important;
  }
}
