:root{font-family:Inter,"Microsoft YaHei",system-ui,sans-serif;color:#26354b;background:#f4f7fb;font-synthesis:none;--accent:#159b75;--muted:#7d899a;--line:#e6ecf4}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}button,input,a{font:inherit}button,.button-link{cursor:pointer;border:1px solid var(--line);border-radius:10px;background:white;padding:10px 16px;color:#46556a;text-decoration:none;display:inline-block}button:hover,.button-link:hover{border-color:#8bd6bd;background:#f1fbf6}button:disabled{cursor:not-allowed;opacity:.5}.primary{background:var(--accent);color:white;border-color:var(--accent)}.primary:hover{background:#118463;color:white}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:750}.brand-mark{display:grid;place-items:center;background:var(--accent);color:white;width:40px;height:40px;border-radius:13px;font-size:21px}.eyebrow{font-size:12px;letter-spacing:1.5px;color:var(--muted)}.muted,.fine{color:var(--muted);font-size:13px}.fine{line-height:1.9}h1,h2,h3,p{margin-top:0}h2{font-size:21px}p{line-height:1.8}.login-layout{max-width:1140px;min-height:100vh;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:90px;padding:60px}.login-story .brand{margin-bottom:90px}.login-story h1{font-size:44px;line-height:1.4;letter-spacing:-1px;margin:20px 0}.login-story>p:not(.eyebrow){color:#75849b}.story-footer{font-size:12px;color:#94a2b7;margin-top:75px}.login-card{background:white;padding:46px;border:1px solid var(--line);border-radius:24px;box-shadow:0 22px 80px #365c9610}.login-card h2{font-size:28px;margin:14px 0}.login-card form{margin-top:30px}.login-card label{display:block;font-size:13px;margin:20px 0}.login-card input{display:block;width:100%;margin-top:9px;padding:13px;border:1px solid #dfe6ef;border-radius:9px;outline:none}.login-card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #159b7517}.login-card [type=submit]{width:100%;margin-top:8px}.notice{background:#fff8e9;color:#88662c;border-radius:10px;padding:13px 16px;font-size:13px;overflow-wrap:anywhere}.login-card .notice{margin-top:18px}.workspace{display:grid;grid-template-columns:228px 1fr;min-height:100vh}.sidebar{background:white;border-right:1px solid var(--line);padding:32px 22px;display:flex;flex-direction:column}.sidebar-caption{font-size:11px;color:#a3aebb;margin:46px 14px 14px}.sidebar nav{display:grid;gap:8px}.sidebar nav button{text-align:left;border:0;background:transparent;padding:15px}.sidebar nav .selected,.subnav .selected{background:#ebfaf4;color:#159b75;font-weight:650}.sidebar-bottom{margin-top:auto;padding-top:50px;color:#a3aebb;font-size:12px;text-align:center}.main{max-width:1400px;width:100%;padding:36px 46px 60px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.topbar h1{font-size:25px;margin:8px 0 0}.actions{display:flex;gap:10px;align-items:center;font-size:13px}.hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(105deg,#ebfaf4,#f9fbff);border:1px solid #dceee5;border-radius:17px;padding:30px 34px}.hero h2{font-size:26px;margin:12px 0}.hero p{margin:0;color:#7c8ca4;font-size:13px}.hero-stat{text-align:center;padding:0 28px}.hero-stat strong{display:block;font-size:39px;color:#159b75}.hero-stat span{font-size:12px;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:28px 0 15px}.section-heading h2{font-size:16px;margin:0}.empty{text-align:center;border:1px dashed #d8e1ec;border-radius:14px;padding:35px;color:#92a0b2;font-size:13px;background:#ffffff80}.card,.device-card,.platform-card{border:1px solid var(--line);background:white;border-radius:15px;padding:25px;margin-bottom:14px}.device-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.device-card{margin:0}.device-card.selected{border-color:#74c6a9;box-shadow:0 0 0 2px #159b750d}.card-head,.shop-row{display:flex;justify-content:space-between;align-items:center;gap:15px}.pill{font-size:12px;border-radius:20px;padding:5px 10px;background:#f0f3f7;color:#8390a4}.pill.online{color:#279479;background:#e9f7f2}.shop-row{padding:16px 0;border-top:1px solid var(--line);margin-top:15px}.shop-row h3{font-size:14px;margin:0 0 5px}.shop-actions{display:flex;gap:7px;flex-wrap:wrap}.shop-actions button{font-size:12px;padding:8px 11px}.balance-card{display:flex;justify-content:space-between;align-items:center}.balance{font-size:44px;color:#159b75}.balance-card>p{font-size:13px;color:var(--muted)}.subnav{display:flex;gap:8px;margin:22px 0}.steps{padding-left:25px}.steps li{padding:16px 0 22px 10px}.steps p{font-size:13px;color:var(--muted);margin:8px 0}.package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.package{border:1px solid var(--line);border-radius:12px;padding:20px}.package strong{font-size:24px;display:block;margin:14px 0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:500}.payment-qr{width:220px;max-width:100%}.payment-qr svg{width:100%;height:auto}#launchLink,#pairingStatus{margin-top:15px;overflow-wrap:anywhere}.challenge{font-size:24px;letter-spacing:4px;color:#159b75}button:focus-visible,a:focus-visible{outline:3px solid #8bd6bd;outline-offset:3px}@media(max-width:900px){.login-layout{gap:35px;padding:30px}.login-story h1{font-size:32px}.login-card{padding:30px}.workspace{grid-template-columns:175px 1fr}.sidebar{padding:25px 12px}.main{padding:25px}.topbar{align-items:flex-start}.actions{flex-wrap:wrap;justify-content:flex-end}.shop-row{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.login-layout{display:block;padding:24px}.login-story .brand{margin-bottom:25px}.login-story h1{font-size:29px}.story-footer,.login-story>p:not(.eyebrow){display:none}.login-card{margin-top:30px}.workspace{display:block}.sidebar{padding:15px;border-right:0;border-bottom:1px solid var(--line)}.sidebar nav{display:flex;margin-top:15px}.sidebar nav button{font-size:12px;padding:9px}.sidebar-caption,.sidebar-bottom{display:none}.main{padding:20px}.hero{padding:22px}.hero h2{font-size:20px}.hero-stat{padding:0 10px}.topbar{gap:10px}.topbar h1{font-size:21px}.actions button{padding:8px}.balance-card{align-items:flex-start;flex-direction:column}.subnav{flex-wrap:wrap}}
.auth-utilities{justify-content:space-between;margin-top:10px}.auth-text-link{border:0;padding:4px 0;background:transparent;font-size:12px;color:#7d899a}.registration-link{text-align:center;border-top:1px solid #e6ecf4;padding-top:22px;margin:24px 0 0;font-size:13px;color:#7d899a}.registration-link a{color:#159b75;font-weight:650;text-decoration:none;margin-left:5px}.login-card .notice:empty{display:none}
.registration-button{display:block;width:100%;min-height:48px;padding:12px 20px;border:1px solid #cfe9df;border-radius:10px;background:#f4fbf8;color:#60776e;font-size:14px;line-height:22px;cursor:pointer;transition:background .15s,border-color .15s}.registration-button strong{color:#138361;margin-left:6px}.registration-button:hover:not(:disabled){background:#e5f5ed;border-color:#74c6a9}.registration-button:focus-visible{outline:3px solid #8bd6bd;outline-offset:3px}

.local-workspace{width:100%;height:calc(100vh - 180px);min-height:600px;border:0;border-radius:16px;background:#f5f7fb} .main:has(.local-workspace:not([hidden])){min-width:0}
