:root{color:#2c4337;font-synthesis:none;background:#f6f5ef;font:13px system-ui,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}#player{flex-direction:column;gap:6px;width:100%;min-width:280px;max-width:800px;height:100dvh;max-height:720px;margin:auto;padding:12px 16px;display:flex}header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;display:flex}h1{letter-spacing:-.4px;margin:0;font-size:18px;font-weight:500;line-height:1.2}#backend{color:#537d60;white-space:nowrap;border:1px solid #d3dfcc;border-radius:5px;padding:4px 5px;font:9px ui-monospace,monospace}.controls{flex-shrink:0;align-items:center;gap:6px;margin:0;display:flex}.controls label{flex:1;min-width:0}button,select,input{font:inherit;color:#3b5d45;background:#fffefa;border:1px solid #d6dfd0;border-radius:6px;min-height:32px;padding:7px 6px}select,input{width:100%;min-width:0;font-size:11px}button{cursor:pointer;white-space:nowrap;font-size:11px}button.primary{color:#fff;background:#32664d;border-color:#32664d;min-width:93px}button:disabled{opacity:.6;cursor:default}button:hover:not(:disabled){filter:brightness(.95)}:focus-visible{outline-offset:2px;outline:2px solid #2b7d59}.training-view{scrollbar-width:thin;flex-direction:column;flex:1;gap:5px;min-height:0;display:flex;overflow:auto}.metrics{color:#738373;flex-shrink:0;justify-content:space-between;gap:8px;font:10px ui-monospace,monospace;display:flex}.metrics b{color:#31573f;font-weight:500}#curve{flex-shrink:0;width:100%;height:76px;display:block}.comparison{flex:1;grid-template-columns:1fr 1fr;gap:8px;min-height:100px;display:grid}article{background:#fffefa;border:1px solid #e1e5d8;border-radius:8px;flex-direction:column;min-width:0;min-height:0;padding:8px;display:flex}.after{background:#edf3e5;border-color:#d3e0c8}h2{flex-shrink:0;min-height:30px;margin:0;font-size:12px;font-weight:600;line-height:1.25}h2 small{color:#7b9072;margin-top:3px;font:8px ui-monospace,monospace;display:block}pre{white-space:pre-wrap;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:#c4d0be transparent;color:#3d533d;flex:1;min-height:0;margin:5px 0 0;font:12px/1.45 ui-monospace,monospace;overflow:auto}#before{color:#81907c}#status{color:#6d7d69;flex-shrink:0;margin:0;font-size:9px;line-height:1.3}#error{color:#982f23;background:#fff0e8;border-radius:6px;max-height:60px;margin:0;padding:6px;font-size:11px;overflow:auto}footer{color:#7c8874;border-top:1px solid #dfe4d7;flex-shrink:0;justify-content:space-between;gap:8px;padding-top:5px;font-size:8px;display:flex}a{color:#32664d;white-space:nowrap;text-underline-offset:3px}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}#settings{border-top:1px solid #dfe4d7;border-bottom:1px solid #dfe4d7;flex-shrink:0;min-height:0}#settings summary{cursor:pointer;color:#32664d;white-space:nowrap;padding:4px 0;font-size:10px}#model-summary{float:right;color:#6d7d69;padding-top:1px;font:9px ui-monospace,monospace}#settings[open]{scrollbar-width:thin;flex-direction:column;flex:1;display:flex;overflow:auto}#settings[open]+.training-view{display:none}.settings-body{padding:4px 2px 10px;font-size:11px;line-height:1.45}.settings-body p{margin:5px 0 9px}.settings-body label{margin-bottom:4px;font-weight:600;display:block}h3{margin:12px 0 6px;font-size:12px}.hyperparameters{grid-template-columns:1fr 1fr;gap:6px 12px;display:grid}.hyperparameters input,.hyperparameters select{margin-top:3px;font-weight:400;display:block}#dataset-preview{resize:vertical;color:#3d533d;background:#fffefa;border:1px solid #d6dfd0;border-radius:6px;width:100%;height:140px;min-height:60px;padding:8px;font:11px/1.5 ui-monospace,monospace;display:block}.settings-note{color:#6d7d69}#inference{background:#f1f4eb;border:1px solid #d3dfcc;border-radius:7px;flex-shrink:0;padding:6px 8px}#infer-form{align-items:center;gap:8px;display:flex}#infer-form label{white-space:nowrap;font-size:10px;font-weight:600}.infer-controls{flex:1;gap:5px;min-width:0;display:flex}#infer-prefix{flex:1;font:11px ui-monospace,monospace}#infer-run{color:#fff;background:#32664d;border-color:#32664d;min-width:82px}#infer-note{color:#6d7d69;margin:4px 0 0;font-size:9px;line-height:1.25}#infer-output{border-top:1px solid #d3dfcc;flex:none;height:64px;padding-top:5px}@media (width<=450px){#player{gap:5px;padding:8px 10px}h1{font-size:15px}#backend{font-size:8px}.controls{gap:4px}.controls .primary{min-width:77px}button,select,input{padding-left:4px;padding-right:4px;font-size:10px}#reset{min-width:26px}.comparison{gap:6px}article{padding:6px}h2{min-height:36px;font-size:10px}pre{font-size:11px}#settings summary{font-size:9px}#model-summary{font-size:8px}#infer-form label{font-size:9px}#infer-run{min-width:72px}}@media (height<=480px){#player{gap:5px;padding-top:8px;padding-bottom:8px}#curve{height:60px}#infer-output{height:45px}#infer-note{font-size:8px}#inference{padding:5px 7px}}@media (height<=350px){#player{gap:4px}#curve{height:48px}#status{display:none}.comparison{min-height:96px}#infer-form{gap:4px}#infer-form label{display:none}#infer-note{margin-top:3px}footer{font-size:7px}}@media (prefers-reduced-motion:no-preference){button{transition:filter .15s}}@media (height<=480px){#inference:has(#infer-output:not([hidden])){grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:4px 8px;display:grid}#inference:has(#infer-output:not([hidden])) #infer-form{flex-direction:column;grid-area:1/1;justify-content:center;align-items:stretch;gap:4px}#inference:has(#infer-output:not([hidden])) .infer-controls{flex:none}#inference:has(#infer-output:not([hidden])) #infer-note{grid-area:2/1/auto/-1;margin:0}#inference:has(#infer-output:not([hidden])) #infer-output{border-top:0;border-left:1px solid #d3dfcc;grid-area:1/2;height:50px;margin:0;padding:0 0 0 8px;font-size:11px}#player:has(#infer-output:not([hidden])) #curve{height:50px}#player,.training-view{gap:4px}}#expand-dialog{color:#2c4337;background:#f6f5ef;border:1px solid #d3dfcc;border-radius:10px;width:min(440px,100vw - 24px);max-height:calc(100dvh - 24px);padding:18px;font-size:12px;line-height:1.5;overflow:auto;box-shadow:0 8px 32px #20322533}#expand-dialog::backdrop{background:#20322555}#expand-dialog h2{min-height:0;font-size:17px}#expand-dialog label{font-size:11px}#space-url{margin:5px 0 12px;font-size:11px}.expand-actions{gap:8px;display:flex}#copy-space{color:#fff;background:#32664d}#copy-status{margin:10px 0 0;font-size:11px}
