@font-face{font-family:Pretendard;src:url('/font/regular.woff2')}@font-face{font-family:Pretendard;src:url('/font/bold.woff2');font-weight:700}*{box-sizing:border-box}body{margin:0;color:#20282c;background:#f3f5f6;font-family:Pretendard,-apple-system,sans-serif;font-size:14px;line-height:1.65}button,a,input{touch-action:manipulation}button,a{font:inherit}button{border:1px solid #c9d1d6;background:white;border-radius:4px;color:inherit;cursor:pointer;padding:7px 11px;font-size:12px}button:hover{border-color:#5a768a}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #326aa8;outline-offset:2px}button[aria-pressed=true]{background:#23333f;color:white;border-color:#23333f}a{color:#235a86;text-decoration:none;cursor:pointer}a:hover{text-decoration:underline}.top{height:58px;padding:0 32px;background:#171c20;color:#fff;display:flex;align-items:center;gap:24px;font-size:11px;letter-spacing:.08em}.top>strong{font-family:Arial,sans-serif;font-size:20px;font-weight:900;letter-spacing:-.07em}.top>b{font-size:9px;border:1px solid #58636b;padding:2px 7px}.top>a{margin-left:auto;color:#c5cdd2;letter-spacing:0}main{max-width:1680px;margin:auto;padding:30px 32px 0}.intro{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:40px;align-items:end;margin-bottom:24px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.13em;color:#5b6a75;margin:0 0 8px}h1{font-size:31px;line-height:1.35;letter-spacing:-.045em;margin:0 0 12px}#thesis{max-width:780px;margin:0;color:#4e5b65;font-size:14px;line-height:1.8}.intro aside{font-size:12px;border-left:1px solid #d3dadd;padding-left:24px}.intro aside p{margin:6px 0 12px;color:#6c767d}.downloads{display:flex;gap:16px;font-size:11px}.basis{border:1px solid #d6dce0;background:#fff;margin-bottom:20px;padding:11px 15px}.basis summary{cursor:pointer;font-size:12px;font-weight:700}.basis #basis{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:12px;color:#52616c;font-size:12px}.basis li{margin-bottom:5px}.desk{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:22px;align-items:start}.viewer{min-width:0}.player{position:relative;aspect-ratio:16/9;background:#000}video{width:100%;height:100%;object-fit:contain;display:block}.tc{position:absolute;left:12px;top:10px;color:white;display:flex;align-items:baseline;gap:9px;text-shadow:0 1px 4px #000;pointer-events:none}.tc strong{font-size:16px}.tc span{font-size:10px;opacity:.7}.transport{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:9px 0}.transport label{font-size:11px;margin:0 6px;white-space:nowrap}.transport button{font-size:11px;padding:6px 9px}#playShot{background:#23333f;color:white;border-color:#23333f}.timeline{position:relative;background:#e7ecef;padding:8px 10px 7px;margin-bottom:15px}.timeline canvas{width:100%;height:45px;display:block}.timeline input{display:block;width:100%;margin:0;accent-color:#335f82}.timeline>div{display:flex;justify-content:space-between;font-size:9px;color:#6b7c89;margin-top:4px}.shotPanel{position:sticky;top:12px;background:#fff;border:1px solid #d4dce0;max-height:calc(100dvh - 24px);display:flex;flex-direction:column;min-height:280px}.listHead{padding:14px;border-bottom:1px solid #dce2e6}h2{font-size:16px;line-height:1.5;margin:0 0 10px;letter-spacing:-.02em}.listHead h2 span{float:right;font-size:11px;color:#78848c}.filters{display:flex;flex-wrap:wrap;gap:5px}.filters button{font-size:10px;padding:4px 7px}#shotList{overflow-y:auto;overscroll-behavior:contain;padding:5px}.shotCard{display:grid;grid-template-columns:64px minmax(0,1fr);width:100%;border:0;border-bottom:1px solid #e6ebee;border-radius:0;text-align:left;padding:11px 8px;gap:9px;background:white}.shotCard.selected{background:#edf2f5;box-shadow:inset 3px 0 #355e7c}.shotCard small{font-size:10px;color:#71828d}.shotCard strong{font-size:12px;display:block;line-height:1.5}.shotCard .sid{font-size:11px;font-weight:700}.shotCard .tag{font-size:9px;color:#95527d}.shotCard img{width:64px;height:40px;object-fit:cover;margin-top:4px}.shotHead{display:flex;align-items:flex-start;gap:14px;margin:0 0 14px}.shotHead .num{background:#23333f;color:white;padding:8px;font-size:14px;font-weight:700;line-height:1.2}.shotHead h2{font-size:22px;line-height:1.4;margin:0 0 4px}.shotHead p{font-size:11px;color:#6c7c86;margin:0}.chips{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.chips span{font-size:10px;background:#e6ecef;padding:3px 7px}.heroTag{color:#8c386b!important;background:#f4eaf1!important}.frameStrip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:17px}.frameStrip button{padding:0;overflow:hidden;border-radius:0;text-align:left;min-width:0;background:#fff}.frameStrip img{width:100%;aspect-ratio:16/9;object-fit:contain;display:block;background:#101418}.frameStrip span{display:block;padding:4px 7px;font-size:10px;color:#637581}.analysisBlock{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.analysisBlock div{background:white;padding:14px;border-top:2px solid #becbd3}.analysisBlock h3,.cameraGrid h3{font-size:11px;letter-spacing:.02em;color:#637683;margin:0 0 7px}.analysisBlock p,.cameraGrid p{margin:0;font-size:13px;line-height:1.85}.cameraGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:14px}.cameraGrid>div{background:white;border:1px solid #d2dce2;padding:16px}.cameraGrid .lead{border-top:3px solid #376184}.cameraGrid .alt{border-top:3px solid #a3b0ba}.cameraGrid .tech{font-size:12px;font-weight:700;color:#243d50;margin-bottom:10px}.edit{background:#e8eef1;padding:13px 16px;margin:12px 0;font-size:12px}.edit strong{display:block;margin-bottom:4px}.caution{font-size:11px;color:#687b88;margin:12px 0 18px;border-left:2px solid #bccbd4;padding-left:12px}.refCard{display:grid;grid-template-columns:220px minmax(0,1fr);gap:17px;border-top:1px solid #d4dce0;padding-top:16px}.refImage{border:0;padding:0;background:#171c20;border-radius:0;line-height:0}.refImage img{width:100%;aspect-ratio:16/9;object-fit:contain}.refCard h3{font-size:12px;line-height:1.5;margin:0 0 6px}.refCard p{font-size:11px;color:#697b87;margin:3px 0 7px}.refCard a{font-size:11px}.rowlinks{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}.rowlinks button{font-size:10px;padding:4px 7px}.coverage{margin-top:35px;padding-top:20px;border-top:1px solid #ccd6dc}.coverage h2 small{font-size:11px;color:#6f818c;margin-left:12px}.coverage p{font-size:12px;color:#607481}.coverage #coverage{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.coverage button{display:flex;justify-content:space-between;text-align:left;font-size:10px;gap:4px}.coverage .unresolved{color:#886148;background:#f3eee9}.coverage button small{color:#71818d}.coverage button b{white-space:nowrap}footer{font-size:10px;color:#84919a;padding:25px 0 30px}dialog{max-width:min(1100px,95vw);border:0;background:#171c20;color:white;padding:12px}dialog::backdrop{background:#000c}dialog img{display:block;max-width:100%;max-height:78dvh;object-fit:contain}dialog button{display:block;margin:0 0 8px auto}dialog p{font-size:12px;margin:8px 0 0}#error{position:fixed;bottom:20px;left:20px;background:#612830;color:white;padding:12px;z-index:20}[hidden]{display:none!important}@media(max-width:1050px){main{padding:22px 18px 0}.top{padding:0 18px}.desk{grid-template-columns:minmax(0,1fr) 270px;gap:14px}.refCard{grid-template-columns:170px minmax(0,1fr)}.coverage #coverage{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(orientation:portrait),(max-width:740px){.desk{display:flex;flex-direction:column}.viewer{width:100%}.shotPanel{position:static;width:100%;max-height:420px}.intro{grid-template-columns:1fr;gap:15px}.intro aside{border-left:0;border-top:1px solid #d3dadd;padding:12px 0 0;display:flex;gap:20px;align-items:center}.intro aside p{margin:0}.downloads{margin-left:auto}.basis #basis{grid-template-columns:1fr;gap:4px}.coverage #coverage{grid-template-columns:repeat(3,minmax(0,1fr))}.shotCard{grid-template-columns:64px 1fr}}@media(max-width:560px){.top{gap:12px;height:50px}.top>span{display:none}main{padding:18px 12px 0}h1{font-size:26px}.intro aside{font-size:10px;flex-wrap:wrap;gap:10px}.analysisBlock,.cameraGrid{grid-template-columns:1fr;gap:9px}.shotHead h2{font-size:19px}.frameStrip{gap:4px}.frameStrip span{font-size:9px;padding:3px}.refCard{grid-template-columns:125px 1fr;gap:10px}.timeline>div span:nth-child(2){display:none}.coverage #coverage{grid-template-columns:repeat(2,minmax(0,1fr))}}

body:not(.connected) main{display:none}body.connected #accessGate{display:none}.accessGate{max-width:640px;margin:10vh auto;padding:32px 24px}.accessGate h1{font-size:30px;line-height:1.3}.accessGate p{line-height:1.8}.accessGate button{padding:14px 20px;background:#182c3a;color:white;font-weight:700;border:0;cursor:pointer}.accessGate a{display:inline-block;margin:14px 0}.accessGate small{display:block;color:#66727a;line-height:1.7;margin-top:28px}#accessStatus{font-size:14px;min-height:3.6em}.accessGate button:disabled{opacity:.55}

.accessGate{margin:5vh auto;max-width:460px}.accessGate label{font-size:13px;font-weight:700;display:block;margin:20px 0 8px}.accessGate input{box-sizing:border-box;width:100%;height:48px;border:1px solid #c3cbd1;border-radius:0;background:white;padding:10px 12px;font:inherit;font-size:16px}.accessGate form button{margin-top:24px;width:100%;font-size:15px}.accessGate form small{margin-top:10px}.accessGate input:focus{outline:2px solid #53748b;outline-offset:1px}.legacyAccess{margin:20px 0 24px;border-top:1px solid #d8dde1;padding-top:16px;font-size:13px}.legacyAccess summary{cursor:pointer}.legacyAccess p{font-size:13px}.legacyAccess button{display:block}.top .logout{color:white;background:none;border:1px solid #66727a;font:inherit;font-size:11px;padding:5px 9px;margin-left:auto}.top:has(.logout:not([hidden])) a{margin-left:8px}
