:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1c2e47;background:#f4f7fc;font-synthesis:none}*{box-sizing:border-box}body,html{margin:0;min-width:0}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,canvas:focus-visible,input:focus-visible,label:focus-within{outline:3px solid #84b6fa;outline-offset:2px}button:hover:not(:disabled){filter:brightness(.97)}.shell{height:100dvh;min-height:580px;display:flex;flex-direction:column;overflow:hidden}.topbar{height:66px;display:flex;align-items:center;gap:15px;padding:0 22px;background:#fff;border-bottom:1px solid #dce7f3;flex-shrink:0}.brand{display:flex;align-items:center;gap:9px;color:#19324f;text-decoration:none;font-weight:750;letter-spacing:-.5px}.brandmark{display:grid;place-items:center;background:linear-gradient(150deg,#65b8ff,#2979eb);color:#fff;width:33px;height:33px;border-radius:11px;font-size:21px}.topsep{height:27px;width:1px;background:#dbe6f3}.appname{font-size:14px;color:#4e607a;white-space:nowrap}.appname b{color:#182c48}.topspacer{flex:1}.privacy{color:#5d7088;font-size:12px;white-space:nowrap;display:flex;align-items:center;gap:8px}.privacy-dot{width:7px;height:7px;background:#3ac39a;border-radius:50%}.btn{border:1px solid #d7e4f2;background:#fff;padding:11px 16px;border-radius:11px;font-weight:700;color:#284261}.btn.primary{background:#2778ee;color:#fff;border-color:#2778ee;box-shadow:0 4px 12px #2778ee24}.btn.quiet{background:#f5f8fc}.layout{display:grid;grid-template-columns:280px minmax(0,1fr) 290px;grid-template-rows:minmax(0,1fr);min-height:0;height:0;overflow:hidden;flex:1 1 0}.sidebar{background:#fff;min-width:0}.sidebar.left{border-right:1px solid #dce6f1}.sidebar.right{border-left:1px solid #dce6f1}.side-scroll{overflow:auto;padding:23px 21px;height:100%}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:850;color:#5c90d3}.side-scroll h1{font-size:26px;line-height:1.15;letter-spacing:-1.15px;margin:12px 0 8px}.side-scroll h1 span{color:#3382ed}.intro{font-size:12px;line-height:1.7;color:#718199;margin:0 0 23px}.section{margin:0 0 26px}.section.sep{border-top:1px solid #e9eef5;padding-top:19px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.section h2,.section-top h2{font-size:13px;letter-spacing:-.2px;margin:0 0 12px}.counter{font-size:10px;background:#eff4fc;border-radius:7px;color:#7990ab;padding:5px 7px;white-space:nowrap}.filecard{display:flex;align-items:center;gap:11px;padding:14px 10px;border:1.5px dashed #8fbaf3;background:#f3f8ff;border-radius:12px;margin:9px 0;cursor:pointer;min-width:0}.filecard.secondary{background:#fbfdff;border-color:#d0dfef}.filecard:hover{border-color:#247bed;background:#eaf3ff}.fileicon{background:#dfeeff;color:#377ed0;padding:10px 8px;border-radius:9px;font-weight:850;font-size:11px}.filetext{min-width:0;flex:1}.filetext small,.filetext strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filetext strong{font-size:11px;color:#2f4e74}.filetext small{font-size:10px;color:#8393a7;margin-top:4px}.fileplus{font-size:21px;color:#458ce6}.pairactions{display:flex;gap:7px;flex-wrap:wrap}.smallbutton{background:#f5f8fe;color:#4a6481;border:1px solid #dfe8f4;border-radius:8px;padding:7px 9px;font-weight:700;font-size:11px}.mode-list{display:flex;flex-direction:column;gap:6px}.mode{width:100%;background:0 0;border:1px solid transparent;border-radius:11px;display:flex;align-items:center;gap:10px;text-align:left;padding:9px;color:#415978}.mode.active{background:#eaf3ff;border-color:#cee1fa;color:#2875d8}.mode-ico{display:grid;place-items:center;min-width:30px;height:32px;border:1px solid #e3eaf3;border-radius:9px;background:#fff;font-size:19px}.mode b,.mode small{display:block}.mode b{font-size:11px}.mode small{font-size:10px;margin-top:3px;color:#8a9aae}.help-note{background:#f3f8fe;border:1px solid #e4edf9;border-radius:12px;display:flex;align-items:flex-start;gap:9px;padding:12px;color:#4774ae}.help-note p{margin:0;font-size:10px;line-height:1.6}.workspace{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden;background:#edf3fa}.worktop{height:73px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 23px;border-bottom:1px solid #dbe5f1;background:#fff;flex-shrink:0}.worktop strong{font-size:16px;display:block;margin-top:4px;letter-spacing:-.4px}.workactions{display:flex;gap:6px;align-items:center}.iconbtn{display:grid;place-items:center;min-width:31px;height:32px;border:1px solid #dae6f1;background:#fff;border-radius:8px;color:#426080;font-size:18px}.zoomval{font-size:11px;min-width:35px;text-align:center;color:#5a7292}.canvasWrap{position:relative;min-height:150px;height:0;flex:1 1 0;overflow:hidden;display:grid;place-items:center;background-image:linear-gradient(45deg,#e8eff8 25%,transparent 25%),linear-gradient(-45deg,#e8eff8 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e8eff8 75%),linear-gradient(-45deg,transparent 75%,#e8eff8 75%);background-size:28px 28px;background-position:0 0,0 14px,14px -14px,-14px 0;background-color:#f2f6fc;touch-action:none}.canvasWrap canvas{position:absolute;left:50%;top:50%;max-width:none;box-shadow:0 16px 50px #29426925;image-rendering:auto;cursor:crosshair}.empty{text-align:center;max-width:435px;padding:16px 25px;display:flex;flex-direction:column;align-items:center}.empty h2{letter-spacing:-1px;font-size:25px;line-height:1.2;margin:13px 0 9px}.empty p{color:#7185a0;line-height:1.65;font-size:13px}.empty small{font-size:11px;color:#849ab4;margin-top:17px}.emptygraphic{filter:drop-shadow(0 16px 24px #3577bb21)}.canvasbadge{position:absolute;bottom:17px;left:18px;background:#172a43de;color:#fff;font-size:11px;font-weight:650;border-radius:8px;padding:9px 11px}.dragprompt{position:absolute;inset:15px;display:grid;place-items:center;border:2px dashed #478cf1;background:#eaf4ffdb;color:#216bc5;font-size:21px;font-weight:800;border-radius:15px;pointer-events:none}.processing{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f6f9fbea;gap:11px;z-index:4}.canvasbadge[hidden],.dragprompt[hidden],.empty[hidden],.processing[hidden]{display:none}.processing small{color:#8295ae}.spinner{height:36px;width:36px;border:4px solid #d4e6fd;border-top-color:#2078e9;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.workbottom{background:#fff;border-top:1px solid #e0e9f4;min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 15px;color:#7a8ca3;font-size:11px;flex-shrink:0}.pixelreadout{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#375d84}.underbar{background:#fff;border-top:1px solid #e2eaf4;min-height:76px;padding:12px 20px;display:flex;align-items:center;flex-wrap:wrap;gap:13px;flex-shrink:0}.mini-setting{display:flex;flex-direction:column;gap:8px;min-width:145px;flex:1;font-size:11px;font-weight:700;color:#556e8d}.mini-setting span{float:right;color:#317de7}.mini-setting input{width:100%;accent-color:#257ceb}.checkbox-label{font-size:11px;color:#657d9b;display:flex;align-items:center;gap:6px;cursor:pointer}.checkbox-label input{accent-color:#267cef}.statgrid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.stat{background:#f5f8fc;border:1px solid #edf1f7;padding:12px 9px;border-radius:12px;min-width:0}.stat small{display:block;color:#8a9bb0;font-size:10px}.stat b{font-size:13px;margin-top:5px;display:block;overflow-wrap:anywhere}.muted{color:#7e90a6;font-size:11px;line-height:1.6}.right #histCanvas{width:100%;height:135px;display:block;border:1px solid #e6edf7;border-radius:9px;background:#f8fbff}.histlegend{display:flex;gap:12px;font-size:10px;margin-top:9px;color:#7186a0}.histlegend span{display:flex;align-items:center;gap:5px}.histlegend i{display:block;height:6px;width:6px;border-radius:50%}.red{background:#ef7187}.green{background:#52b6a2}.blue{background:#639cf0}.grey{background:#6c7d94}.metadata{display:grid;gap:8px}.meta-row,.metrics .metrow{display:flex;align-items:start;justify-content:space-between;gap:7px;font-size:10px;padding-bottom:8px;border-bottom:1px solid #eef2f8}.meta-row span:first-child,.metrow span:first-child{color:#8497b0}.meta-row span:last-child,.metrow b{color:#34516d;font-weight:700;max-width:62%;text-align:right;overflow-wrap:anywhere}.metricnote{font-size:10px;line-height:1.6;color:#7e90a6}.facts{margin:10px 0}.facts div{display:block;margin-bottom:12px}.facts dt{font-size:10px;color:#8194aa}.facts dd{margin:5px 0 0;font-family:ui-monospace,monospace;font-size:10px;line-height:1.5;color:#3d627f;overflow-wrap:anywhere}.mobileDock{display:none}.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:80;background:#18334f;color:#fff;border-radius:11px;padding:12px 18px;max-width:90vw;font-size:12px;box-shadow:0 12px 34px #23395f44}.toast[hidden]{display:none}dialog{border:1px solid #dce7f5;border-radius:17px;padding:24px;max-width:560px;max-height:85vh;overflow:auto;box-shadow:0 24px 80px #25395a40;color:#37506f;font-size:13px;line-height:1.75}dialog::backdrop{background:#10213980}.modalhead{display:flex;align-items:center;justify-content:space-between}.modalhead h2{margin:0 0 12px;color:#152f4f}@media(max-width:1180px){.layout{grid-template-columns:240px minmax(0,1fr) 265px}.side-scroll{padding:19px 14px}.topbar{gap:10px;padding:0 12px}.privacy{display:none}.underbar{padding:9px 12px}.mini-setting{min-width:108px}}@media(max-width:870px){.layout{grid-template-columns:235px minmax(0,1fr)}.sidebar.right{display:none}.layout.show-insights{grid-template-columns:minmax(0,1fr)}.layout.show-insights .right{display:block;border:0}.layout.show-insights .left,.layout.show-insights .workspace{display:none}.side-scroll{max-width:none}.topbar{height:60px}}@media(max-width:620px){.shell{min-height:0}.layout,.layout.show-insights{display:flex;flex:1;min-height:0}.sidebar.left,.sidebar.right{display:none;width:100%;border:0}.layout.show-insights .right,.layout.show-tools .left{display:block}.layout.show-insights .workspace,.layout.show-tools .workspace{display:none}.workspace{flex:1;min-height:0}.appname,.topsep{display:none}.brand{font-size:14px}.topbar{height:55px;padding:0 12px;gap:7px}.topbar .btn{padding:8px 10px;font-size:11px}.topbar .btn.quiet{display:none}.side-scroll{padding:17px 18px}.side-scroll h1{font-size:24px}.mobileDock{display:flex;background:#fff;border-top:1px solid #dce6f1;height:60px;gap:3px;align-items:center;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom);flex-shrink:0}.mobileDock button{border:0;background:0 0;color:#7c8ea3;font-size:11px;font-weight:800;padding:12px;border-radius:9px}.mobileDock button.selected{background:#eaf3ff;color:#287be8}.worktop{padding:0 10px;height:62px;gap:5px}.worktop strong{font-size:12px}.worktop .eyebrow{font-size:9px}.workactions{gap:2px}.workactions .smallbutton{padding:6px}.iconbtn{min-width:27px;height:28px}.zoomval{min-width:28px}.underbar{gap:9px;padding:9px;min-height:72px}.mini-setting{min-width:108px;font-size:10px}.mini-setting input{height:10px}.workbottom{min-height:42px;font-size:10px;display:block}.pixelreadout{margin-top:3px}.empty h2{font-size:21px}.emptygraphic svg{height:110px}.empty p{font-size:11px}.canvasbadge{bottom:9px;left:9px}.layout.show-insights .right,.layout.show-tools .left{overflow:hidden}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}.regionOverlay{position:absolute;pointer-events:none;z-index:5;border:2px solid #38a8ff;background:rgba(39,155,251,.13);box-shadow:0 0 0 1px rgba(255,255,255,.85),inset 0 0 0 1px rgba(255,255,255,.65)}.regionOverlay[hidden]{display:none}#mainCanvas.regionSelecting{cursor:crosshair!important;touch-action:none}#regionBtn[aria-pressed=true]{background:#dcefff;color:#1265b9;border-color:#7cbbf2}.alignment-status{font-size:10px;color:#57718e;font-weight:650;align-self:center;white-space:normal;max-width:150px}#alignBtn,#resetAlign{flex-shrink:0}.canvasWrap:focus-visible,button:focus-visible{outline:3px solid #3c91f5;outline-offset:2px}@media(max-width:620px){.workactions{flex-wrap:wrap;justify-content:flex-end}.worktop{min-height:84px;height:auto;padding:8px 10px}.workactions .smallbutton{font-size:10px;min-height:28px}.alignment-status{max-width:100px}}