:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18202a;background:#eef1f5;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}.appShell{min-height:100vh;padding:24px}.workspace{width:min(1440px,100%);margin:0 auto}.topBar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0 24px}.topBar h1{margin:0;font-size:32px;line-height:1.1;font-weight:760}.topBar p,.galleryHeader p,.emptyCopy{margin:6px 0 0;color:#5d6878}.topActions,.scanActions,.cardActions{display:flex;align-items:center;gap:10px}.contentGrid{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:18px;align-items:start}.controlPanel,.resultsPanel{background:#fff;border:1px solid #dce2ea;border-radius:8px;box-shadow:0 18px 45px #1e2c4114}.controlPanel{position:sticky;top:20px;overflow:hidden}.panelBlock{padding:18px;border-bottom:1px solid #e7ebf1}.panelBlock h2,.galleryHeader h2{margin:0 0 14px;font-size:15px;line-height:1.2;text-transform:uppercase;letter-spacing:0;color:#273241}.videoSummary{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start;margin-top:14px}.videoPreview{display:block;width:100%;aspect-ratio:16 / 9;border-radius:8px;background:#101722}.videoPreview.isEmpty{display:none}.videoSummary strong{display:block;max-width:100%;overflow-wrap:anywhere;line-height:1.25}.videoSummary span{display:block;margin-top:5px;color:#5d6878;font-size:13px}.button,.iconButton{border:1px solid transparent;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;transition:background .14s ease,border-color .14s ease,transform .14s ease}.button{padding:0 14px;font-weight:680}.button input[type=file]{display:none}.button.primary{color:#fff;background:#176b58}.button.secondary{color:#283342;background:#f5f7fa;border-color:#d6dde7}.button.danger{color:#fff;background:#b83232}.button:hover:not(:disabled),.iconButton:hover:not(:disabled){transform:translateY(-1px)}.iconButton{width:40px;height:40px;color:#2f3a49;background:#f7f9fc;border-color:#d7dde6}.numberControl,.selectControl,.checkboxControl{display:grid;gap:8px;margin-top:14px}.numberControl span,.selectControl span{display:flex;justify-content:space-between;gap:12px;color:#3e4958;font-size:13px;font-weight:650}.numberControl strong{color:#176b58}.numberControl input[type=range]{width:100%;accent-color:#176b58}.selectControl select{width:100%;height:38px;border:1px solid #d6dde7;border-radius:8px;background:#fff;color:#273241;padding:0 10px}.checkboxControl{grid-template-columns:18px 1fr;align-items:center;color:#3e4958;font-size:14px}.checkboxControl input{width:16px;height:16px;accent-color:#176b58}.scanActions{padding:18px;align-items:stretch}.scanActions .button{flex:1 1 0;min-width:0}.resultsPanel{min-height:640px;padding:18px}.progressWrap{padding:16px;border:1px solid #e0e6ee;border-radius:8px;background:#f8fafc}.progressHeader{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:#3e4958}.progressTrack{height:10px;margin-top:12px;border-radius:999px;background:#dfe5ec;overflow:hidden}.progressBar{height:100%;border-radius:inherit;background:#176b58;transition:width .16s ease}.toast{margin-top:14px;padding:12px 14px;border-radius:8px;font-size:14px}.toast.info{color:#19483f;background:#e8f5ef;border:1px solid #b8ddcf}.toast.error{color:#7a2222;background:#fff0ef;border:1px solid #f1c2bd}.galleryHeader{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:22px 0 14px}.galleryHeader h2{margin-bottom:4px}.emptyState{display:grid;place-items:center;align-content:center;min-height:430px;border:1px dashed #cbd4df;border-radius:8px;color:#6a7480;text-align:center;padding:30px}.galleryGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:14px}.candidateCard{overflow:hidden;border:1px solid #dfe5ec;border-radius:8px;background:#fff}.candidateCard img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;background:#e7ecf2}.candidateMeta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px}.candidateMeta strong,.candidateMeta span{display:block}.candidateMeta strong{font-size:14px}.candidateMeta span{margin-top:3px;color:#667180;font-size:12px}.candidateMeta .iconButton{width:34px;height:34px;min-height:34px}@media(max-width:920px){.appShell{padding:16px}.topBar,.contentGrid{display:grid;grid-template-columns:1fr}.controlPanel{position:static}}@media(max-width:560px){.topActions,.scanActions{display:grid;grid-template-columns:1fr auto;width:100%}.topActions .button{justify-content:center}.topBar h1{font-size:26px}.candidateMeta{align-items:flex-start;flex-direction:column}.cardActions{width:100%;justify-content:space-between}}
