@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+TC:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans','Noto Sans TC',sans-serif;color:#1e293b;background:#f5f7fa;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 79% 8%,#e9f2ff 0,transparent 30%),#f5f7fa}.shell{max-width:1020px;margin:auto;padding:30px 42px 24px}.topbar,.brand,.section-head,.button-row,.device-info{display:flex;align-items:center}.topbar,.section-head{justify-content:space-between}.brand{gap:13px}.brand-mark,.device-avatar{display:grid;place-items:center;background:#4058d6;color:#fff;font-weight:800}.brand-mark{width:42px;height:42px;border-radius:13px;font-size:20px;box-shadow:0 5px 12px #4058d633}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#8893a5;font-weight:700;margin:0 0 5px}.brand h1{font-size:15px;margin:0;font-weight:700}.version{font-size:10px;font-weight:700;letter-spacing:1px;background:#e8edff;color:#485ed0;padding:8px 11px;border-radius:8px}.intro{min-height:215px;display:flex;align-items:center;justify-content:space-between;padding:25px 52px 15px 15px}.intro h2{font-size:34px;line-height:1.34;letter-spacing:-1px;margin:8px 0 9px;color:#1c2740}.intro-copy{font-size:13px;color:#7c8798;margin:0}.hub-illustration{width:128px;height:112px;border-radius:25px;background:linear-gradient(145deg,#526bea,#354bc5);box-shadow:0 15px 30px #3f56cb3b;position:relative;transform:rotate(-9deg);display:flex;align-items:center;justify-content:center}.hub-screen{height:53px;width:59px;border-radius:10px;background:#f5f6fb;position:relative;display:flex;align-items:center;justify-content:center;color:#3b50c9}.hub-screen span{position:absolute;top:7px;font-size:9px;letter-spacing:2px}.hub-screen b{font-size:20px}.hub-button{width:11px;height:11px;border-radius:50%;background:#c5ccf4;position:absolute;right:17px;top:21px}.hub-ports{position:absolute;bottom:10px;display:flex;gap:5px}.hub-ports i{display:block;width:7px;height:5px;border-radius:2px;background:#243ba9}.card{background:#fff;border:1px solid #e9edf3;border-radius:16px;box-shadow:0 6px 24px #1c2a4410}.connection{padding:23px 26px 20px}.section-head h3{font-size:15px;margin:0;font-weight:700;color:#253149}.status-pill{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:20px;background:#f0f2f5;color:#768196;font-size:11px}.status-pill i,.connected-dot{width:7px;height:7px;border-radius:50%;background:#aab2c0}.status-pill.connected{color:#20865f;background:#e9f7f0}.status-pill.connected i,.connected-dot{background:#26ae78;box-shadow:0 0 0 3px #26ae7822}.empty-state{display:flex;align-items:center;gap:15px;padding:22px 4px 19px}.bluetooth-icon{width:41px;height:41px;display:grid;place-items:center;background:#eef1ff;color:#4d62dc;border-radius:12px;font-size:21px}.empty-state strong,.device-label strong{font-size:13px}.empty-state p{font-size:11px;color:#8993a2;margin:5px 0 0}.primary-button,.secondary-button{height:40px;border:0;border-radius:9px;font:600 12px inherit;cursor:pointer}.primary-button{background:#465cda;color:white;padding:0 17px;box-shadow:0 5px 12px #465cda2e}.primary-button:hover{background:#364dc8}.primary-button:disabled{opacity:.55;cursor:wait}.primary-button span{font-size:15px;margin-right:5px}.secondary-button{margin-left:9px;padding:0 14px;background:#f0f2f6;color:#465166}.notice{font-size:11px;color:#a04d40;margin:12px 0 0}.device-info{gap:12px;padding:20px 2px 18px}.device-avatar{width:39px;height:39px;border-radius:12px}.device-label{display:grid;gap:4px}.device-label span{font-size:10px;color:#8a95a5}.connected-dot{margin-left:auto}.ports-section{padding:27px 2px 21px}.subtle{color:#9aa4b3;font-size:10px}.port-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:11px;margin-top:16px}.port{height:69px;background:#fff;border:1px solid #e9edf3;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 4px 13px #1c2a4408}.port span{font-size:15px;font-weight:700;color:#34415b}.port i{width:6px;height:6px;border-radius:50%;background:#c8ced8}.port-hint{font-size:10px;color:#9aa4b3;margin:11px 1px}.telemetry{padding:21px 25px 19px}.telemetry-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px}.telemetry-grid>div{display:grid;gap:8px;padding-left:16px;border-left:1px solid #edf0f4}.telemetry-grid>div:first-child{padding-left:0;border:0}.telemetry-grid span{font-size:10px;color:#929cad}.telemetry-grid strong{font-size:20px;font-weight:600;color:#46536a}.telemetry-grid small{font-size:10px;font-weight:500;color:#98a2b2}.log{padding:20px 25px;margin-top:15px}.text-button{border:0;background:none;color:#8a94a4;font:500 10px inherit;cursor:pointer}.log-list{list-style:none;margin:15px 0 0;padding:0;max-height:105px;overflow:auto}.log-list li{display:flex;gap:13px;padding:9px 0;border-top:1px solid #f0f2f5;font-size:10px;color:#758093;line-height:1.6}.log-list time{flex:none;color:#a4adba;font-variant-numeric:tabular-nums}footer{display:block;padding:19px 2px 0;color:#9da6b4;font-size:9px}footer>span{color:#7b8799}.credits{margin-top:10px}.credits summary{cursor:pointer;font-weight:600}.credits-content{max-width:760px;margin-top:12px;line-height:1.65;color:#758093}.credits-content p+p{margin-top:8px}@media(max-width:640px){.shell{padding:20px 17px}.intro{min-height:185px;padding:15px 8px}.intro h2{font-size:27px}.intro-copy{max-width:240px;font-size:11px}.hub-illustration{transform:scale(.78) rotate(-9deg);margin-right:-12px}.connection,.telemetry,.log{padding:19px}.port-grid{gap:6px}.port{height:58px;gap:5px}.port span{font-size:13px}.telemetry-grid>div{padding-left:10px}.telemetry-grid strong{font-size:17px}footer span{max-width:140px;text-align:right}}
