:root{--bg:#f3f4f2;--surface:#fff;--ink:#161814;--muted:#656a62;--line:#dfe2dc;--green:#70a900;--green-dark:#426700;--red:#b42318;--amber:#9a6700;--shadow:0 14px 40px rgba(24,32,20,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 Arial,Helvetica,sans-serif}.topbar{height:68px;background:#111;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));position:sticky;top:0;z-index:5}.brand{display:flex;gap:18px;align-items:center;font-weight:700}.logo{font-size:24px;letter-spacing:-1px;border-right:1px solid #555;padding-right:18px}.shell{max-width:1180px;margin:auto;padding:44px 24px 72px}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:28px}.hero h1{font-size:clamp(38px,5vw,66px);line-height:1.02;letter-spacing:-2.2px;margin:4px 0 18px;max-width:720px}.hero p:not(.eyebrow){max-width:760px;color:var(--muted);font-size:17px}.eyebrow{text-transform:uppercase;letter-spacing:1.5px;font-size:11px;font-weight:800;color:var(--green-dark);margin:0}.card,.stat{background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow)}.card{padding:28px}.login-card{text-align:center;max-width:520px;margin:70px auto}.login-card .icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#e9f3d3;color:var(--green-dark);font-size:26px;margin:auto}.login-card h2{font-size:28px;margin:16px 0 8px}.login-card p{color:var(--muted);margin:0 auto 24px;max-width:390px}.primary,.secondary,.text-button,.close{border:0;font:inherit;cursor:pointer}.primary{background:var(--green);color:#10140c;padding:12px 18px;font-weight:800;border-radius:3px}.button{display:inline-block;text-decoration:none}.secondary{padding:10px 14px;background:#edf0ea;color:var(--ink);font-weight:700;border-radius:3px}.text-button{background:transparent;color:#fff;text-decoration:underline;margin-left:14px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.stat{padding:22px}.stat span{color:var(--muted)}.stat strong{display:block;font-size:36px;margin-top:4px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.section-head h2{margin:3px 0 0;font-size:28px}.device-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.device-card{border:1px solid var(--line);padding:18px;display:grid;grid-template-columns:58px 1fr;gap:16px}.device-icon{width:58px;height:58px;display:grid;place-items:center;font-size:11px;font-weight:900;color:#fff}.device-icon.apple{background:#31342f}.device-icon.windows{background:#477300}.device-info h3{margin:0;font-size:18px}.device-info>p{margin:2px 0 10px;color:var(--muted)}.chips{display:flex;gap:7px;flex-wrap:wrap}.chips span{font-size:12px;background:#eef0ec;padding:4px 7px}.chips .good{background:#dfefd0;color:#305600}.chips .warn{background:#fff0c7;color:#744c00}dl{margin:14px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}dt{font-size:11px;text-transform:uppercase;color:var(--muted)}dd{margin:2px 0 0;overflow-wrap:anywhere}.empty{padding:48px;text-align:center;color:var(--muted);border:1px dashed var(--line)}dialog{border:0;padding:0;max-width:620px;width:calc(100% - 32px);box-shadow:0 30px 80px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(0,0,0,.55)}.dialog-inner{padding:30px}.close{font-size:30px;background:transparent}.dialog-inner label{display:block;font-weight:700;margin:22px 0 6px}.input-row{display:grid;grid-template-columns:1fr auto;gap:8px}.input-row input{border:1px solid #aeb3aa;padding:12px;font:inherit;border-radius:3px}.result{display:flex;flex-direction:column;gap:4px;padding:16px;margin-top:18px;background:#eef0ec;border-left:4px solid #777}.result.success{background:#e6f2dc;border-color:var(--green)}.result.bad{background:#fde8e7;border-color:var(--red)}.hidden{display:none!important}@media(max-width:800px){.hero{display:block}.hero .primary{margin-top:16px}.stats,.device-grid{grid-template-columns:1fr}.shell{padding-top:28px}.topbar{padding:0 18px}.brand>span:last-child{display:none}dl{grid-template-columns:1fr}}
