:root{color-scheme:light;--text:#172840;--muted:#65748c;--line:#e0e8f4;--brand:#327df1;--blue:#2374e7;--soft:#eef5ff;--bg:#f6f9fd;--shadow:0 12px 48px rgba(42,71,120,.055)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.55 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}a:hover{color:var(--brand)}:focus-visible{outline:3px solid #f5a85e!important;outline-offset:3px}.skip{position:absolute;left:12px;top:-70px;padding:10px;background:#fff;z-index:20}.skip:focus{top:8px}.shell{max-width:1500px;margin:auto;padding:0 28px}.site-header{background:#fff;border-bottom:1px solid var(--line)}.nav-inner{height:68px;display:flex;align-items:center;gap:38px}.brand{display:flex;align-items:center;gap:9px;font-size:19px;font-weight:750;letter-spacing:-.8px}.brand strong{color:#337ef1}.brand-mark{width:32px;height:32px;display:grid;place-items:center;background:#eaf3ff;border:1px solid #d0e2fb;color:#2780f5;border-radius:10px;font-size:22px;font-weight:900}.site-header nav{display:flex;gap:24px;color:#63748d;font-size:13px}.privacy-chip{margin-left:auto;border:1px solid #d9e8fa;border-radius:30px;padding:6px 12px;color:#5d779a;background:#f6faff;font-size:12px;font-weight:600}.online-dot{display:inline-block;width:7px;height:7px;background:#45be96;border-radius:50%;margin-right:6px}.intro{min-height:229px;padding:36px 0 32px;display:flex;justify-content:space-between;align-items:center;gap:40px}.intro h1{font-size:clamp(29px,3.3vw,46px);letter-spacing:-1.8px;line-height:1.18;margin:9px 0 12px}.intro h1 em{font-style:normal;color:#2878e9}.intro p{color:var(--muted);font-size:15px;max-width:700px;margin:0}.eyebrow,.overline{font-size:10.5px;font-weight:850;letter-spacing:1.35px;color:#4775b8}.eyebrow span{color:#adb9ca}.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.chips span{font-size:12px;color:#58749d;background:#edf4fd;padding:5px 11px;border:1px solid #dae8fb;border-radius:18px;font-weight:600}.hero-decoration{width:330px;flex-shrink:0;position:relative;border-radius:22px;border:1px solid #dce8f8;background:linear-gradient(145deg,#fdfefe,#eaf3ff);padding:12px;box-shadow:var(--shadow)}.hero-decoration svg{width:100%;height:138px}.art-caption{text-align:center;font-size:10px;color:#7192bd;font-weight:700;letter-spacing:.5px}.studio{border:1px solid #dde7f5;border-radius:19px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.studio-top{display:flex;justify-content:space-between;align-items:center;padding:21px 23px;gap:14px}.studio-top h2{margin:4px 0 0;font-size:18px;letter-spacing:-.4px}.studio-top h2 span{display:inline-block;font-weight:500;letter-spacing:0;font-size:11px;color:#6a819e;margin-left:6px}.local-label{color:#199b73;background:#eafaf4;border-radius:5px;padding:3px 5px;margin-left:8px;letter-spacing:.6px}.export-row,.inline-buttons,.top-actions,.training-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{border:1px solid #d9e3f3;background:#fff;color:#3b577b;padding:8px 12px;border-radius:10px;min-height:36px;font-size:12px;font-weight:750;white-space:nowrap;transition:.12s box-shadow,.12s background}.btn:hover:not(:disabled){background:#eaf3ff;border-color:#bbd5fa}.btn.primary{background:#2a78e9;color:#fff;border-color:#2775e7;box-shadow:0 3px 8px rgba(38,111,230,.14)}.btn.primary:hover:not(:disabled){background:#1767d8}.btn.strong{padding:10px 18px}.btn.soft{background:#f6f9fe}.btn.danger{color:#bd3747;background:#fff2f2;border-color:#f7d4d5}.recovery{margin:0 20px 16px;padding:14px;border:1px solid #f1c7ca;background:#fff7f7;border-radius:12px;display:flex;align-items:center;gap:12px}.recovery[hidden]{display:none}.recovery p{margin:3px 0 0;color:#826473}.recovery div{margin-right:auto}.toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;background:#f7faff;border-block:1px solid var(--line);padding:12px 22px}.small-field{display:flex;gap:7px;align-items:center;color:#607997;font-size:12px}.small-field input{width:77px;height:36px}.training-status{display:flex;align-items:center;gap:9px;color:#607692;font-size:12px;flex-wrap:wrap}.status-dot{width:9px;height:9px;border-radius:50%;background:#a7b9cf}.status-dot.running{background:#2fbe89;box-shadow:0 0 0 4px #dff9ef}.epoch-pill{border:1px solid #d9e5f5;border-radius:9px;padding:6px 9px;color:#456d9d;background:#fff}.lab-layout{display:grid;grid-template-columns:minmax(240px,278px) minmax(380px,1fr) minmax(270px,325px);gap:14px;padding:16px;align-items:start}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;min-width:0}.controls{padding:18px}.section-kicker{font-weight:850;font-size:10px;letter-spacing:1px;color:#387add}.controls h3,.export-panel h3,.panel-heading h3{font-size:17px;letter-spacing:-.4px;margin:5px 0}.muted{color:var(--muted);font-size:12px;margin:6px 0 11px}.control-group{border-top:1px solid #e8eef6;padding-top:12px;margin-top:13px}.control-group summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:13px;font-weight:800;margin-bottom:13px;list-style:none}.control-group summary::-webkit-details-marker{display:none}.control-group summary span{font-size:10px;font-weight:700;color:#7f9cbd}.controls label{display:block;font-size:11.5px;color:#576d89;font-weight:700;margin:11px 0 5px}.controls input:not([type=range]),.controls select,.small-field input{display:block;border:1px solid #d9e4f3;border-radius:9px;padding:8px 9px;background:#fcfdff;color:#2e4662;max-width:100%;min-width:0;width:100%;min-height:36px}.controls input[type=range]{width:100%;accent-color:#2b79e9;height:18px}.controls .range-label{display:flex;justify-content:space-between}.range-label output{color:#286ce0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:9px}.inline-buttons{margin:10px 0 4px}.hint{color:#77879e;font-size:11px;margin:8px 0 4px}.layer-editor{display:grid;gap:7px}.layer-row{display:flex;align-items:center;gap:8px;justify-content:space-between;border:1px solid #e5edf8;border-radius:10px;padding:5px 9px;background:#fafdff}.layer-row label{margin:0!important;color:#506c90;flex:1}.layer-row input{width:64px!important}.guide-tip{border-radius:10px;background:#f2f7ff;padding:10px;margin-top:14px;color:#5a769a;font-size:11px}.guide-tip strong{color:#326bba}.guide-tip p{margin:4px 0 0}.plot-panel{padding:16px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.panel-heading h3{font-size:17px;margin:2px 0}.legend,.mini-legend{display:flex;gap:9px;color:#7f8ca0;font-size:10px;font-weight:650}.legend>span{display:inline-flex;gap:5px;align-items:center}.legend-point{height:9px;width:9px;border-radius:50%;display:inline-block}.legend-point.blue{background:#2773de}.legend-point.coral{background:#f18a60}.plot-frame{border:1px solid #edf1f7;border-radius:13px;overflow:hidden;background:#fff}.plot-frame canvas{display:block;width:100%;height:auto;max-height:540px;object-fit:contain;cursor:crosshair}.plot-bottom{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:9px 0;color:#697b94;font-size:11px}.plot-bottom label{display:flex;align-items:center;gap:5px;white-space:nowrap}.plot-bottom input{accent-color:#2a77e7}.text-button{margin-left:auto;border:0;background:0 0;color:#2d73d6;font-weight:800;font-size:12px}.probe{font-size:12px;background:#f2f7ff;border:1px solid #e1edfc;border-radius:9px;color:#55779e;padding:9px 11px;min-height:37px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:13px;gap:8px}.metrics>div{border:1px solid #e6ecf6;background:#fcfdff;border-radius:10px;padding:9px 7px}.metrics small{display:block;font-size:10px;color:#73849b}.metrics strong{display:block;font-size:17px;font-weight:790;letter-spacing:-.3px;color:#2b537f;margin-top:2px}.right-stack{display:grid;gap:14px}.export-panel,.loss-panel,.network-panel{padding:16px}.sub-pill{font-size:10px;font-weight:700;color:#6f88a9;border:1px solid #e3ecf8;border-radius:12px;padding:4px 6px}.network-map{border:1px solid #ecf1f8;background:linear-gradient(145deg,#fcfeff,#f6faff);border-radius:12px;padding:4px;max-height:245px;min-height:175px;overflow:hidden}.network-map svg{display:block;width:100%;height:230px}.loss-panel canvas{width:100%;height:auto;display:block;background:#fcfdff;border:1px solid #ecf1f8;border-radius:10px}.loss-note{color:#8898ac;font-size:10.5px;margin-top:8px}.mini-legend{white-space:nowrap;color:#2b76e7}.mini-legend span{color:#ee9466}.export-row{margin-top:10px}.export-row .btn{flex:1}.studio-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fafcff;border-top:1px solid var(--line);padding:12px 20px;font-size:11px;color:#7b8da5}.guide{padding:50px 0 45px}.guide-title{max-width:660px}.guide-title h2{font-size:28px;letter-spacing:-.9px;margin:8px 0}.guide-title p{color:#6f8199}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:21px}.guide-grid article{background:#fff;border:1px solid #e1e9f5;border-radius:14px;padding:20px}.guide-grid article>span{font-weight:800;color:#3078e5;font-size:11px}.guide-grid h3{margin:9px 0 5px}.guide-grid p{color:#6d7f98;font-size:12px;margin:0}.disclaimer{font-size:11px;line-height:1.75;color:#8290a5;margin-top:22px}.footer{border-top:1px solid #e6edf6;background:#fff;padding:16px 0;color:#78869c;font-size:11px}.footer .shell{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.toast{position:fixed;bottom:24px;right:24px;background:#183c63;color:#fff;border-radius:11px;box-shadow:0 12px 40px #24465a38;padding:12px 17px;font-size:12px;z-index:30;pointer-events:none;max-width:340px}.toast[hidden]{display:none}code{background:#edf3fb;padding:2px 4px;border-radius:4px}@media(max-width:1220px){.lab-layout{grid-template-columns:minmax(235px,280px) minmax(360px,1fr)}.right-stack{grid-column:1/-1;grid-template-columns:1fr 1fr}.export-panel{grid-column:1/-1}.network-map svg{height:210px}.network-map{max-height:230px}.hero-decoration{width:270px}}@media(max-width:790px){.shell{padding:0 15px}.intro{padding:28px 0;min-height:auto}.hero-decoration{display:none}.studio-top{padding:16px;align-items:flex-start;flex-direction:column}.toolbar{padding:12px}.lab-layout{grid-template-columns:minmax(0,1fr);padding:10px}.right-stack{grid-column:1;grid-template-columns:1fr}.export-panel{grid-column:auto}.controls{display:block}.plot-panel{grid-row:2}.studio-foot{flex-wrap:wrap}.guide-grid{grid-template-columns:1fr}.guide{padding:37px 0}.intro h1{letter-spacing:-1px}.privacy-chip{display:none}.nav-inner{gap:18px}.site-header nav{margin-left:auto}.recovery{flex-wrap:wrap}.recovery div{width:100%}}@media(max-width:400px){.shell{padding:0 10px}.studio-top h2{font-size:16px}.intro h1{font-size:31px}.metrics{grid-template-columns:repeat(2,1fr)}.plot-panel{padding:10px}.panel-heading{align-items:start}.legend{flex-direction:column;gap:2px}.training-actions{gap:6px}.toolbar .btn{padding:8px 10px}.guide-title h2{font-size:24px}}@media(prefers-reduced-motion:reduce){*,::after,::before{transition-duration:0!important;scroll-behavior:auto!important}}.threshold-tool{border:1px solid #dce8fa;background:#f9fbff;border-radius:12px;margin-top:12px;padding:12px}.threshold-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;font-weight:700;color:#46688f}.threshold-tool input[type=range]{width:100%;accent-color:#2777e7;margin:10px 0 2px}.threshold-head .text-button{margin:0}.threshold-tool .hint{margin:4px 0 10px}.confusion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.confusion-grid>div{border:1px solid #e2eaf6;background:#fff;border-radius:8px;padding:7px;min-width:0}.confusion-grid small{font-size:10px;color:#647a99;display:block}.confusion-grid strong{font-size:15px;color:#285f9e}.evaluation-summary{font-size:11.5px;color:#456787;margin-top:9px}.evaluation-summary strong{color:#1e507d}@media(max-width:400px){.confusion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}[hidden]{display:none!important}.train-meter{display:flex;align-items:center;gap:10px;margin:5px 0 0;max-width:520px;padding-left:4px;color:#547291;font-size:12px;font-weight:600;flex-wrap:wrap}.train-meter progress{width:min(220px,100%);height:9px;accent-color:#2678e9;border:0;border-radius:20px;overflow:hidden;background:#dce8f6}.train-meter progress::-webkit-progress-bar{background:#dce8f6;border-radius:20px}.train-meter progress::-webkit-progress-value{background:#2678e9;border-radius:20px}.nn-startup-alert{position:fixed;z-index:99999;top:15px;left:50%;transform:translateX(-50%);width:min(540px,calc(100% - 24px));padding:16px 20px;border-radius:14px;border:1px solid #efb5b5;box-shadow:0 10px 35px #1c355333;background:#fff9f9;color:#812e39;font:14px/1.5 system-ui}.nn-startup-alert p{margin:6px 0 10px}.nn-startup-alert button{font:inherit;font-weight:700;background:#a23d4c;color:#fff;border:0;border-radius:8px;padding:9px 15px;cursor:pointer}@media(max-width:450px){.train-meter{width:100%;padding-left:0}.train-meter progress{flex:1;min-width:110px}.training-actions #stop{min-width:68px}}