.loginWrap{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:clamp(16px,4vw,40px);position:fixed;inset:0;background:radial-gradient(circle at center,rgba(255,107,154,.08),transparent 60%),#0f0f0f}.loginCard{width:100%;max-width:1000px;display:grid;grid-template-columns:1fr;gap:40px;padding:clamp(24px,4vw,48px);border-radius:20px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(min-width:900px){.loginCard{grid-template-columns:1.1fr 1fr}}.loginBrand{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.loginLogo{width:clamp(120px,18vw,240px);height:auto;object-fit:contain}.loginForm{display:flex;flex-direction:column;gap:18px}.fieldLabel{font-size:14px;margin-bottom:6px;opacity:.85}.input{width:100%;padding:14px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:#0000004d;color:#fff;font-size:15px;transition:border .2s ease}.input:focus{outline:none;border:1px solid #ff6b9a}.btn{padding:14px;border-radius:12px;border:none;cursor:pointer;background:#ff6b9a;color:#fff;font-weight:600;transition:transform .1s ease,opacity .2s ease}.btn:hover{transform:translateY(-2px);opacity:.9}.btn:disabled{opacity:.6;cursor:not-allowed}.error{color:#ff5c7a;font-size:14px}.feedback{display:flex;flex-direction:column;margin-bottom:5em}.feedback .title{font-weight:800}.calibrate{display:flex;align-items:center;gap:1em}.calibrate span{margin-right:auto}.calibrate .loader{height:3em;width:auto}.CircularProgressbar{width:100%;vertical-align:middle}.CircularProgressbar .CircularProgressbar-path{stroke:#3e98c7;stroke-linecap:round;-webkit-transition:stroke-dashoffset .5s ease 0s;transition:stroke-dashoffset .5s ease 0s}.CircularProgressbar .CircularProgressbar-trail{stroke:#d6d6d6;stroke-linecap:round}.CircularProgressbar .CircularProgressbar-text{fill:#3e98c7;font-size:20px;dominant-baseline:middle;text-anchor:middle}.CircularProgressbar .CircularProgressbar-background{fill:#d6d6d6}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-background{fill:#3e98c7}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-text{fill:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-path{stroke:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-trail{stroke:transparent}.appHeader{position:sticky;top:0;z-index:50;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#0f0f0f;border-bottom:1px solid rgba(255,255,255,.08)}@media(max-width:600px){.appHeader{padding:0}}.headerLeft{display:flex;align-items:center;gap:12px}.pageTitle{font-size:2em}@media(max-width:600px){.pageTitle{font-size:0px}}.headerLogo{height:42px;width:42px;object-fit:contain;border-radius:10px}.headerTitle{font-size:18px;font-weight:700;margin:0;white-space:nowrap}.headerNav{display:flex;align-items:center;gap:18px}@media(max-width:600px){.headerNav{gap:0}}.headerNav a{text-decoration:none;color:#ffffffbf;font-weight:600;font-size:14px;padding:8px 10px;border-radius:10px}.headerNav a.active{color:#ff6b9a;background:#ff6b9a1a}.headerRight{display:flex;align-items:center;gap:12px;justify-content:flex-end}.headerInner{width:100%;max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.headerNav a.running{color:#ff6b9a;border:1px solid rgba(255,107,154,.35);background:#ff6b9a14}.headerNav a.active{color:#ff6b9a;background:#ff6b9a1f}.headerNav a[aria-disabled=true]{opacity:.45;cursor:not-allowed}.logoutBtn{background:#ffffff14;border:none;padding:8px 14px;border-radius:10px;cursor:pointer;color:#fff}.pageContainer{max-width:1100px;margin:0 auto;width:100%}.pageHeaderRow{display:flex;align-items:center;justify-content:space-between;margin:18px 0 12px}.cardsGrid{display:grid;gap:16px}.muted{opacity:.75}.small{font-size:12px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.deviceTitleRow{display:flex;align-items:baseline;gap:10px}.deviceTitle{margin:0}.recentBlock{margin-top:14px}.recentTitle{font-weight:700;margin-bottom:8px}.recentList{margin:0;padding-left:18px;display:grid;gap:6px}.recentItem{line-height:1.35}.sessionCard{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:20px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#ffffff08}.sessionInfo{flex:1;min-width:0}.sessionActions{display:flex;flex-direction:column;gap:10px;min-width:160px}.primaryBtn,.secondaryBtn,.dangerBtn{padding:10px 14px;border-radius:10px;border:none;cursor:pointer;color:#fff}.primaryBtn{background:#ff6b9a}.secondaryBtn{background:#ffffff14}.dangerBtn{background:#c94f4f}.error{color:#ff5c7a;margin:10px 0}.severityList{display:grid;gap:10px;margin-top:8px}.severityRow{display:grid;grid-template-columns:1fr auto;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06)}.severityRow:last-child{border-bottom:none}.severityLabel{opacity:.85;font-size:13px}.severityValue{font-weight:800;font-variant-numeric:tabular-nums}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}html,body,#root{height:100%;width:100%;margin:0;padding:0}body{overflow-x:hidden;position:relative}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.silhouette *{transition:fill .25s ease}body.showLoading:before{position:absolute;content:"";inset:0;z-index:100;background-color:gray;opacity:.25}@keyframes spin{0%{rotate:0deg}to{rotate:360deg}}body.showLoading:after{--b: 20px;--a: 220deg;position:absolute;content:"";left:calc(47.5% - (var(--b) / 2));top:calc(47.5% - (var(--b) / 2));z-index:200;animation:spin ease forwards infinite 1s;width:100px;aspect-ratio:1;padding:var(--b);border-radius:50%;background:#c0d860;--_g:/var(--b) var(--b) no-repeat radial-gradient(50% 50%,#000 97%,#0000);-webkit-mask:top var(--_g),calc(50% + 50%*sin(var(--a))) calc(50% - (50%*cos(var(--a)))) var(--_g),linear-gradient(#0000 0 0) content-box intersect,conic-gradient(#000 var(--a),#0000 0);mask:top var(--_g),calc(50% + 50%*sin(var(--a))) calc(50% - (50%*cos(var(--a)))) var(--_g),linear-gradient(#0000 0 0) content-box intersect,conic-gradient(#000 var(--a),#0000 0)}
