:root{color-scheme:dark;font:14px system-ui,sans-serif;color:#e4ecf7;background:#10151d;--line:#2a3545;--muted:#94a7bd;--accent:#8ee3bf}*{box-sizing:border-box}body{margin:0}header{min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--line)}header b{font-size:19px;letter-spacing:2px}header span{display:block;color:var(--muted);font-size:12px;margin-top:5px}nav,.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}a{color:var(--accent);text-decoration:none}button,.button,select,input[type=text],#poseName{font:inherit;background:#202b3b;border:1px solid #3a4b62;color:#eef6ff;border-radius:7px;padding:9px 11px}button,.button{cursor:pointer;display:inline-block;text-align:center}button:hover,.button:hover{border-color:var(--accent)}button:disabled{opacity:.4;cursor:default}.primary{background:var(--accent);color:#0a3027;border-color:var(--accent);font-weight:650}.wide{width:100%;margin-top:8px}label{display:block;margin:10px 0;color:#bed0e3}select,#poseName{display:block;width:100%;margin-top:5px}input[type=range]{width:100%;accent-color:var(--accent)}input[type=checkbox]{accent-color:var(--accent)}input[type=number]{width:75px;background:#152130;color:#fff;border:1px solid #3a4b62;border-radius:5px;padding:6px}h2{font-size:13px;text-transform:uppercase;letter-spacing:1.5px;color:#9cc8b9;margin:24px 0 12px}h3{font-size:16px}p{line-height:1.5;font-size:12px}.muted,#captureState{color:var(--muted)}#notice{background:#192333;padding:10px 24px;color:#bdd7f4;border-bottom:1px solid var(--line)}main{display:grid;grid-template-columns:280px minmax(390px,1fr) 310px;align-items:start}aside{padding:0 16px 22px;max-height:calc(100vh - 116px);overflow:auto}.capture{border-right:1px solid var(--line)}.editor{border-left:1px solid var(--line)}#preview{width:100%;background:#070c12;border-radius:9px;margin-top:14px;display:block}.workspace{min-width:0;padding:12px}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:11px}.toolbar label{margin:5px}.toolbar button{font-size:11px}#mode{color:var(--accent);margin-right:auto}#scene{width:100%;height:calc(100vh - 310px);min-height:380px;display:block;border:1px solid var(--line);border-radius:12px;touch-action:none}.viewHelp{text-align:center;color:var(--muted);font-size:11px;line-height:1.9;margin:8px}.red{color:#ff777a}.green{color:#7ae4a4}.blue{color:#80afff}.viewHelp span{margin:0 10px}.savebar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.savebar label{flex:1;min-width:180px}.savebar button{font-size:12px}details{padding:12px;border:1px solid var(--line);border-radius:8px;margin-top:12px;color:var(--muted)}summary{cursor:pointer;color:#c5d6e7}#joints{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}#joints .finger{grid-column:1/-1;color:var(--muted);font-size:11px;margin-top:8px}#joints button{font-size:10px;padding:7px 2px}#joints button[aria-pressed=true]{border-color:var(--accent);background:#234238}#joints small{display:block;font-size:9px;color:var(--muted)}.angleRow{display:grid;grid-template-columns:1fr 78px;align-items:center;gap:4px}.angleRow input[type=range]{grid-column:1/-1}.limitRow{border-bottom:1px solid var(--line);padding:6px 0;display:flex;gap:7px;align-items:center}.limitRow label{width:52px}#library button{font-size:12px}#library .saved{border:1px solid var(--line);border-radius:7px;padding:7px;margin:7px 0;display:flex;gap:4px;align-items:center}#library .saved button:first-child{flex:1;text-align:left}.empty{font-size:12px;color:var(--muted)}@media(max-width:1100px){main{grid-template-columns:240px 1fr}.editor{grid-column:1/-1;max-height:none;display:block}#joints{grid-template-columns:repeat(3,1fr);max-width:500px}#scene{height:500px}aside{max-height:none}}@media(max-width:650px){header{gap:12px;flex-wrap:wrap}main{display:flex;flex-direction:column}aside,.workspace{width:100%}#scene{height:420px}#preview{max-height:220px;object-fit:contain}}
textarea{display:block;width:100%;margin:12px 0;background:#10151d;color:#dce8f8;border:1px solid #3a4b62;padding:10px}

.phonePair{color:#e4ecf7;background:#182331;border:1px solid #3a4b62;border-radius:16px;text-align:center;max-width:420px;padding:24px}.phonePair::backdrop{background:#05090ed9}.phonePair .qr{background:white;padding:14px;width:248px;margin:20px auto}.phonePair .qr img{display:block}.phonePair .pairStatus{color:#8ee3bf}

.sceneWrap{position:relative}#scene{transform:scaleX(-1)}#cameraFrame{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px dashed #65849b66;pointer-events:none;border-radius:4px}#cameraFrame span{position:absolute;left:8px;top:7px;color:#a8bacb;font-size:10px;background:#182331aa;padding:3px 5px;border-radius:3px}
