body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root,body,html{color:#fff;font-family:system-ui,Arial,sans-serif;height:100%;margin:0}#root,.page,body,html{background-color:#06050a}.page{box-sizing:border-box;color:#e5e7eb;display:flex;flex-direction:column;gap:8px;height:100vh;min-height:100vh;padding:12px}.viewportBox{flex:0 0 auto;height:70vh;margin:0 auto;max-width:100%;width:90vw}@media (min-width:1024px){.viewportBox{width:65vw}}.vp-counter{bottom:-22px;color:#888;font:600 12px/1 system-ui,Arial,sans-serif;pointer-events:none;position:absolute;right:0;-webkit-user-select:none;user-select:none}.viewport{background:#000;border:1px solid #222;border-radius:8px;inset:0;overflow:hidden;position:absolute;touch-action:none}.viewport canvas{display:block;height:100%!important;width:100%!important}.footnote{font-size:12px;margin-top:4px;opacity:.8}.footnote,.title{text-align:center}.title{font-weight:600;margin:4px 0 8px}.viewportToolbar{align-items:center;display:flex;gap:12px;justify-content:center;margin:10px auto 2px}.toolButton{-webkit-appearance:none;appearance:none;background:#0b1220;border:1px solid #1e293b;border-radius:12px;box-shadow:0 1px 2px #00000040,inset 0 0 0 1px #ffffff0d;color:#e5e7eb;cursor:pointer;padding:10px 14px;transition:transform .06s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.toolButton:hover{background:#111827;transform:translateY(-1px)}.toolButton:active{transform:translateY(0)}.toolButton.active{background:linear-gradient(180deg,#1f3a8a,#172554);border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40}.toolIcon{fill:currentColor;display:block;height:28px;width:28px}@media (max-width:480px){.toolButton{border-radius:14px;padding:12px 16px}.toolIcon{height:30px;width:30px}}.viewport.mode-wl{cursor:crosshair}.viewport.mode-pan{cursor:grab}.viewport.mode-zoom{cursor:zoom-in}.topBar{align-items:center;display:flex;flex-direction:column;gap:8px;justify-content:center;margin-bottom:4px}.topButton{-webkit-appearance:none;appearance:none;background:#283655;border:none;border-radius:999px;box-shadow:0 2px 4px #00000059;color:#f9fafb;cursor:pointer;font-size:14px;font-weight:600;min-width:240px;padding:10px 16px;text-align:center}.topButton:disabled{cursor:default;opacity:.5}.topButton:not(:disabled):hover{background:#4d648d}.studyLine{color:#e5e7eb;font-size:14px;margin-bottom:4px;text-align:center}.modalOverlay{align-items:center;background:#000000a6;display:flex;inset:0;justify-content:center;position:fixed;z-index:50}.modalCard{background:#020617;border:1px solid #1f2933;border-radius:16px;box-shadow:0 20px 40px #00000080;max-width:360px;padding:40px 22px 20px;position:relative;width:90vw}.modalCard h4{margin-bottom:8px;margin-top:0}.modalCard p{font-size:14px;margin:4px 0}.modalCloseBtn{background:#4d648d;border:none;border-radius:999px;color:#f9fafb;cursor:pointer;font-weight:600;margin-top:12px;padding:8px 0;width:100%}.studyList{list-style:none;margin:4px 0 8px;max-height:260px;overflow-y:auto;padding:0}.studyItemBtn{background:#0000;border:none;border-radius:10px;color:#e5e7eb;cursor:pointer;padding:6px 4px;text-align:left;width:100%}.studyItemBtn:hover{background:#94a3b826}.studyItemTitle{color:#e5e7eb;display:block;font-size:14px;font-weight:600}.studyItemMeta{color:#9ca3af;display:block;font-size:12px}.studyShareButton{-webkit-appearance:none;appearance:none;background:#283655;border:none;border-radius:999px;box-shadow:0 2px 4px #00000059;color:#f9fafb;cursor:pointer;display:block;font-size:14px;font-weight:600;margin:8px auto 0;min-width:260px;padding:10px 16px;text-align:center}.studyShareButton:hover{background:#4d648d}.studyShareButton:disabled{cursor:default;opacity:.5}.qrContainer{align-items:center;display:flex;justify-content:center;margin:12px 0 6px;padding:10px 0}.qrImage{border-radius:12px;height:200px;width:200px}.shareButtons{display:flex;flex-direction:column;gap:12px;margin-top:16px;width:100%}.shareButtons .shareBtn{box-sizing:border-box;text-align:center;width:100%}.shareBtn{align-items:center;background:#4d648d;border:none;border-radius:999px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:center;padding:12px 14px;text-decoration:none;white-space:nowrap;width:100%}.shareBtn:hover{background:#6e85b7}.topGroup{align-items:stretch;display:inline-flex;flex-direction:column;gap:8px;justify-content:center;margin:0 auto 12px}.downloadIconBtn{align-items:center;background:#4d648d;border:none;border-radius:8px;cursor:pointer;display:flex;justify-content:center;padding:6px;position:absolute;right:14px;top:14px}.downloadIconBtn:hover{background:#6e85b7}.downloadIcon{fill:#fff;height:22px;width:22px}.bottomActions{display:flex;justify-content:center;margin-top:12px}.reportBox{background:#020617;border:1px solid #1f2933;border-radius:16px;box-shadow:0 12px 30px #00000080;margin:24px auto 16px;max-width:720px;padding:16px 18px}.reportBox h4{margin-bottom:10px;margin-top:0}.reportText{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5;white-space:pre-wrap}.reportEmpty{color:#9ca3af;font-size:14px}.viewportBox{display:inline-block;position:relative}.vp-series-counter{background:#000000b3;border-radius:4px;bottom:8px;color:#c8ffd8;font-size:.75rem;left:8px;padding:2px 6px;pointer-events:none;position:absolute}.vp-triangle{background:#0000;border-radius:0;border-style:solid;cursor:pointer;height:0;padding:0;position:absolute;width:0;z-index:20}.vp-triangle-top{border-color:#0000 #0000 #3dd45a;border-width:0 8px 10px;left:50%;top:-4px;transform:translateX(-50%)}.vp-triangle-bottom{border-color:#3dd45a #0000 #0000;border-width:10px 8px 0;bottom:-4px;left:50%;transform:translateX(-50%)}.vp-triangle-left{border-color:#0000 #3dd45a #0000 #0000;border-width:8px 10px 8px 0;left:-4px;top:50%;transform:translateY(-50%)}.vp-triangle-right{border-color:#0000 #0000 #0000 #3dd45a;border-width:8px 0 8px 10px;right:-4px;top:50%;transform:translateY(-50%)}
/*# sourceMappingURL=main.588a77e1.css.map*/