.face-studio{margin:30px 0;padding:26px;border:1px solid #4a396d;border-radius:24px;background:linear-gradient(140deg,#1c152c,#100f1c);color:#ede6ff}
.journey .face-studio{margin:20px 0 0}
.face-mode-shortcut{width:100%;flex-basis:100%;background:linear-gradient(95deg,#56318b,#302046)!important;border:1px solid #a87bed!important;color:#f7eaff!important;font-weight:700!important}
.face-focus{box-shadow:0 0 0 3px #a57af8,0 0 45px #8556db44;transition:box-shadow .35s}
.face-studio h2{margin:8px 0 8px;font-size:clamp(22px,3vw,32px)}
.face-studio p{color:#b5a9cb;line-height:1.6}
.face-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:20px}
.face-panel{background:#211a30;border:1px solid #49395e;padding:19px;border-radius:18px;min-width:0}
.face-panel h3{font-size:17px;margin:0 0 12px}
.face-panel label{display:block;font-size:13px;color:#dac9f3;margin:12px 0 6px}
.face-panel input[type=file]{width:100%;color:#ddd0f4;background:#150f24;padding:12px;border:1px dashed #785da0;border-radius:10px}
.face-preview{position:relative;overflow:hidden;background:#0b0914;border-radius:12px;margin:12px 0;min-height:120px}
.face-preview video{width:100%;max-height:330px;display:block}
.face-detect-canvas{display:none;width:100%;border-radius:12px;margin-top:10px}
.face-candidates{display:grid;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:10px;margin:12px 0}
.face-candidate{display:flex;flex-direction:column;gap:5px;padding:5px;color:#eee;border:1px solid #4d4261;background:#171124;border-radius:10px;cursor:pointer}
.face-candidate img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px}
.face-candidate.active{outline:2px solid #ac81ff}
.face-studio button.face-run,.face-studio button.face-detect{background:linear-gradient(90deg,#a878fa,#744ce4);color:white;border:0;border-radius:11px;padding:13px 15px;font-weight:700;cursor:pointer}
.face-studio button:disabled{opacity:.5;cursor:not-allowed}
.face-status{white-space:pre-line;margin-top:13px;padding:12px;background:#130f20;border:1px solid #514068;border-radius:11px;font-size:13px;line-height:1.5}
.face-result video{width:100%;border-radius:12px;margin:14px 0}
.face-result a{color:#dfbeff}
@media(max-width:740px){.face-grid{grid-template-columns:1fr}.face-studio{padding:18px}}
