:root{--strip: #25a59a;--accent: #009588;--accent-ink: #00796b;--accent-ink-hover: #00695c;--panel: #fff;--head: #f2f2f2;--head-hover: #e8e8e8;--border: #dadada;--check: #b4b4b4;--btn2: #e0e0e0;--btn2-hover: #d2d2d2;--scroll: #bebebe;--err: #e89093;--pressed: #e0f2f1;--pressed-hover: #cfe8e5;--text-title: #363636;--text: #313131;--text-muted: #6f6f6f;--text-on-head: #636363;--placeholder: #767676;--locked: #8a8a8a;--attn-bg: #fff4e0;--attn-ink: #5a3600;--attn-icon: #b26a00;--stop-bg: #fdecea;--stop-ink: #5c1410;--stop-icon: #b3261e;--stop-line: #f1b4ae}html,body{margin:0;height:100%;overflow:hidden;background:#2a2f36;font:13px system-ui,sans-serif}#map{position:absolute;top:0;right:0;bottom:0;left:0}::selection{background:#b2dfdb;color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#panel{--z: 1;zoom:var(--z);position:absolute;top:12px;left:12px;width:340px;box-sizing:border-box;max-height:calc((100vh - 24px) / var(--z));display:flex;flex-direction:column;color:var(--text);border-radius:2px;overflow:hidden;background:linear-gradient(to right,var(--strip) 36px,var(--panel) 36px)}.panel-head{flex:none;display:flex;align-items:center;gap:6px;padding:8px 6px 6px 46px}#panel h1{flex:1;margin:0;font-size:15px;font-weight:600;color:var(--text-title)}#panel-fields{display:contents}#steps{flex:1 1 auto;min-height:0;overflow-y:auto;padding:2px 10px 10px 46px;display:flex;flex-direction:column;gap:6px;scrollbar-width:thin;scrollbar-color:var(--scroll) transparent}#steps::-webkit-scrollbar{width:6px}#steps::-webkit-scrollbar-thumb{background:var(--scroll);border-radius:3px}#foot{flex:none;margin-left:36px;padding:8px 10px 10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}#panel.collapsed{width:auto}#panel.collapsed #panel-fields{display:none}#collapse{display:flex;padding:4px;background:none;color:var(--text-muted)}#collapse:hover{background:var(--head);color:var(--text-title)}#collapse .i{width:16px;height:16px;transition:transform .15s}#panel.collapsed #collapse .i{transform:rotate(180deg)}.panel-head{flex-wrap:wrap}#quality{order:1;flex:1 0 100%;display:flex;align-items:center;gap:6px;padding-right:4px;font-size:12px;white-space:nowrap;color:var(--text-muted)}#quality select{margin-left:auto;padding:4px 2px;border:1px solid var(--border);border-radius:2px;background:var(--panel);color:var(--text);font:inherit;cursor:pointer;field-sizing:content}#panel.collapsed #quality{display:none}.step{position:relative}.step h2{margin:0;font:inherit}.step-head{width:100%;display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:0;background:var(--head);color:var(--text-title);font-weight:600;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none}.step-head:hover:not(:disabled){background:var(--head-hover)}.step-head:before,#panel summary:before{content:"";width:6px;height:6px;border:solid var(--accent);border-width:0 2px 2px 0;transform:rotate(-45deg);margin:0 3px 0 1px;flex:none;transition:transform .15s}.step.open .step-head:before,#panel details[open]>summary:before{transform:rotate(45deg);margin-top:-3px}.step .num{position:absolute;left:-32px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;color:var(--accent);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.step.done .num{background:var(--accent);color:#fff;box-shadow:0 0 0 2px #fff}.step .num .i{width:14px;height:14px;stroke-width:3}.step .summary{margin-left:auto;min-width:0;font-weight:400;font-size:12px;color:var(--text-on-head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step.open .summary,.step:not(.done) .summary{display:none}#panel .step-head:disabled{opacity:1;cursor:default}.step.locked .step-head{color:var(--locked)}.step.locked .step-head:before{border-color:var(--locked)}.step.locked .num{opacity:.6}.hint{display:none;padding:4px 2px 0;font-size:12px;color:var(--text-muted)}.step-body{display:none;flex-direction:column;gap:8px;padding:8px 2px 4px}.step.open .hint{display:block}.step.open .step-body{display:flex}#panel summary{list-style:none;display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--head);color:var(--text-title);font-weight:600;cursor:pointer}#panel summary:hover{background:var(--head-hover)}#panel summary::-webkit-details-marker{display:none}#model-editor[hidden]{display:none}#model-title{font-weight:400;color:var(--text-on-head);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-body{display:flex;flex-direction:column;gap:8px;padding:8px 0 2px 8px;border-left:2px solid var(--head)}.fields{display:flex;flex-direction:column;gap:6px;padding:6px 4px 2px}#panel input:not([type]),#panel input[type=number]{box-sizing:border-box;width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:2px;background:var(--panel);color:var(--text);font:inherit}#panel input::placeholder{color:var(--placeholder);opacity:1}.field-label{margin-bottom:-4px;font-size:12px;color:var(--text-muted)}#panel input:focus{border-color:var(--accent)}#panel input:invalid{border-color:var(--err)}#panel .group{display:flex;flex-wrap:wrap;gap:6px;align-items:center}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}#panel input:not([type]):focus-visible,#panel input[type=number]:focus-visible{outline-offset:0}#map{isolation:isolate}#map:has(canvas:focus-visible):after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 6px #000}button{padding:6px 12px;border:0;border-radius:2px;background:var(--btn2);color:var(--text);font:inherit;cursor:pointer}button:hover:not(:disabled){background:var(--btn2-hover)}#panel .primary{background:var(--accent-ink);color:#fff}#panel .primary:hover:not(:disabled){background:var(--accent-ink-hover)}button:disabled:not(.loading){opacity:.5;cursor:default}#panel-fields:disabled .step-head{pointer-events:none}button.loading:before{content:"";display:inline-block;box-sizing:border-box;width:12px;height:12px;margin-right:6px;vertical-align:-1px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.i{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:58px;padding:8px 4px;font-size:12px;line-height:1.2;text-align:center}.tile .i{width:18px;height:18px}.tile[aria-pressed=true]{background:var(--pressed);box-shadow:inset 0 0 0 2px var(--accent-ink);color:var(--accent-ink-hover)}.tile[aria-pressed=true]:hover:not(:disabled){background:var(--pressed-hover)}.tile.loading .i{display:none}.tile.loading:before{margin:0}#status{max-height:9.5em;line-height:1.35;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-muted);scrollbar-width:thin;scrollbar-color:var(--scroll) transparent}#status.more{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 1.6em),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 1.6em),transparent)}#status:empty{display:none}#status.error{padding:5px 8px;border-radius:2px;background:var(--stop-bg);color:var(--stop-ink)}.actions{display:flex;gap:6px;justify-content:flex-end;align-items:center}.actions[hidden]{display:none}#clear{margin-right:auto}.check{display:flex;align-items:center;gap:6px;cursor:pointer}.check input{-moz-appearance:none;appearance:none;-webkit-appearance:none;margin:0;width:14px;height:14px;border:1px solid var(--check);border-radius:2px;background:var(--panel);cursor:pointer}.check input[type=radio]{border-radius:50%}.check input:checked{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--panel)}.check input:disabled{cursor:default}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.list li{display:flex;align-items:center;gap:6px;padding:4px 6px;border:1px solid var(--border);border-radius:2px;cursor:pointer}.list li:hover{border-color:var(--check)}.list li.selected{border-color:var(--accent)}.list li:focus-visible{outline-offset:1px}.list .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list li.two{flex-wrap:wrap}.list li.two .name,.list li.two .state{flex-basis:100%}.list li.two .edit{margin-left:auto}.list li.two .state+.remove{margin-left:auto}#contour-list li.two .name{flex-basis:0}#contour-list li.two .state{order:1}#contour-list li.two .warn{order:2}.list .state{font-size:11px;color:var(--text-muted)}#recent-box:not([hidden]){display:flex;flex-direction:column;gap:4px}#recent li.two .name{flex-basis:0;white-space:normal}#recent button.name{padding:0;background:none;color:inherit;font:inherit;text-align:left}#recent li .link{flex-basis:100%;min-width:0;font:11px monospace;color:var(--text-muted);cursor:text}#recent .part,#status .part,#pubroots .part{display:inline-block;max-width:100%;overflow-wrap:anywhere}#recent li .rname{flex:1;min-width:0;padding:2px 4px;border:1px solid var(--accent);border-radius:2px;font:inherit}.list li.warned{flex-wrap:wrap}.list .warn{flex-basis:100%;display:flex;flex-direction:column;gap:4px}.list .warn:empty{display:none}.chip{display:flex;gap:6px;align-items:flex-start;padding:4px 6px;border-radius:2px;font-size:12px;white-space:pre-wrap;cursor:default}.chip .i{margin-top:1px}.chip.attn{background:var(--attn-bg);color:var(--attn-ink)}.chip.attn .i{color:var(--attn-icon)}.chip.stop{background:var(--stop-bg);color:var(--stop-ink);box-shadow:inset 0 0 0 1px var(--stop-line);font-weight:600}.chip.stop .i{color:var(--stop-icon)}#margin-box[hidden]{display:none}.list button{padding:3px 8px;font-size:12px}.list button.icon{display:flex;padding:3px}#pubroots:not([hidden]){display:flex;flex-wrap:wrap;gap:4px;align-items:center}#pubroots button{padding:2px 6px;font-size:11px;text-align:left}.slider{display:grid;grid-template-columns:minmax(0,1fr) 9em 1.2em;gap:2px 6px;align-items:center}.slider .name{grid-column:1 / -1;font-size:12px;color:var(--text-muted)}.slider .unit{color:var(--text-muted)}.slider input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;margin:0;border-radius:2px;background:var(--border)}.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);cursor:pointer}.slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:var(--accent);cursor:pointer}#panel .slider input[type=number]{padding:4px 6px;text-align:right;font-variant-numeric:tabular-nums;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}#panel .slider input[type=number]::-webkit-inner-spin-button,#panel .slider input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#progress{display:flex;flex-direction:column;gap:2px}#progress[hidden]{display:none}#progress progress{width:100%;height:6px;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:0;border-radius:3px;background:var(--border)}#progress progress::-webkit-progress-bar{background:var(--border);border-radius:3px}#progress progress::-webkit-progress-value{background:var(--accent);border-radius:3px}#progress progress::-moz-progress-bar{background:var(--accent);border-radius:3px}.muted{color:var(--text-muted);font-size:12px}@media(min-width:1800px){#panel{--z: 1.15}}@media(min-width:2200px){#panel{--z: 1.25}}@media(max-width:640px){#panel{top:auto;bottom:8px;left:8px;right:8px;width:auto;max-height:50vh}#panel.collapsed{right:auto}.panel-head{padding-top:5px;padding-bottom:3px}#quality{order:0;flex:none;padding-right:0}#foot{padding:6px 10px 8px;gap:6px}#status{max-height:3.4em}#model-list li.two .state{flex:1 1 12em}}
