@font-face{font-family:Chakra Petch;font-weight:500;font-display:swap;src:url(/assets/ChakraPetch-Medium-wOSH1Q3W.ttf) format("truetype")}@font-face{font-family:Chakra Petch;font-weight:600;font-display:swap;src:url(/assets/ChakraPetch-SemiBold-BWGknBCE.ttf) format("truetype")}@font-face{font-family:Chakra Petch;font-weight:700;font-display:swap;src:url(/assets/ChakraPetch-Bold-BUP93nwv.ttf) format("truetype")}@font-face{font-family:IBM Plex Sans;font-weight:100 700;font-stretch:85% 100%;font-display:swap;src:url(/assets/IBMPlexSans-Variable-B8AMtGvj.ttf) format("truetype")}@font-face{font-family:IBM Plex Mono;font-weight:400;font-display:swap;src:url(/assets/IBMPlexMono-Regular-C5_jWxVG.ttf) format("truetype")}@font-face{font-family:IBM Plex Mono;font-weight:500 600;font-display:swap;src:url(/assets/IBMPlexMono-Medium-Bl6ckbVJ.ttf) format("truetype")}:root{--th-red: #B01238;--th-red-hover: #C4163F;--th-red-pressed: #8A0E2C;--th-red-signal: #E5406A;--th-black: #0B0B0C;--th-canvas: #0E0E10;--th-panel: #141416;--th-raised: #1C1D20;--th-border: #2E2F33;--th-border-strong: #4A4B50;--th-muted: #9C9DA3;--th-text-2: #C9CACE;--th-white: #FFFFFF;--th-paper: #F4F4F5;--th-success: #35C07F;--th-warning: #E8B53A;--th-ruler: #6A6B71;--th-insert-fill: #17171A;--th-insert-stroke: #C9CACE;--th-pocket-fill: #242529;--th-pocket-stroke: #C9CACE;--th-pocket-selected: var(--th-red-signal);--th-seam: var(--th-red-signal);--f-display: "Chakra Petch", sans-serif;--f-ui: "IBM Plex Sans", system-ui, sans-serif;--f-mono: "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--th-black);color:var(--th-white);font:14px/1.45 var(--f-ui)}.mono{font-family:var(--f-mono)}.i{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:square;stroke-linejoin:miter;flex:none}button,input,select{font:inherit;color:inherit}button{background:none;border:0;cursor:pointer}button:disabled,.disabled{opacity:.5;cursor:default}:focus-visible{outline:2px solid var(--th-red-signal);outline-offset:1px}.chip{font:600 10px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-warning);border:1px solid color-mix(in srgb,var(--th-warning) 45%,transparent);padding:4px 6px}.chip.neutral{color:var(--th-muted);border-color:var(--th-border-strong)}.shell{display:flex;flex-direction:column;min-height:100%}.top{height:60px;display:flex;align-items:center;gap:18px;padding:0 20px;border-bottom:1px solid var(--th-border);background:var(--th-black);flex:none}.brand{display:flex;align-items:center}.lockup{height:32px;width:auto;display:block}.brand{gap:12px;text-decoration:none;min-width:0}.brand .wordmark{height:28px;width:auto;display:block;flex:none}.brand .byline,.maker-link .byline{font:400 11px/1 IBM Plex Sans,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#9c9da3;white-space:nowrap;letter-spacing:.01em;padding-top:3px}.brand-group{display:flex;align-items:center;gap:8px;min-width:0;flex:0 1 auto}.brand-group .brand{flex:none}.maker-link{display:inline-flex;align-items:center;gap:6px;min-width:0;color:#9c9da3;text-decoration:none;border-radius:2px}.maker-link{flex:0 1 auto;min-width:22px;flex-wrap:wrap;height:22px;overflow:hidden;align-content:center}@media(min-width:701px)and (max-width:959.98px){.maker-link .maker-text{display:none}.maker-link{flex:none}}.maker-emblem{width:22px;height:22px;display:block;flex:none}.maker-link .byline{padding-top:0}.maker-link:hover .byline,.maker-link:focus-visible .byline{color:#e5406a;text-decoration:underline;text-underline-offset:2px}.maker-link:focus-visible{outline:2px solid #E5406A;outline-offset:2px}.by{font:500 11px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--th-muted);padding-left:14px;border-left:1px solid var(--th-border)}.top-r{margin-left:auto;display:flex;align-items:center;gap:8px}.app{display:grid;grid-template-columns:1fr 372px;flex:1;min-height:0;height:calc(100vh - 90px)}.work{display:flex;flex-direction:column;min-width:0;background:var(--th-canvas);overflow:auto}.bar{display:flex;align-items:flex-end;gap:14px;padding:12px 18px;border-bottom:1px solid var(--th-border);background:var(--th-black);flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:5px}.field label,.lbl{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-muted)}.select{appearance:none;background:var(--th-panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23C9CACE' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 12px center/12px 8px;color:var(--th-white);border:1px solid var(--th-border-strong);height:38px;padding:0 38px 0 12px;font:500 14px var(--f-ui);min-width:260px;border-radius:0}.select.type{min-width:200px}select,.select{color-scheme:dark}select option,select optgroup{background-color:var(--th-panel);color:var(--th-white)}select option:disabled{color:var(--th-muted)}.seg.units .segbtn.on,.seg.units .segbtn[aria-pressed=true]{background:var(--th-raised);color:var(--th-white);box-shadow:inset 0 -2px 0 var(--th-pocket-selected, #F0A800)}.case-use-field{flex:none;min-width:0;max-width:100%}.seg.case-use{height:38px;background:var(--th-black)}.seg.case-use .segbtn{font-family:var(--f-display);font-weight:600;font-size:13px;letter-spacing:.04em;text-transform:uppercase;padding:0 14px}.seg.case-use .segbtn.on,.seg.case-use .segbtn[aria-checked=true]{background:var(--th-raised);color:var(--th-white);box-shadow:inset 0 -2px 0 var(--th-red)}.seg.case-use{height:auto;min-height:38px}.seg.case-use .segbtn{flex:1 1 0;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;padding:6px 14px 7px}.seg.case-use .segbtn .cu-name{line-height:1.1}.seg.case-use .segbtn .cu-min{font-family:var(--f-display);font-weight:500;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--th-muted);white-space:nowrap}.seg.case-use .segbtn.on .cu-min,.seg.case-use .segbtn[aria-checked=true] .cu-min{color:var(--th-text-2)}.seg.case-use .segbtn .cu-name{white-space:nowrap}.seg.case-use .segbtn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.case-use-field .cu-note{margin:4px 0 0;text-align:left}.custom-levels-field{flex:none}.custom-levels-field .select{min-width:150px}.fine.depth-error{flex-basis:100%;margin:4px 0 0;text-align:left;color:var(--th-red-signal, #e5484d);font-weight:600}@media(max-width:900px){.seg.case-use .segbtn .cu-min{white-space:normal}}.seg.case-use .segbtn{min-width:0;text-align:left}.seg.case-use .segbtn .cu-min{white-space:normal}.select.small{min-width:0;max-width:210px;height:32px;font-size:12px}.readout{height:38px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--th-border);color:var(--th-text-2);font:13px var(--f-mono)}.readout input{width:52px;background:transparent;border:0;color:var(--th-white);font:500 13px var(--f-mono);text-align:right}.readout input.depth-input{width:calc(6ch + 22px);min-width:calc(6ch + 22px);padding-right:2px;box-sizing:content-box}.seg{display:flex;border:1px solid var(--th-border-strong);height:38px}.segbtn{padding:0 12px;color:var(--th-text-2);font-weight:500;display:flex;align-items:center;gap:6px;cursor:pointer}.segbtn+.segbtn{border-left:1px solid var(--th-border-strong)}.segbtn:hover{background:var(--th-raised);color:var(--th-white)}.phototip{font-size:12px;color:var(--th-muted);padding:8px 18px 0}.error{margin:8px 18px 0;color:var(--th-red-signal);font-size:13px}.status{margin:6px 18px 0;color:var(--th-success);font:12px var(--f-mono)}.stage{position:relative;padding:18px;flex:1;min-height:360px;display:flex}.board{width:100%;height:100%;max-height:calc(100vh - 250px);display:block;touch-action:none}.board .rl{font:6px var(--f-mono);fill:var(--th-ruler);letter-spacing:.05em}.ruler line{stroke:var(--th-ruler);stroke-width:.5}.insert{fill:var(--th-insert-fill);stroke:var(--th-insert-stroke);stroke-width:.8}.pocket path{fill:var(--th-pocket-fill);stroke:var(--th-pocket-stroke);stroke-width:.7;cursor:grab}.pocket.selected path{stroke:var(--th-pocket-selected);stroke-width:1.4}.pocket.edge-skip path{stroke:var(--th-pocket-selected, #F0A800);stroke-dasharray:3 2}.dim rect{fill:none;stroke:var(--th-red-signal);stroke-width:.5;stroke-dasharray:3 2}.dim text{font:6.5px var(--f-mono);fill:var(--th-red-signal)}.seam line{stroke:var(--th-seam);stroke-width:.8;stroke-dasharray:5 3}.seam .tail{fill:none;stroke:var(--th-seam);stroke-width:.8}.tag-ex{position:absolute;left:30px;top:26px}.hint{margin:-8px 0 0;padding:0 28px 12px;font:12px/1.5 var(--f-mono);color:var(--th-muted);text-align:right}.warnings{margin:0 18px 10px;padding-left:16px;font-size:12px}.warnings .warn{color:var(--th-warning)}.warnings .info{color:var(--th-muted)}.photo{margin:0 18px 18px;color:var(--th-muted);font-size:12px}.photo summary{cursor:pointer;font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase}.photo-svg{width:360px;max-width:100%;margin-top:8px;border:1px solid var(--th-border)}.trace{fill:none;stroke:var(--th-red-signal);stroke-width:4}.panel{border-left:1px solid var(--th-border);background:var(--th-panel);display:flex;flex-direction:column;min-height:0}.pscroll{flex:1;overflow:auto}@media(min-width:761px){.panel>.pscroll{flex:0 1 auto}}.sec{padding:16px 18px;border-bottom:1px solid var(--th-border)}.sec-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px}.sec-h h2,.sec summary h2{font:600 15px var(--f-display);letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}.sec summary{cursor:pointer;list-style:none}.sec summary::-webkit-details-marker{display:none}.settings[open] summary{margin-bottom:10px}.signal{color:var(--th-red-signal);font:12px var(--f-mono)}.addbtn{display:flex;align-items:center;gap:6px;font:600 12px var(--f-ui);color:var(--th-text-2);border:1px solid var(--th-border-strong);height:30px;padding:0 10px;cursor:pointer}.tlist{list-style:none;display:flex;flex-direction:column;gap:6px}.trow{display:flex;align-items:center;gap:12px;padding:9px 10px;background:var(--th-raised);border:1px solid var(--th-border);cursor:pointer}.trow.is-sel{border-color:var(--th-red-signal);box-shadow:inset 3px 0 0 var(--th-red-signal)}.thumb{width:34px;height:34px;flex:none}.thumb path{fill:none;stroke:var(--th-text-2);stroke-width:1.3}.trow.is-sel .thumb path{stroke:var(--th-red-signal)}.tmeta{flex:1;min-width:0}.tname{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tdim{font:12px var(--f-mono);color:var(--th-muted)}.colhead{display:flex;justify-content:flex-end;font:600 10px var(--f-mono);letter-spacing:.1em;color:var(--th-muted);text-transform:uppercase;margin:-4px 2px 6px}.sw{position:relative;display:inline-block;width:38px;height:22px;flex:none}.sw input{position:absolute;opacity:0;inset:0;cursor:pointer;z-index:1}.sw span{position:absolute;inset:0;background:var(--th-raised);border:1px solid var(--th-border-strong)}.sw span:after{content:"";position:absolute;width:14px;height:14px;left:3px;top:3px;background:var(--th-muted);transition:.15s}.sw input:checked+span{background:var(--th-red);border-color:var(--th-red)}.sw input:checked+span:after{left:19px;background:var(--th-white)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.row+.row{border-top:1px solid var(--th-border)}.row .k{color:var(--th-text-2)}.row .v{display:inline-flex;align-items:center;gap:4px;font:13px var(--f-mono)}.row .v input,.row .text{background:var(--th-raised);border:1px solid var(--th-border-strong);color:var(--th-white);padding:4px 6px;font:13px var(--f-mono);width:76px;text-align:right;border-radius:0}.row .text{width:170px;text-align:left;font-family:var(--f-ui)}.row .v em{font-style:normal;color:var(--th-muted);font-size:12px}.slider{padding:6px 0 8px}.slider .top-l{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.slider .val{font:600 20px var(--f-display);letter-spacing:.02em}.slider .val small{font:12px var(--f-mono);color:var(--th-muted);margin-left:4px}.slider input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:4px;background:linear-gradient(to right,var(--th-red) var(--fill, 50%),var(--th-raised) var(--fill, 50%));outline:none}.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:var(--th-white);border:3px solid var(--th-red);cursor:pointer}.slider input[type=range]::-moz-range-thumb{width:12px;height:12px;background:var(--th-white);border:3px solid var(--th-red);border-radius:0;cursor:pointer}.ticks{display:flex;justify-content:space-between;font:11px var(--f-mono);color:var(--th-muted);margin-top:8px}.segs{display:flex;border:1px solid var(--th-border-strong);margin-bottom:6px}.segs button{flex:1;height:32px;color:var(--th-text-2);font-weight:500;font-size:13px}.segs button+button{border-left:1px solid var(--th-border-strong)}.segs button.on{background:var(--th-raised);color:var(--th-white);box-shadow:inset 0 -2px 0 var(--th-red-signal)}.minibtn{font:600 12px var(--f-ui);color:var(--th-text-2);border:1px solid var(--th-border-strong);height:30px;padding:0 10px;flex:1}.sub{font-size:12px;color:var(--th-muted)}.facts{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:6px 0 10px;font-size:12px}.facts dt{color:var(--th-muted)}.facts dd{color:var(--th-text-2)}.unverified{color:var(--th-warning);font:600 10px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;margin-left:4px}pre{white-space:pre-wrap;font:11px var(--f-mono);color:var(--th-text-2);margin-top:8px}.cta{padding:14px 18px 18px;border-top:1px solid var(--th-border);background:var(--th-panel)}.est{display:flex;justify-content:space-between;gap:8px;font:12px var(--f-mono);color:var(--th-muted);margin-bottom:12px;flex-wrap:wrap}.est b{color:var(--th-text-2);font-weight:400}.btn{height:46px;display:flex;align-items:center;justify-content:center;gap:8px;font:600 15px var(--f-ui);letter-spacing:.02em;width:100%}.btn-primary{background:var(--th-red);color:var(--th-white);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.btn-primary:hover:not(:disabled){background:var(--th-red-hover)}.btn-primary:active:not(:disabled){background:var(--th-red-pressed)}.btn-secondary{border:1px solid var(--th-border-strong);color:var(--th-white);margin-top:8px}.btn-secondary:hover:not(:disabled){border-color:var(--th-text-2)}.fine{font-size:11px;color:var(--th-muted);margin-top:10px;text-align:center}.legal{min-height:30px;display:flex;align-items:center;padding:5px 20px;line-height:1.4;font-size:11px;color:var(--th-muted);border-top:1px solid var(--th-border);background:var(--th-black);flex:none}@media(max-width:760px){.top{height:56px;padding:0 14px;gap:10px}.lockup{height:26px}.brand .wordmark{height:22px}.by{display:none}.app{display:block;height:auto}.select{min-width:0;width:100%}.bar .field,.readout{width:100%}.stage{min-height:0;padding:12px}.board{max-height:none}.hint{display:none}.panel{border-left:0}.pscroll{overflow:visible}.cta{position:sticky;bottom:0;z-index:5;padding:10px 14px 12px}.cta .fine{display:none}.cta .est{margin-bottom:6px}.cta .export-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cta .btn{margin-top:0;font-size:14px}.legal{height:auto;padding:10px 14px 14px}}.board .notch{cursor:grab}.board .notch path{fill:var(--th-pocket-fill);stroke:var(--th-red-signal);stroke-width:.8;stroke-dasharray:2.4 1.6}.board .notch.grouped path{stroke-width:1.1}.board .notch.selected path{stroke-width:1.4;stroke-dasharray:none}.board .notch:active{cursor:grabbing}.board .ammo-fill{cursor:grab}.board .ammo-fill .ammo-bound{fill:#ffffff08;stroke:var(--th-red-signal);stroke-width:.6;stroke-dasharray:3 2}.board .ammo-fill.selected .ammo-bound{stroke-width:1}.board .ammo-fill .ammo-holes{fill:var(--th-pocket-fill);stroke:var(--th-red-signal);stroke-width:.35;stroke-linejoin:round}.board .ammo-fill .ammo-tag{font:700 5px var(--f-mono);fill:var(--th-red-signal)}.board .ammo-fill.overlap .ammo-bound{fill:#e5406a24;stroke-dasharray:none;stroke-width:1.2}.board .notch .notch-no{font:700 5.5px var(--f-mono);fill:var(--th-red-signal);pointer-events:none}.board .notch-edit .nframe{fill:none;stroke:#1fd1ff;stroke-width:.5;stroke-dasharray:2 1.5}.board .notch-edit .nh .nh-hit{fill:transparent;stroke:none}.board .notch-edit .nh .nh-knob{fill:var(--th-white);stroke:#1fd1ff;stroke-width:.8}.board .notch-edit .nh-corner .nh-knob{fill:#1fd1ff;stroke:var(--th-white)}.board .notch-edit .nh:hover .nh-knob{stroke:var(--th-red-signal);stroke-width:1.1}.board .notch-edit .ndim{font:6px var(--f-mono);fill:var(--th-white);pointer-events:none}.nlist{list-style:none;margin:4px 0 0;padding:0}.nrow-item{display:flex;gap:8px;align-items:baseline;padding:5px 6px;border:1px solid transparent;cursor:pointer;font-size:12px}.nrow-item span{color:var(--th-muted);font-family:var(--f-mono)}.nrow-item.is-sel{border-color:var(--th-red-signal)}.notches .sec-h h2 .count{font-family:var(--f-mono);color:var(--th-muted);margin-left:4px}.notch-shapes{margin:6px 0 8px}.row.disabled input{opacity:.55}.plate-notch{stroke-dasharray:2 1.5}.notch-count{flex:none;min-width:44px;font-family:var(--f-mono)}.notches{margin:10px 0}.notches .sec-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.notches .sec-h .minibtn{flex:none}.notch-card{border:1px solid var(--th-border);padding:8px;margin-bottom:8px;background:var(--th-panel)}.notch-top{display:flex;align-items:center;gap:8px;margin-bottom:6px}.notch-top .segs{flex:1;margin:0}.notch-top .segs button{height:28px;font-size:12px}.notch-top .minibtn{flex:none;height:28px}.nslider{display:grid;grid-template-columns:1fr;gap:2px;font-size:11px;color:var(--th-muted);margin-bottom:6px}.nslider input{width:100%;accent-color:var(--th-red-signal)}.nslider em{font:11px var(--f-mono);font-style:normal;color:var(--th-text-2)}.nslider em .npos{width:76px;height:24px;margin-right:4px;background:var(--th-black);border:1px solid var(--th-border-strong);color:var(--th-white);font:11px var(--f-mono);padding:0 6px}.nrow{display:flex;gap:6px}.nfield{flex:1;display:flex;flex-direction:column;gap:2px;font-size:11px;color:var(--th-muted)}.nfield input{width:100%;height:28px;background:var(--th-black);border:1px solid var(--th-border-strong);color:var(--th-white);font:12px var(--f-mono);padding:0 6px}.nfield em{display:none}.seam .seam-line{stroke:var(--th-seam);stroke-width:.9;stroke-dasharray:5 3}.seam .tail{fill:color-mix(in srgb,var(--th-seam) 25%,transparent);stroke:var(--th-seam);stroke-width:.8}.seam .part-no{font:600 14px var(--f-mono);fill:var(--th-ruler);opacity:.55;pointer-events:none}.board .seam{pointer-events:none}.plates{margin:0 18px 14px;border-top:1px solid var(--th-border);padding-top:10px}.plates-h{display:flex;align-items:baseline;gap:12px;margin-bottom:8px;flex-wrap:wrap}.plates-h h2{font:600 12px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-white)}.plates-h .sub{font-size:12px;color:var(--th-muted)}.plates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.plate{background:var(--th-black);border:1px solid var(--th-border);padding:6px}.plate-svg{width:100%;display:block}.plate .bed{fill:#141417;stroke:var(--th-border-strong);stroke-width:1.2}.plate .usable{fill:none;stroke:var(--th-muted);stroke-width:1;stroke-dasharray:6 4}.plate .part{fill:#2a2a30;stroke:var(--th-white);stroke-width:1.4}.plate .part.bad{stroke:var(--th-red-signal)}.plate .plate-pocket{fill:var(--th-pocket-fill);stroke:var(--th-pocket-stroke);stroke-width:1}.plate .seam-line{stroke:var(--th-seam);stroke-width:2;stroke-dasharray:7 4}.plate .tail{fill:color-mix(in srgb,var(--th-seam) 45%,transparent);stroke:var(--th-seam);stroke-width:1.4}.plate .socket{fill:none;stroke:var(--th-seam);stroke-width:1.2;stroke-dasharray:3 2}.plate .plate-label{font:600 12px var(--f-mono);fill:var(--th-muted);letter-spacing:.08em}.plate figcaption{font:11px var(--f-mono);color:var(--th-text-2);margin-top:4px}.plate figcaption b{color:var(--th-white)}optgroup{background:var(--th-panel);color:var(--th-muted)}.preview3d{margin:0 18px 18px;border:1px solid var(--th-border);background:var(--th-black)}.preview3d .plates-h{display:flex;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--th-border);flex-wrap:wrap}.preview3d h2{font:600 12px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;margin:0}.preview3d .sub{font:12px var(--f-mono);color:var(--th-muted);flex:1 1 240px;min-width:0}.preview3d .pc-actions .btn{flex:none;width:auto;height:32px;padding:0 14px;border:1px solid var(--th-border-strong);margin-left:auto;font-size:13px}.preview3d .pc-actions .btn:hover:not(:disabled){background:var(--th-raised)}.preview3d .p3d-empty{padding:14px 12px;display:flex;gap:12px;align-items:center;color:var(--th-text-2);font-size:13px}.p3d{position:relative}.p3d-canvas{height:460px}.p3d-canvas canvas{display:block}.p3d-wire{position:absolute;left:12px;bottom:10px;font:12px var(--f-mono);color:var(--th-text-2);display:flex;gap:6px;align-items:center}.p3d-reset{position:absolute;right:12px;bottom:8px;font:12px var(--f-mono);color:var(--th-text-2);background:#101012cc;border:1px solid #3a3a42;border-radius:4px;padding:4px 10px;cursor:pointer}.p3d-reset:hover{color:#fff;border-color:#e2203a}.board .notch-handle{cursor:grab}.board .notch-handle circle{fill:var(--th-white);stroke:var(--th-red-signal);stroke-width:1.4}.board .notch-handle text{font:700 6px var(--f-mono);fill:#111;pointer-events:none}.board .notch-handle:active{cursor:grabbing}.board svg.placing,svg.placing{cursor:crosshair}.notches .nbtns{display:flex;gap:6px}.minibtn.on{border-color:var(--th-red-signal);color:var(--th-white);background:#e20d1c2e}.signal-text{color:var(--th-red-signal)}.rotation{padding:6px 0 8px}.rotation .top-l{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.rotation .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--th-muted)}.rotation .rot-in{display:flex;align-items:center;gap:4px}.rotation .rot-in input{background:var(--th-raised);border:1px solid var(--th-border-strong);color:var(--th-white);padding:4px 6px;font:13px var(--f-mono);width:84px;text-align:right;border-radius:0}.rotation .rot-in em{font-style:normal;font-family:var(--f-mono);color:var(--th-muted)}.rotation input[type=range]{width:100%;accent-color:var(--th-red-signal)}.rotation .nudges{display:flex;gap:6px;margin-top:6px}.rotation .nudges .minibtn{font-family:var(--f-mono);height:28px}.board .guides{pointer-events:none}.board .guide{stroke:#1fd1ff;stroke-width:.6;stroke-dasharray:3 2}.board .guide.tray{stroke:#ffd21f}.board .spacing line{stroke:#ff4fd8;stroke-width:.6;stroke-dasharray:2 1.5}.board .spacing text{font:700 5.5px var(--f-mono);fill:#ff4fd8;paint-order:stroke;stroke:#0b0b0d;stroke-width:1.4px}.app.popped{grid-template-columns:1fr}.tw-ctrl{display:inline-flex;align-items:center;gap:6px;position:relative}.tw-btn{height:32px;padding:0 12px;font-size:12px;white-space:nowrap}.tw-btn.on{border-color:var(--th-red-signal);color:var(--th-white)}.tw-pick{position:relative}.tw-menu{position:absolute;right:0;top:36px;z-index:20;list-style:none;margin:0;padding:4px;min-width:300px;background:var(--th-panel);border:1px solid var(--th-border-strong);box-shadow:0 8px 24px #00000080}.tw-menu button{display:block;width:100%;text-align:left;background:none;border:0;color:var(--th-white);font:12px var(--f-mono);padding:8px 10px;cursor:pointer}.tw-menu button:hover{background:var(--th-black)}.tw-msg{font-size:12px;color:var(--th-white);border:1px solid var(--th-red-signal);padding:4px 6px 4px 10px;max-width:460px;display:inline-flex;align-items:center;gap:6px}.tw-x{background:none;border:0;color:var(--th-muted);cursor:pointer;font-size:15px;line-height:1}.tools-window-body{margin:0;height:100vh;overflow:hidden}#tools-root{height:100%}.tools-window{height:100vh;display:flex;flex-direction:column}.tools-window .tw-top{height:52px}.tools-window .tw-top .lockup{height:22px}.tools-window .tw-top{height:58px}.tools-window .brand{flex-direction:column;align-items:flex-start;gap:4px}.tools-window .brand .wordmark{height:20px}.tools-window .brand .byline{padding-top:0}.tools-window .tw-title{font:600 12px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--th-muted)}.tools-window .bar{padding:10px 14px;gap:10px}.tools-window .bar.bar-pc{flex-direction:column;align-items:stretch}.tools-window .bar-row{gap:10px}.tools-window .bar .field,.tools-window .bar .select{width:100%;min-width:0}.tools-window .phototip{padding:0 14px}.tools-window .status,.tools-window .error{margin:6px 14px}.tools-window .panel{border-left:0;flex:1;min-height:0}.notches .sec-h{gap:8px}.notches .nbtns{flex:none}.tm{position:relative;display:flex}.tm>.segbtn{height:100%}.tm-menu{position:absolute;left:0;top:calc(100% + 6px);z-index:30;width:360px;max-height:60vh;overflow:auto;background:var(--th-panel);border:1px solid var(--th-border-strong);box-shadow:0 8px 24px #00000080;padding:10px;display:flex;flex-direction:column;gap:12px}.tm-menu h3{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-muted);margin-bottom:6px}.tm-menu ul{list-style:none;display:flex;flex-direction:column;gap:4px}.tm-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;padding:8px 10px;background:var(--th-raised);border:1px solid var(--th-border);color:var(--th-white)}.tm-item:hover:not(:disabled){border-color:var(--th-red-signal)}.tm-item b{font-weight:600;font-size:13px}.tm-item span{font-size:11.5px;color:var(--th-muted)}.tm-item.has-thumb{flex-direction:row;align-items:center;gap:10px}.tm-item .tm-thumb{display:flex;flex:none;align-items:center;justify-content:center;min-width:72px}.tm-item .tm-text{display:flex;flex-direction:column;gap:2px;min-width:0;color:inherit;font-size:inherit}.tm-note{font-size:12px;color:var(--th-text-2)}.tm-note a{color:var(--th-red-signal)}.error-text{color:var(--th-warning)}.tgroups{display:flex;flex-direction:column;gap:8px}.tg-h{display:flex;align-items:center;justify-content:space-between;gap:6px}.tg-toggle{display:flex;align-items:center;gap:6px;font:600 11px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--th-text-2);padding:4px 0}.tg-toggle .count{color:var(--th-muted)}.tg-actions{display:flex;gap:4px}.tg-actions .minibtn{flex:none;height:24px;padding:0 8px;font-size:11px}.tgroup .tlist{margin-top:4px}.tgroup.mytraces{margin:6px 0 8px}.tgroup.mytraces .trow .minibtn{flex:none}.trow.is-placed .tdim{color:var(--th-text-2)}.tg-empty{padding:4px 2px;list-style:none}.tag-lvl,.tag-grp{font:600 9.5px var(--f-mono);color:var(--th-muted);border:1px solid var(--th-border-strong);padding:1px 4px;margin-left:6px;vertical-align:middle}.cat-add{margin:2px 0 10px}.cat-add>.minibtn{flex:none}.cat-edit{display:flex;gap:6px;align-items:center}.cat-edit .text{flex:1;min-width:0}.cat-edit .minibtn{flex:none}.stack-pick{display:flex;align-items:center;gap:8px;font:12px var(--f-ui);color:var(--th-text-2)}.stack-pick .select{width:auto}.levels-sum{list-style:none;display:flex;flex-direction:column;gap:3px;font:12px var(--f-mono);color:var(--th-muted);margin-bottom:10px}.levels-sum li{cursor:pointer;padding:2px 4px}.levels-sum li.on{color:var(--th-white);box-shadow:inset 2px 0 0 var(--th-red-signal)}.levels-sum li.total{cursor:default;color:var(--th-text-2)}.levels-sum b{color:var(--th-text-2);font-weight:600}.level-tabs{display:flex;align-items:center;gap:0;margin:6px 18px 0;border:1px solid var(--th-border-strong);width:fit-content;height:34px}.level-tabs .segbtn{height:100%}.level-tabs .segbtn.on{background:var(--th-raised);color:var(--th-white);box-shadow:inset 0 -2px 0 var(--th-red-signal)}.level-tabs .segbtn small{font:11px var(--f-mono);color:var(--th-muted)}.p3d-levels.level-tabs{margin:0 0 8px}.level-tabs .sub{padding:0 12px;border-left:1px solid var(--th-border-strong)}.p3d-levels{margin-top:8px}.board .marquee{fill:#e5406a14;stroke:var(--th-red-signal);stroke-width:.6;stroke-dasharray:3 2}.board .selbox{fill:none;stroke:var(--th-red-signal);stroke-width:.5;stroke-dasharray:4 2}.board .pocket.grouped-tool path{stroke-dasharray:none}.pc-h{display:flex;align-items:center;gap:8px;min-width:0}.pc-title{flex:1;min-width:0;margin:0}.pc-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:30px;padding:0;margin:0;background:none;border:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer}.pc-toggle:hover .pc-chev{color:var(--th-white)}.pc-toggle:focus-visible{outline:2px solid var(--th-red-signal);outline-offset:2px}.pc-label{min-width:0}.pc-chev{width:12px;height:12px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:var(--th-muted);transition:transform .16s ease}.pc.is-closed>.pc-h .pc-chev{transform:rotate(-90deg)}.pc-actions{display:flex;align-items:center;gap:8px;flex:none}.pc-body{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows .17s ease,opacity .17s ease}.pc.is-closed>.pc-body{grid-template-rows:0fr;opacity:0}.pc-inner{min-height:0;min-width:0}.pc.is-closed>.pc-body>.pc-inner,.pc.is-anim>.pc-body>.pc-inner{overflow:hidden}@media(prefers-reduced-motion:reduce){.pc-body,.pc-chev{transition:none}}.pc-sec>.pc-h .pc-title{font:600 15px var(--f-display);letter-spacing:.06em;text-transform:uppercase}.pc-sec>.pc-body>.pc-inner>.pc-content{padding-top:12px}.pc-sec .pc-toggle .count,.pc-sec .pc-toggle .chip{font-family:var(--f-mono)}.pc-sec .pc-toggle .count{color:var(--th-muted);margin-left:4px}.bar.bar-pc{align-items:flex-start;gap:10px 28px;padding:8px 18px 12px}.pc-bar{min-width:0}.pc-bar[data-panel=traces]{flex:1 1 320px}.pc-bar>.pc-h .pc-title{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-muted)}.pc-bar>.pc-h .pc-toggle{min-height:24px}.pc-bar>.pc-body>.pc-inner>.pc-content{padding-top:4px}.bar-row{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.pc-bar .phototip{padding:8px 0 0}.cta .pc-box>.pc-h .pc-title{font:600 15px var(--f-display);letter-spacing:.06em;text-transform:uppercase}.cta .pc-box>.pc-body>.pc-inner>.pc-content{padding-top:8px}.cta .export-pc{margin-top:8px;padding-top:8px;border-top:1px solid var(--th-border)}.tray-row{display:flex;justify-content:flex-end}.preview3d>.pc-h{padding:6px 12px;min-height:46px}.preview3d.is-open>.pc-h{border-bottom:1px solid var(--th-border)}.preview3d>.pc-h .pc-title{font:600 12px var(--f-mono);letter-spacing:.14em;text-transform:uppercase}.preview3d .p3d-sub{padding:8px 12px}.photo>.pc-h .pc-title{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-muted)}.preview3d .p3d-levels.level-tabs{margin:0 12px 8px}.case-note{display:flex;align-items:flex-start;gap:10px;margin:8px 0 2px;padding:8px 10px;border:1px solid var(--th-border);border-left:3px solid var(--th-red-signal);border-radius:6px;font-size:12px;line-height:1.4;color:var(--th-text-2);background:#ffffff08}.case-note span{flex:1}.case-note-x{background:none;border:0;color:var(--th-muted);font-size:16px;line-height:1;cursor:pointer;padding:0 2px}.case-note-x:hover,.case-note-x:focus-visible{color:var(--th-text-2)}.details-field{padding:8px 0;border-top:1px solid var(--th-border)}.details-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.details-top .k{color:var(--th-text-2)}.details-count{font:11px var(--f-mono);color:var(--th-muted)}.details-count.at-max{color:var(--th-red-signal)}.details-in{width:100%;box-sizing:border-box;background:var(--th-raised);border:1px solid var(--th-border-strong);color:var(--th-white);padding:6px 8px;font:13px var(--f-ui);border-radius:0}.details-in::placeholder{color:var(--th-muted)}.details-hint{margin:4px 0 0}.chip.coin{display:inline-flex;align-items:center;gap:5px;color:var(--th-white);border-color:var(--th-border-strong);text-transform:none;letter-spacing:.04em;font-size:11px}.chip.coin .i{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5}.chip.coin.off{color:var(--th-warning);border-color:color-mix(in srgb,var(--th-warning) 45%,transparent)}.segbtn.coin-signin{font-size:12px}.price{font-weight:500;opacity:.85;white-space:nowrap}.price[data-paid="1"]{color:var(--th-text-2)}.linkbtn{background:none;border:0;padding:0;font:inherit;color:var(--th-red-signal);text-decoration:underline;cursor:pointer}.coin-gate{margin:8px 0 0;padding:8px 10px;font-size:12.5px;line-height:1.45;color:var(--th-text-2);border:1px solid var(--th-border-strong);border-left:3px solid var(--th-warning)}.coin-gate b{color:var(--th-white);font-weight:600}.coin-gate.insufficient,.coin-gate.unavailable{border-left-color:var(--th-red-signal)}.coin-hint{display:block;margin-top:4px;font-size:11.5px;color:var(--th-muted)}.coin-note{margin:6px 0 0;font-size:12px;color:var(--th-text-2)}.coin-rule{margin-top:6px}.trace-dl{margin-top:10px}.trace-dl .btn{width:100%}.btn-small{height:38px;font-size:13px}.coin-chrome{display:inline-flex;align-items:center;gap:8px}.coin-hint.inline{display:inline;margin:0}.tm{display:contents}.tm-btn{min-height:36px;padding:0 18px}.tm-btn.on{box-shadow:inset 0 -3px #00000059}.tm-menu.tm-inline{position:static;order:99;flex-basis:100%;width:100%;max-height:46vh;box-shadow:none;margin-top:8px}.skinq{display:flex;flex-direction:column;gap:8px}.skin-fig{margin:0;display:flex;flex-direction:column;gap:4px}.skin-preview{width:100%;height:auto;max-height:260px;background:var(--th-black)}.skin-plain{fill:#2b2b2e}.skin-pocket{fill:#141416;stroke:#6b6c70;stroke-width:.8;vector-effect:non-scaling-stroke}.skin-edge{fill:none;stroke:var(--th-border-strong);stroke-width:1;vector-effect:non-scaling-stroke}.skin-seam{stroke:#f0a800;stroke-width:1.5;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.skin-part{font:600 14px var(--f-mono);fill:#fff;paint-order:stroke;stroke:#000;stroke-width:3px}.mono-cap{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font:500 10.5px var(--f-mono);letter-spacing:.08em;color:var(--th-muted)}.skin-h{display:flex;justify-content:space-between;align-items:baseline}.skin-h .lbl{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-muted)}.skin-sel{color:var(--th-white);font-size:13px}.skin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.skin{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:3px;background:var(--th-black);border:1px solid var(--th-border-strong);color:var(--th-text-2);font-size:12.5px;text-align:center}.skin:hover:not(.off){border-color:#9c9da3;color:var(--th-white)}.skin:focus-visible{outline:2px solid var(--th-red-signal);outline-offset:2px}.skin.on{border:2px solid var(--th-red-signal);padding:2px;box-shadow:0 0 0 3px #e5406a2e;color:var(--th-white);font-weight:600}.skin.off{opacity:.4;cursor:not-allowed}.skin-thumb{position:relative;display:block;aspect-ratio:1}.skin-thumb img{width:100%;height:100%;object-fit:cover;display:block}.skin-check{position:absolute;top:4px;right:4px;width:22px;height:22px;display:grid;place-items:center;background:var(--th-red-signal);color:#111;font-style:normal;font-weight:700;clip-path:polygon(0 0,100% 0,100% 100%,25% 100%,0 75%)}.skin-warn{position:absolute;left:4px;bottom:4px;width:18px;height:18px;display:grid;place-items:center;background:#f0a800;color:#111;font-style:normal;font-weight:700;border-radius:50%}.skin-plus{display:grid;place-items:center;font-size:26px;border:1px dashed var(--th-border-strong)}.skin-desc{margin:0}.skin-callout{margin:0;padding:6px 8px;border-left:3px solid #F0A800;background:#f0a80014;color:#f6c64f;font-size:12.5px}.quote-rows dd b{color:var(--th-white)}.skin-note{width:100%;resize:vertical;min-height:44px}@media(max-width:700px){.skin-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.skin{flex:0 0 96px;scroll-snap-align:start}}.coin-note.err{color:var(--th-red-signal)}.printer-custom{display:flex;gap:8px;padding:2px 0 6px}.printer-custom label{display:flex;align-items:center;gap:4px;font:600 11px var(--f-mono);color:var(--th-muted)}.printer-custom input{width:64px}.details-hint.err,.sub.err{color:var(--th-red-signal)}.members-sec{display:flex;flex-direction:column;gap:8px}.mini-h{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-muted);margin-top:4px}.profile-ed,.directory,.member-view{display:flex;flex-direction:column;gap:6px}.row.check{justify-content:flex-start;gap:8px}.dir-search{width:100%}.member-list{list-style:none;display:flex;flex-direction:column;gap:4px}.member-head h3{font-size:15px}.stack-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px;padding:6px 10px;border:1px solid var(--th-border-strong);border-left:3px solid var(--th-red);background:var(--th-raised)}.stack-row .stack-pick{display:flex;align-items:center;gap:8px;font:600 12px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--th-white)}.stack-row .levels-sum{display:flex;flex-wrap:wrap;gap:4px 12px;list-style:none;margin:0;font-size:12px}.stack-row .levels-sum li{cursor:pointer;color:var(--th-text-2)}.stack-row .levels-sum li.on{color:var(--th-white)}.trace-edit{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 14px;margin-top:10px;padding-top:10px;border-top:1px solid var(--th-border)}.trace-edit .te-field{display:flex;flex-direction:column;gap:4px}.trace-edit .te-name input{width:200px}.trace-edit .te-details{border-top:0;padding:0;flex:1;min-width:220px}.trace-edit .trace-dl{display:flex;gap:8px;flex-wrap:wrap;margin:0}.trace-edit .coin-note,.trace-edit .fine{flex-basis:100%;margin:0}.tools-window .trace-edit .te-name input{width:100%}.tm-btn{width:auto;flex:0 0 auto;margin-top:0;height:38px}.trace-edit .btn{width:auto;margin-top:0}.trace-edit input.text{height:32px;padding:0 8px;background:var(--th-raised);border:1px solid var(--th-border-strong);color:var(--th-white);font:inherit}.trace-edit input.text:focus{outline:2px solid var(--th-red-signal);outline-offset:1px}.trace-edit .te-field .k{font:600 11px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--th-muted)}.trace-edit .te-details .details-top{display:flex;justify-content:space-between}.trace-edit .btn{height:34px;padding:0 12px;font-size:13px}.tm-btn{padding:0 22px;font-size:14px}.howto{padding:4px 18px 0}.pc-bar .howto{padding:4px 0 0}.howto-toggle{font-size:12.5px;color:var(--th-red-signal)}.howto-body{container-type:inline-size;display:flex;flex-direction:column;gap:12px;margin:8px 0 4px;padding:16px 14px;font-size:13px;color:var(--th-text-2);background:var(--th-panel);border:1px solid var(--th-border)}.howto-hero{display:grid;grid-template-columns:1fr auto;gap:14px 32px;align-items:end;padding-bottom:14px;border-bottom:1px solid var(--th-border)}.howto-kicker{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-red-signal);margin-bottom:8px}.howto-kicker.small{margin:0}.howto-h1{font:600 24px/1.1 var(--f-display);letter-spacing:.04em;text-transform:uppercase;color:var(--th-white)}.howto-lede{margin-top:8px;font-size:14px;max-width:62ch}.howto-dl{display:flex;flex-direction:column;align-items:stretch;gap:6px}.howto-dl-btn{width:auto;padding:0 18px;text-decoration:none;color:var(--th-white);background:var(--th-red);white-space:nowrap}.howto-dl-btn:hover{background:var(--th-red-hover)}.howto-dl-btn .i{width:18px;height:18px}.howto-meta{font:12px var(--f-mono);color:var(--th-muted);text-align:center}.howto-sec-h{display:flex;align-items:baseline;gap:12px;margin-top:6px}.howto-sec-h h4{font:600 16px/1.1 var(--f-display);letter-spacing:.06em;text-transform:uppercase;color:var(--th-white)}.howto-sec-h .rule{flex:1;height:1px;background:var(--th-border)}.howto-steps{list-style:none;display:grid;grid-template-columns:1fr;gap:10px}.howto-step{background:var(--th-raised);border:1px solid var(--th-border);display:flex;flex-direction:column;min-width:0}.howto-pic{height:170px;background:#0e0e10;border-bottom:1px solid var(--th-border);display:grid;place-items:center;overflow:hidden}.howto-pic picture{display:contents}.howto-pic img{width:100%;height:100%;object-fit:cover;display:block}.howto-pic img.contain{object-fit:contain}.howto-art{width:100%;height:100%;display:block}.howto-step-body{padding:12px 14px 14px}.howto-n{font:600 12px var(--f-mono);letter-spacing:.12em;color:var(--th-red-signal)}.howto-step-body h5{font:600 15px/1.15 var(--f-display);letter-spacing:.05em;text-transform:uppercase;color:var(--th-white);margin:4px 0 6px}.howto-step-body p{font-size:13px}.howto-step-body p b,.howto-alt b{color:var(--th-white);font-weight:600}.uisnip{width:100%;height:100%;padding:16px 14px;display:flex;flex-direction:column;justify-content:center;gap:10px}.uisnip .row{display:flex;gap:8px;padding:0;justify-content:flex-start}.uisnip .row+.row{border-top:0}.uisnip .f{flex:1;height:32px;border:1px solid var(--th-border-strong);background:var(--th-panel);display:flex;align-items:center;padding:0 10px;font-size:12px;color:var(--th-text-2);white-space:nowrap;overflow:hidden}.uisnip .b{height:32px;display:flex;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--th-border-strong);font-size:12.5px;font-weight:600;white-space:nowrap;color:var(--th-white)}.uisnip .b.hl{border-color:var(--th-red-signal);box-shadow:0 0 0 2px #e5406a40}.uisnip .b.red{background:var(--th-red);border-color:var(--th-red)}.uisnip .b svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6}.uisnip .cap{font:11px var(--f-mono);letter-spacing:.06em;color:var(--th-muted)}.howto-ex{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}.howto-fig{margin:0;background:var(--th-raised);border:1px solid var(--th-border)}.howto-fig img{width:100%;height:auto;display:block}.howto-fig figcaption{padding:12px 14px 14px;display:grid;gap:6px}.howto-fig figcaption b{font:600 14px var(--f-display);letter-spacing:.06em;text-transform:uppercase;color:var(--th-white)}.howto-amber{color:var(--th-warning)}.howto-check{list-style:none;display:grid;grid-template-columns:1fr;gap:8px;margin:0}.howto-check li{display:flex;gap:10px;align-items:flex-start}.howto-check li i{flex:none;width:18px;height:18px;border:1.5px solid var(--th-red-signal);display:grid;place-items:center;margin-top:1px}.howto-check li i:after{content:"";width:8px;height:4px;border:2px solid var(--th-red-signal);border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}.howto-alt{padding:14px 16px;border:1px dashed var(--th-border-strong);display:flex;gap:16px;align-items:center;justify-content:space-between}.howto-alt .linkbtn{white-space:nowrap}.howto-foot{text-align:left}@container (min-width: 480px){.howto-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.howto-pic{height:auto;aspect-ratio:4 / 3;position:relative;display:block}.howto-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.howto-pic img.contain{object-fit:contain;object-position:center}.howto-pic .howto-art,.howto-pic .uisnip{position:absolute;inset:0}.howto-ex{grid-template-columns:1.55fr 1fr}.howto-check{grid-template-columns:repeat(3,minmax(0,1fr))}.howto-check li{border:1px solid var(--th-border);background:var(--th-raised);padding:12px 12px 14px}}@container (min-width: 900px){.howto-steps{grid-template-columns:repeat(5,minmax(0,1fr))}}@container (max-width: 479px){.howto-hero{grid-template-columns:1fr}.howto-dl-btn{width:100%}.howto-h1{font-size:21px}.howto-pic{height:auto;min-height:150px}.howto-pic img{height:auto;max-height:360px}.fig-mp5 img{max-height:360px;object-fit:contain;background:#0e0e10}.howto-alt{flex-direction:column;align-items:flex-start}}@media(max-width:700px){.top{height:auto;flex-wrap:wrap;row-gap:8px;padding:10px 14px}.top .brand{flex:1 0 100%}.top .brand .byline{display:none}.top .brand-group{flex:1 0 100%}.top .brand-group .brand{flex:none}.top .top-r{margin-left:0;flex:1 0 100%;justify-content:flex-start}.top .tw-ctrl{display:none}}@media(max-width:700px){.cta{position:static;z-index:auto;padding:14px 18px 18px}.cta .fine{display:block}.cta .export-btns{display:flex;flex-direction:column;gap:8px}.cta .export-btns .btn{width:100%;min-height:48px;height:auto;white-space:nowrap;font-size:15px;margin-top:0}.cta .export-btns .btn .price{white-space:nowrap}}.tm-btn.on{background:var(--th-red);box-shadow:none}.stage.has-ex{padding-top:46px}.tag-ex{inset:12px 18px auto auto;z-index:1}.mono-cap{font-size:11px}.mono-cap .nm{text-transform:none;letter-spacing:.02em}.fine.turnkey{margin-top:2px}.members-link{padding:12px 18px}.sec.members-link{order:99}.ext-link{color:var(--th-red-signal);font-weight:600;text-decoration:none}.ext-link:hover{text-decoration:underline}.profile-ed .row .v input.text{width:200px;text-align:left;font-family:var(--f-mono)}.profile-ed .row .v{flex:1;justify-content:flex-end}.printer-custom input,.printer-custom input.text{width:70px;height:30px;background:var(--th-raised);border:1px solid var(--th-border-strong);color:var(--th-white);padding:0 6px;font:13px var(--f-mono);border-radius:0;color-scheme:dark}.printer-custom em{font:11px var(--f-mono);color:var(--th-muted);font-style:normal}@media(max-width:700px){.board .rl,.board .ruler text,.board .dim text{font-size:11px}.board .rl.board-cap{letter-spacing:0}.plate .plate-label{font-size:13px}.plate figcaption,.plates-h .sub{font-size:12px}.select{font-size:13.5px;padding-right:32px;background-position:right 10px center}.tag-ex{font-size:11px;right:12px;top:10px}.stage.has-ex{padding-top:40px}}.row.stack{flex-direction:column;align-items:stretch;gap:6px}.row.stack .select.small{max-width:none;width:100%;height:34px;font-size:13px}.row.stack .select.small{padding:0 30px 0 10px;background-position:right 10px center}.howto-safety{margin:12px 0 4px;padding:8px 12px;border-left:3px solid var(--accent, #c4163f);background:#c4163f14;font-size:13px;font-weight:600;max-width:72ch}.skin-custom-rules{margin:6px 0 0;padding-left:18px}.skin-custom-rules li{margin:2px 0}.insert-step{fill:none;stroke:var(--th-muted, #8a8b90);stroke-width:1;stroke-dasharray:5 4;vector-effect:non-scaling-stroke;pointer-events:none}.skin-notch{stroke:#8a8b90;stroke-dasharray:2.4 1.6}.skin-groups{display:flex;flex-direction:column}.skin-top{padding-bottom:10px}.skin-group{border-top:1px solid var(--th-border)}.skin-group-h{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:6px 0;background:none;border:0;color:var(--th-white);font:600 13px var(--f-display);letter-spacing:.06em;text-transform:uppercase;text-align:left;cursor:pointer}.skin-group-h:focus-visible{outline:2px solid var(--th-red-signal);outline-offset:2px}.skin-group-h .ct{min-width:18px;padding:0 4px;border:1px solid var(--th-border-strong);color:var(--th-muted);font:500 10.5px var(--f-mono);letter-spacing:0;line-height:16px;text-align:center}.skin-group-h .ct{text-transform:none}.skin-group-dot{width:6px;height:6px;background:#e5406a;display:inline-block}.skin-group-h .chev{margin-left:auto;color:var(--th-muted);font-size:16px;line-height:1}.skin-group-h:hover .chev{color:var(--th-white)}.skin-group .skin-grid{grid-template-columns:repeat(4,1fr);gap:6px;padding-bottom:10px}.skin-group .skin{font-size:10.25px;padding:3px 1px}.skin-group .skin.on{padding:2px 0}.skin-lbl{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.25;overflow-wrap:normal;word-break:normal}.skin-groups{container-type:inline-size}@container (max-width: 300px){.skin-group .skin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.skin-group .skin-grid{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.skin-group .skin{flex:0 0 92px;scroll-snap-align:start}}.soon-pill{display:inline-flex;align-items:center;margin-left:10px;padding:2px 9px;border-radius:999px;background:#e2203a;color:#fff;font:700 10.5px var(--f-mono);letter-spacing:.1em;line-height:16px;pointer-events:none;user-select:none;white-space:nowrap}.skin-soon-sub{margin:0 0 10px;color:var(--th-text-2);font-size:13px;line-height:1.4}.p3d-skin{position:absolute;left:10px;top:8px;margin:0;padding:3px 8px;border-radius:6px;background:#101012c7;color:var(--th-text-2, #c9c9cf);font:500 11.5px var(--f-mono);pointer-events:none}.te-category{display:flex;flex-direction:column;gap:4px}.te-category select{min-width:0}.cat-new{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.cat-new input{flex:1 1 140px;min-width:0}.mt-groups{display:flex;flex-direction:column;gap:2px}.mt-group-h{display:flex;align-items:center;gap:6px;width:100%;padding:6px 4px;background:none;border:0;color:var(--th-text-2);font:600 12px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;text-align:left}.mt-group-h:hover{color:var(--th-text)}.mt-group-h .count{color:var(--th-text-3, #8a8a92);font-weight:500}.pscroll,.dock-left .pscroll{display:flex;flex-direction:column}.dock-item{min-width:0}.app.dock-l{grid-template-columns:340px 1fr 372px}.app.dock-l.popped{grid-template-columns:1fr}.panel.dock-left{border-left:0;border-right:1px solid var(--th-border)}.dock-grip{flex:none;display:inline-grid;place-items:center;width:26px;height:26px;margin-left:2px;padding:0;border:1px solid transparent;border-radius:6px;background:none;color:var(--th-muted);cursor:grab;touch-action:none}.dock-grip svg{width:10px;height:14px;fill:currentColor}.dock-grip:hover,.dock-grip:focus-visible{color:var(--th-text);border-color:var(--th-border-strong)}.dock-grip.is-drag{cursor:grabbing;color:var(--th-red-signal)}.reset-layout{font:500 12px var(--f-mono)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:760px){.dock-grip,.reset-layout,.panel.dock-left{display:none}}.panel.dock-left[hidden]{display:none}.trace-edit .te-category select{height:32px;min-width:150px;padding:0 32px 0 8px;border:1px solid var(--th-border-strong);color:var(--th-white)}.trace-edit .te-category select{background-color:var(--th-raised);background-position:right 10px center;font:500 13px var(--f-ui);width:auto}.trace-edit .te-category select option{background:var(--th-panel);color:var(--th-white)}.trace-edit .te-category select:focus{outline:2px solid var(--th-red-signal);outline-offset:1px}.trace-edit .te-category{gap:4px}.trace-edit .te-category .cat-new,.trace-edit .te-category .error-text{margin:0}.quote-hint{margin:6px 0 0;color:var(--th-text-2);font-size:12.5px;text-align:center}.skin-flags{display:flex;flex-direction:column;gap:8px;padding-bottom:10px}.skin-group .skin-grid.skin-flag-pinned{display:grid;grid-template-columns:repeat(4,1fr);align-items:start;padding-bottom:0}.skin-pin{align-self:start;justify-self:start;padding:1px 6px;border:1px solid var(--th-border-strong);color:var(--th-muted);font:500 10px var(--f-mono);letter-spacing:.08em;text-transform:uppercase}.skin-flag-search{width:100%;height:32px;padding:0 10px;background:var(--th-raised);border:1px solid var(--th-border-strong);color:var(--th-white);font:13px var(--f-ui);border-radius:0;color-scheme:dark}.skin-flag-search::placeholder{color:var(--th-muted)}.skin-flag-search:focus-visible{outline:2px solid var(--th-red-signal);outline-offset:1px}.skin-group .skin-grid.skin-flag-grid{max-height:470px;overflow-y:auto;overscroll-behavior:contain;padding:0 4px 4px 0;scrollbar-width:thin}.skin-flag-note,.skin-print-note{margin:0;color:var(--th-muted)}@media(max-width:760px){.skin-group .skin-grid.skin-flag-pinned{display:flex;overflow:visible;align-items:flex-start;gap:8px}.skin-group .skin-grid.skin-flag-grid{max-height:none;overflow-y:hidden;overflow-x:auto}}.rot-grip{touch-action:none}.rot-grip .rot-stem{stroke:var(--th-white);stroke-width:1.5px;vector-effect:non-scaling-stroke}.rot-grip .rot-knob{fill:var(--th-white);stroke:var(--th-black);stroke-width:1.5px;vector-effect:non-scaling-stroke}.rot-grip .rot-icon{fill:none;stroke:var(--th-black);stroke-width:1.6px;stroke-linecap:round;vector-effect:non-scaling-stroke}.rot-grip .rot-pivot{fill:var(--th-white)}.rot-grip .rot-hit{fill:transparent;stroke:none;cursor:grab;touch-action:none;pointer-events:all}.rot-grip.dragging .rot-hit{cursor:grabbing}.rot-grip.dragging .rot-knob{stroke:var(--th-success);stroke-width:2.5px}.rot-grip.bad .rot-knob,.rot-grip.bad .rot-stem,.rot-grip:hover .rot-knob{stroke:var(--th-red-signal)}.rot-readout rect{fill:var(--th-black);fill-opacity:.92;stroke:var(--th-success);stroke-width:1.5px;vector-effect:non-scaling-stroke}.rot-readout.bad rect{stroke:var(--th-red-signal)}.rot-readout text{font-family:var(--f-mono);fill:var(--th-white);font-weight:600}.rot-readout .rot-state{fill:var(--th-success);font-weight:500}.rot-readout.bad .rot-state{fill:var(--th-red-signal)}.pocket.rot-ok path{stroke:var(--th-success);stroke-width:1.6}.pocket.rot-bad path{stroke:var(--th-red-signal);stroke-width:2;fill:#e5406a47}.save-tray{margin-top:10px;padding-top:10px;border-top:1px solid var(--th-border);display:flex;flex-direction:column;gap:8px}.save-tray-fields{display:flex;flex-direction:column;gap:6px}.save-tray-field{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--th-text-2)}.save-tray-field input,.save-tray-field textarea{font:inherit;font-size:14px;color:var(--th-white);background:var(--th-raised);border:1px solid var(--th-border-strong);border-radius:6px;padding:7px 9px;min-height:36px;resize:vertical}.save-tray-field textarea::placeholder{color:var(--th-muted)}.save-tray-public{display:flex;align-items:center;gap:8px;font-size:13px;min-height:36px;cursor:pointer}.save-tray-public input{width:18px;height:18px;accent-color:var(--th-red)}.save-tray-vis{margin-left:auto;font-size:12px;color:var(--th-text-2)}.save-tray-btn{width:100%;justify-content:center;min-height:44px}.save-tray-status.ok{color:var(--th-success)}.save-tray-status.warn{color:var(--th-warning)}.save-tray-status .ext-link{color:inherit;text-decoration:underline}.skin-custom-image{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0}.skin-custom-thumb{width:48px;height:48px;object-fit:cover;border-radius:6px;border:1px solid var(--th-border-strong)}.skin-custom-image .err{color:var(--th-red-signal);flex-basis:100%}.skin-rotate{display:inline-flex;flex-wrap:wrap;gap:8px}.skin-rotate .skin-rotate-btn[aria-pressed=true]{border-color:var(--th-red-signal);box-shadow:inset 0 0 0 1px var(--th-red-signal);color:var(--th-white)}.skin-rotate .skin-rotate-btn{width:auto;margin-top:0;padding:0 12px;gap:6px}.skin-rotate-ico{flex:none}@media(max-width:640px){.skin-rotate .skin-rotate-btn{height:44px;min-height:44px}}.skin-lowres-note{text-align:left;margin:2px 0 6px}.skin-restore-note{color:var(--th-warning)}.open-trays{margin-top:8px;display:flex;flex-direction:column;gap:6px}.open-trays ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:260px;overflow:auto}.open-trays li{display:flex;align-items:center;gap:8px;padding:6px 8px;background:var(--th-raised);border:1px solid var(--th-border);border-radius:6px;font-size:13px}.open-trays li .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-trays li .m{color:var(--th-text-2);font-size:12px;white-space:nowrap}.open-trays li button{min-height:36px}.preset-static{display:block;padding:9px 12px;border:1px solid var(--th-border);background:var(--th-raised);color:var(--th-white);font:500 13.5px/1.35 var(--f-ui);overflow-wrap:anywhere}.uisnip{container-type:inline-size}@container (max-width: 220px){.uisnip .row.cases .f:last-child,.uisnip .b.red{display:none}.uisnip .b.hl{padding:0 8px;gap:5px;font-size:12px}}.minibtn.mirror-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px}.minibtn .mi{width:12px;height:12px;flex:none;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}.trow .minibtn.trow-x{flex:none;width:26px;height:26px;padding:0;font-size:15px;line-height:1;color:var(--th-muted)}.trow .minibtn.trow-x:hover,.trow .minibtn.trow-x:focus-visible{color:var(--th-white);border-color:var(--th-red-signal)}.my-logos{display:flex;flex-direction:column;gap:8px;padding:2px 0 10px}.my-logos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}.my-logo-cell{display:flex;flex-direction:column;gap:2px;min-width:0}.my-logo .skin-thumb{background:repeating-conic-gradient(#1b1b1b 0 25%,#262626 0 50%) 0 0 / 14px 14px}.my-logo .skin-thumb img{object-fit:contain;padding:6px;box-sizing:border-box}.my-logo .skin-lbl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-logo-wait{position:absolute;inset:30%;border:1px dashed var(--th-border-strong)}.my-logo-wait.sm{position:static;display:inline-block;width:28px;height:28px}.my-logo-rm{align-self:center;font-size:11.5px}.my-logos-note{margin:0}.my-logos-add{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px}.my-logos-replace{margin:0;padding:10px;border:1px solid var(--th-red-signal);background:var(--th-black);display:flex;flex-direction:column;gap:8px}.my-logos-replace legend{padding:0 4px;color:var(--th-white)}.my-logos-replace-list{display:flex;flex-direction:column;gap:4px}.my-logos-replace-opt{display:flex;align-items:center;gap:8px;min-height:36px;padding:4px 8px;border:1px solid var(--th-border-strong);color:var(--th-text-2);cursor:pointer}.my-logos-replace-opt.on{border-color:var(--th-red-signal);color:var(--th-white)}.my-logos-replace-opt img{width:28px;height:28px;object-fit:contain;background:#222}.my-logos-replace-opt input{accent-color:var(--th-red)}.my-logos-replace-actions{display:flex;align-items:center;gap:12px}.open-trays li{flex-wrap:wrap}.open-trays ul:has(.text-edit){max-height:none}.open-trays li .linkbtn.open-tray-edit{min-height:36px;padding:0 4px}.text-edit{flex:1 1 100%;display:flex;flex-direction:column;gap:6px;margin-top:4px;padding:10px;background:var(--th-bg, #0b0b0c);border:1px solid var(--th-border-strong);border-radius:6px;cursor:default;min-width:0}.text-edit .te2-field{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--th-text-2);position:relative;min-width:0}.text-edit .te2-field .k{font:600 11px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--th-muted)}.text-edit input.text,.text-edit textarea,.text-edit select{font:inherit;font-size:14px;color:var(--th-white);background:var(--th-raised);border:1px solid var(--th-border-strong);border-radius:6px;padding:7px 9px;min-height:36px;width:100%;box-sizing:border-box;resize:vertical}.text-edit [aria-invalid=true]{border-color:var(--th-red-signal)}.text-edit .te2-count{align-self:flex-end;font:11px var(--f-mono);color:var(--th-muted)}.text-edit .te2-count.over{color:var(--th-red-signal)}.text-edit .te2-newcat{margin-top:4px}.text-edit .edit-err{margin:-2px 0 0}.text-edit .te2-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.text-edit .te2-actions .btn{min-height:36px}.text-edit .te2-free{color:var(--th-muted)}.tgroup.mytraces .trow .my-trace-edit{flex:none;margin-left:auto;min-height:32px;padding:0 4px}.tgroup.mytraces .trow-edit{list-style:none}.skin-preview.has-decal{touch-action:none}.decal-art image{pointer-events:none}.board-decal .decal-art{pointer-events:visiblePainted}.board-decal .decal-art image{pointer-events:all}.decal-pending rect{fill:#ffffff0f;stroke:#8b8c92;stroke-width:1;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.decal-pending text{fill:#b9bac0;font-family:var(--th-font-mono, ui-monospace, monospace)}.decal-hit{fill:transparent;stroke:none;cursor:move;touch-action:none;pointer-events:all;outline:none}.decal-hit:focus-visible{stroke:#e2203a;stroke-width:1.5;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}.decal-box{fill:none;stroke:#e2203a;stroke-width:1.5;stroke-dasharray:5 3;vector-effect:non-scaling-stroke;pointer-events:none}.decal-knob-line{stroke:#e2203a;stroke-width:1.2;vector-effect:non-scaling-stroke;pointer-events:none}.decal-knob{fill:#fff;stroke:#e2203a;stroke-width:2;vector-effect:non-scaling-stroke;cursor:grab;touch-action:none}.decal-corner{fill:#fff;stroke:#e2203a;stroke-width:2;vector-effect:non-scaling-stroke;cursor:nwse-resize;touch-action:none}.decal-panel{margin:12px 0 4px;padding-top:10px;border-top:1px solid var(--th-border)}.decal-controls{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:6px 0}.decal-controls .linkbtn{min-height:32px}.decal-controls .linkbtn.danger{color:#ff6b81}.decal-readout{font-size:12px;color:var(--th-text-2)}.decal-logos{margin-top:6px}.open-trays li.has-thumb .open-tray-thumb{flex:0 0 auto;width:84px;display:inline-flex}.tray-thumb{width:84px;height:auto;max-height:64px;background:var(--th-black);border-radius:4px}.howto-printer{padding-top:2px}.howto-hero-solo,.howto-steps.howto-steps-wide{grid-template-columns:1fr}.howto-pic.howto-pic-ui{height:auto;aspect-ratio:auto;position:static;display:block;background:#0e0e10}.howto-pic.howto-pic-ui img,.howto-pic.howto-pic-ui img.contain{position:static;inset:auto;width:100%;height:auto;object-fit:initial;display:block}.howto-lede-sm{margin-top:-4px;font-size:13px}.howto-split{display:grid;grid-template-columns:1fr;gap:12px;align-items:stretch}.howto-split-fig{display:flex;flex-direction:column}.howto-split-art{background:#0e0e10;border-bottom:1px solid var(--th-border);padding:10px;display:flex;justify-content:center;align-items:center}.howto-split-art img{height:auto;max-width:100%;display:block}.howto-split-bed{font-size:12px;color:var(--th-muted)}.howto-split-count{font:600 13px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--th-red-signal)}.howto-faq{padding-top:2px;padding-bottom:4px}.faq-a{margin:8px 0 6px;padding:12px 14px;border:1px solid var(--th-border);background:var(--th-raised)}.faq-a p{margin:0 0 10px;font-size:13px;line-height:1.5;color:var(--th-text-2)}.faq-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:12.5px}.faq-links .faq-dl{text-decoration:none}.faq-links .howto-meta{font-size:11.5px}.faq-a .nowrap{white-space:nowrap}.bar-row .fill-rim{height:38px;align-self:flex-end;white-space:nowrap}.solid-thumb{overflow:hidden}.solid-thumb-empty{display:grid;place-items:center;background:var(--th-black)}.solid-wheel-icon,.solid-badge{display:block;border-radius:50%;background:radial-gradient(closest-side,#fff,#fff0),conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.solid-wheel-icon{width:58%;aspect-ratio:1}.solid-badge{position:absolute;left:4px;bottom:4px;width:16px;height:16px;box-shadow:0 0 0 1px #0000008c}.solid-picker{display:flex;flex-direction:column;gap:9px;margin:0 0 10px;padding:10px;background:var(--th-black);border:1px solid var(--th-border-strong)}.solid-h,.solid-sec-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.solid-cur{font:500 12px var(--f-mono);color:var(--th-white)}.solid-main{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"wheel side" "bright bright";gap:9px 12px;align-items:start}.solid-main>.solid-wheel{grid-area:wheel}.solid-main>.solid-side{grid-area:side}.solid-main>.solid-bright{grid-area:bright}.solid-wheel{position:relative;flex:none;width:168px;height:168px;border-radius:50%;touch-action:none;cursor:crosshair;background:radial-gradient(closest-side,#fff,#fff0),conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.solid-wheel:focus-visible{outline:2px solid var(--th-red-signal);outline-offset:3px}.solid-knob{position:absolute;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #000,inset 0 0 0 1px #000;box-sizing:border-box;pointer-events:none}.solid-side{min-width:0;display:flex;flex-direction:column;gap:6px}.solid-swatch{position:relative;aspect-ratio:1;max-height:120px;border:1px solid var(--th-border-strong)}.solid-tag{position:absolute;left:4px;bottom:4px;padding:1px 5px;background:#000000c7;color:#fff;font:600 9.5px var(--f-mono);letter-spacing:.1em;text-transform:uppercase}.solid-hexbox{display:flex;align-items:center;border:1px solid var(--th-border-strong);background:var(--th-panel, #111)}.solid-hexbox:focus-within{outline:2px solid var(--th-red-signal);outline-offset:2px}.solid-hexbox.err{border-color:var(--th-red-signal);box-shadow:0 0 0 1px var(--th-red-signal)}.solid-hash{padding:0 2px 0 8px;color:var(--th-muted);font:500 14px var(--f-mono)}.solid-hex{flex:1;min-width:0;width:100%;padding:7px 6px 7px 0;background:none;border:0;outline:0;color:var(--th-white);font:500 14px var(--f-mono);text-transform:uppercase}.solid-err{margin:0;font-size:12px;line-height:1.3;color:var(--th-red-signal)}.solid-err:empty{display:none}.solid-bright{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px}.solid-range{-webkit-appearance:none;appearance:none;height:12px;margin:0;border:1px solid var(--th-border-strong)}.solid-range::-webkit-slider-thumb{-webkit-appearance:none;width:8px;height:20px;background:#fff;border:1px solid #000}.solid-range::-moz-range-thumb{width:8px;height:20px;background:#fff;border:1px solid #000;border-radius:0}.solid-range:focus-visible{outline:2px solid var(--th-red-signal);outline-offset:3px}.solid-pct{font:500 11px var(--f-mono);color:var(--th-white);min-width:3.2em;text-align:right}.solid-sec{display:flex;flex-direction:column;gap:5px}.solid-chips{display:grid;gap:6px}.solid-quick{grid-template-columns:repeat(7,minmax(0,1fr))}.solid-recent{grid-template-columns:repeat(8,minmax(0,1fr))}.solid-chip{aspect-ratio:1;min-width:0;padding:0;border:1px solid var(--th-border-strong);cursor:pointer}.solid-chip:focus-visible{outline:2px solid var(--th-red-signal);outline-offset:2px}.solid-chip.on{outline:2px solid var(--th-red-signal);outline-offset:2px}.solid-chip.empty{border-style:dashed;background:none;cursor:default}.solid-help,.solid-notice{margin:0}.solid-notice{color:#f6c64f}.skin-pocket--hi{stroke:#8a8b90;stroke-width:1.35;vector-effect:non-scaling-stroke}@media(max-width:700px){.solid-wheel{width:196px;height:196px}.solid-swatch{max-height:none}}@media(max-width:639.98px){.maker-link .maker-text{display:none}.maker-link{width:44px;height:44px;min-width:44px;justify-content:center;flex:none;margin:-8px 0}.maker-emblem{width:24px;height:24px}}.skin-custom-tile{overflow:hidden}.skin-custom-tile img{object-fit:cover;object-position:50% 50%}.thumb.has-photo{width:72px;height:40px}.thumb.has-photo image{filter:drop-shadow(0 0 .6px rgba(255,255,255,.55))}.tray-photos image{opacity:.96}.tray-photo-toggle{position:absolute;left:30px;bottom:30px;z-index:1;cursor:pointer;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--th-text-2);background:#14161ad9;color:var(--th-text-2, #ccc)}.tray-photo-toggle .i{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}.tray-photo-toggle.on{border-color:var(--th-red-signal);color:#fff;background:#281414e6}@media(max-width:760px){.tray-photo-toggle{left:12px;bottom:12px;font-size:11px}}.pc-bar[data-panel=traces] .trace-upload-fold{display:none;height:28px;padding:0 12px;font-size:12px;cursor:pointer;border:1px solid var(--th-red-signal, #e2203a);color:#fff;gap:6px;align-items:center}.pc-bar[data-panel=traces].is-closed .trace-upload-fold{display:inline-flex}.pc-bar[data-panel=traces] .trace-upload-fold .i{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}.p3d-photos{top:34px}.text-panel{margin:12px 0 4px;padding:10px 10px 8px;border:1px solid var(--th-border);border-top:2px solid #B01238;background:#ffffff04}.text-h .lbl{display:inline-flex;align-items:center;gap:6px}.text-new{font:700 9px/1 var(--f-mono);letter-spacing:.1em;color:#fff;background:#b01238;padding:3px 5px}.text-chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.text-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:32px;padding:4px 9px;background:var(--th-black, #0b0b0c);color:var(--th-text-2);border:1px solid var(--th-border-strong);font:500 12px var(--f-mono);cursor:pointer}.text-chip .n{color:var(--th-muted)}.text-chip .sw{width:10px;height:10px;border:1px solid #55565c;flex:none}.text-chip .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.text-chip.on{border-color:#e5406a;box-shadow:inset 0 0 0 1px #e5406a;color:#fff}.text-chip.text-add{color:#fff;border-style:dashed}.text-chip:disabled{opacity:.45;cursor:not-allowed}.tl-edit{display:flex;flex-direction:column;gap:6px;margin-top:4px}.tl-edit .fine{text-align:left}.text-row-h{display:flex;justify-content:space-between;align-items:baseline;margin-top:6px}.text-row-h .lbl{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-muted)}.text-input{width:100%;box-sizing:border-box;border:1px solid #B01238}.text-input:focus{outline:2px solid #E5406A;outline-offset:0}.text-fonts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.text-font{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 4px 5px;background:var(--th-black, #0b0b0c);color:#fff;border:1px solid var(--th-border-strong);cursor:pointer}.text-font .nm{font:500 10px var(--f-mono);color:var(--th-muted)}.text-font.on{border-color:#e5406a;box-shadow:inset 0 0 0 1px #e5406a}.text-font-sample{width:100%;height:20px}.text-colors{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.text-colors .text-swatch{width:28px;height:28px;aspect-ratio:auto}.text-wheel-btn{width:28px;height:28px;padding:0;border:1px solid var(--th-border-strong);background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:50%;cursor:pointer}.text-wheel-btn .solid-wheel-icon{display:none}.text-wheel-btn.on{outline:2px solid #E5406A;outline-offset:2px}.text-hex{margin-left:auto;padding:4px 6px;border:1px solid var(--th-border-strong);font-size:12px;color:var(--th-text-2)}.text-size{position:relative}.text-range{width:100%;accent-color:#B01238}.text-fit-tick{position:absolute;top:2px;left:var(--fit);width:2px;height:14px;background:#f0c419;pointer-events:none;transform:translate(-1px)}.text-size-scale{display:flex;justify-content:space-between}.text-size-scale .fit{color:#f0c419}.text-art path{pointer-events:none}.text-art-hit{fill:transparent;pointer-events:all}.text-handles .decal-box,.text-handles .decal-knob,.text-handles .decal-corner,.text-handles .decal-knob-line{stroke:#e5406a}.tl-edit input.text-input{height:38px;padding:0 10px;background:var(--th-raised);color:var(--th-white);font:500 14px var(--f-ui);border-radius:0}.tools-add{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:stretch;margin-bottom:10px}.tools-add .seg{height:38px}.tools-add .seg .segbtn{flex:1;justify-content:center;white-space:nowrap}.tools-add .tm-btn{width:100%;height:38px}.tools-add .tm-menu{grid-column:1 / -1}.tgroup.mytraces .tlist.mt-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;flex-direction:unset}.tools-window .tgroup.mytraces .tlist.mt-cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.tgroup.mytraces .tlist.mt-cards.mt-cards-sm{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tgroup.mytraces .trow.mt-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;background:var(--th-raised);border:1px solid var(--th-border);cursor:pointer;min-width:0}.tgroup.mytraces .trow.mt-card:hover,.tgroup.mytraces .trow.mt-card:focus-within{border-color:var(--th-red-signal)}.tgroup.mytraces .trow.mt-card.is-placed,.tgroup.mytraces .trow.mt-card.is-editing{border-color:var(--th-red-signal)}.tgroup.mytraces .trow.mt-card.is-drop{border:1px dashed var(--th-red-signal);background:#e5406a14}.tgroup.mytraces .trow.mt-card[draggable=true]{cursor:grab}.mt-thumb{position:relative;aspect-ratio:1 / 1;width:100%;background:#16171a;padding:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.mt-thumb .thumb,.mt-thumb .thumb.has-photo{width:100%;height:100%}.mt-thumb .thumb path{stroke-width:1.6;stroke:var(--th-text-2)}.mt-badge,.mt-ontray{position:absolute;top:6px;font:600 11px/1 var(--f-mono);letter-spacing:.06em;padding:3px 5px;text-transform:uppercase}.mt-badge{left:6px;color:var(--th-muted);background:#0b0b0cbf;border:1px solid var(--th-border-strong)}.mt-ontray{right:6px;color:var(--th-white);background:var(--th-red);border:1px solid var(--th-red-signal)}.mt-busy{position:absolute;left:6px;bottom:6px;font:11px var(--f-mono);color:var(--th-text-2)}.mt-card-sm .mt-badge,.mt-card-sm .mt-ontray{font-size:9.5px;padding:2px 4px;top:4px}.mt-card-sm .mt-badge{left:4px}.mt-card-sm .mt-ontray{right:4px}.tgroup.mytraces .trow .mt-edit{position:absolute;right:6px;bottom:6px;width:28px;height:28px;min-height:0;margin:0;padding:0;display:flex;align-items:center;justify-content:center;background:#0b0b0ccc;border:1px solid var(--th-border-strong);color:var(--th-text-2);opacity:.55;cursor:pointer}.tgroup.mytraces .trow .mt-edit svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round}.tgroup.mytraces .trow.mt-card:hover .mt-edit,.tgroup.mytraces .trow .mt-edit:focus-visible,.tgroup.mytraces .trow .mt-edit[aria-expanded=true]{opacity:1;color:var(--th-white);border-color:var(--th-red-signal)}@media(hover:none){.tgroup.mytraces .trow .mt-edit{opacity:1}}.tgroup.mytraces .trow .mt-rot{position:absolute;left:4px;right:36px;bottom:6px;display:flex;gap:2px;justify-content:flex-end}.tgroup.mytraces .trow .mt-rot180{height:28px;min-height:0;margin:0;padding:0 6px;display:flex;align-items:center;gap:4px;background:#0b0b0ccc;border:1px solid var(--th-border-strong);color:var(--th-text-2);font:600 11px/1 var(--f-mono);letter-spacing:.04em;opacity:.55;cursor:pointer}.tgroup.mytraces .trow .mt-rot180 svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.tgroup.mytraces .trow.mt-card:hover .mt-rot180,.tgroup.mytraces .trow .mt-rot180:focus-visible{opacity:1;color:var(--th-white);border-color:var(--th-red-signal)}.tgroup.mytraces .trow .mt-rot180:disabled{opacity:.35;cursor:progress}@media(hover:none){.tgroup.mytraces .trow .mt-rot180{opacity:1}}.mt-meta{margin:0;padding:8px 10px 10px;display:grid;gap:2px;min-width:0}.mt-meta dt{font:500 10.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--th-muted)}.mt-meta dt+dd+dt{margin-top:4px}.mt-meta dd{margin:0;min-width:0}.mt-meta .tname{font:600 14px/1.2 var(--f-display);color:var(--th-white);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.mt-meta .mt-depth{font:13px var(--f-mono);color:var(--th-white)}.mt-meta .mt-depth.unset{color:var(--th-muted);font-size:12px}.mt-card-sm .mt-meta{padding:6px 7px 8px}.mt-card-sm .mt-meta .tname{font-size:12.5px}.mt-card-sm .mt-meta .mt-depth{font-size:12px}.tgroup.mytraces .trow-edit.mt-edit-row{grid-column:1 / -1;border:1px solid var(--th-red-signal);background:var(--th-panel);padding:10px}.tgroup.mytraces .mt-band{grid-column:1 / -1;list-style:none;margin:0;padding:6px;border:1px solid var(--th-border);border-left:2px solid var(--th-red);background:#ffffff05;min-width:0}.tgroup.mytraces .tlist.mt-band-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;align-items:start}.tgroup.mytraces .mt-band-fits{list-style:none;margin:0;min-width:0}.tgroup.mytraces .tlist.mt-band-mags{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0}.tools-window .tgroup.mytraces .tlist.mt-band-row{grid-template-columns:minmax(150px,220px) minmax(0,1fr)}.tools-window .tgroup.mytraces .tlist.mt-band-mags{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.tgroup.mytraces .trow.mt-card-fit{border-color:color-mix(in srgb,var(--th-red) 55%,var(--th-border))}.tgroup.mytraces .trow .mt-unfit{position:absolute;right:6px;top:6px;width:22px;height:22px;min-height:0;margin:0;padding:0;display:flex;align-items:center;justify-content:center;background:#0b0b0ccc;border:1px solid var(--th-border-strong);color:var(--th-text-2);font:600 14px/1 var(--f-mono);opacity:.55;cursor:pointer}.tgroup.mytraces .trow.mt-card:hover .mt-unfit,.tgroup.mytraces .trow .mt-unfit:focus-visible{opacity:1;color:var(--th-white);border-color:var(--th-red-signal)}@media(hover:none){.tgroup.mytraces .trow .mt-unfit{opacity:1}}.tgroup.mytraces .mt-card-fit .mt-ontray{right:34px}.text-edit .te2-also{border:0;padding:0;margin:0}.text-edit .te2-also-list{display:flex;flex-wrap:wrap;gap:4px 12px}.text-edit .te2-also-opt{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--th-text);cursor:pointer}.mt-group-sub{margin-left:6px;font:500 11px var(--f-ui);letter-spacing:0;text-transform:none;color:var(--th-muted)}.mt-group.is-drop{outline:1px dashed var(--th-red-signal);outline-offset:2px}.mt-link-note .linkbtn{margin-left:4px}.te2-ro{display:inline-flex;align-items:center;min-height:32px;color:var(--th-text-2);font-size:13px}.te2-depth-note{display:block;color:var(--th-muted)}.text-edit .te2-depth-in{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.text-edit .te2-depth-in input{flex:1 1 120px;min-width:0}.text-edit .te2-depth-unit{font:600 12px var(--f-mono);font-style:normal;color:var(--th-muted)}.text-edit .te2-depth-echo{color:var(--th-muted);font:12px var(--f-mono)}@media(max-width:360px){.tgroup.mytraces .tlist.mt-cards{grid-template-columns:1fr}.tgroup.mytraces .tlist.mt-cards.mt-cards-sm{grid-template-columns:repeat(2,minmax(0,1fr))}}.depth-block{display:grid;gap:4px;padding:4px 0 8px}.depth-block>.lbl{margin-bottom:2px}.depth-block .depth-rec .v{display:inline-flex;align-items:center;gap:10px}.depth-block .depth-rec-val{font:600 14px var(--f-mono);color:var(--th-white)}.depth-block .depth-use{flex:none;height:28px;min-width:56px}.depth-block .depth-using{color:var(--th-success);border-color:color-mix(in srgb,var(--th-success) 45%,transparent)}.depth-status{margin:0;font:11px/1.4 var(--f-mono);color:var(--th-muted)}.depth-status.warn{color:var(--th-red-signal)}.tray-actions{display:flex;align-items:center;gap:8px;padding:0 28px 14px;flex-wrap:nowrap;overflow-x:auto}.tray-actions .ta-group{display:flex;gap:8px;flex:none}.tray-actions .ta-btn{flex:none;height:36px;min-width:112px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--th-white)}.tray-actions .ta-btn:disabled{opacity:.4;cursor:not-allowed}.tray-actions .ta-btn .mi{width:13px;height:13px}.tray-actions .ta-btn[aria-pressed=true]{border-color:var(--th-red-signal);background:#e20d1c2e}.tray-actions .ta-div{flex:none;width:0;height:28px;border-left:1px dashed var(--th-border-strong);margin:0 6px}.tray-actions .ta-readout{margin-left:auto;padding-left:12px;font:11px var(--f-mono);color:var(--th-text-2);white-space:nowrap}.board.placing-text{cursor:text}.stage+.tray-actions+.hint{margin-top:0}.text-inline{overflow:visible}.text-inline-input{width:100%;box-sizing:border-box;padding:0 2px;border:.3px dashed var(--th-red-signal);background:#0b0b0c40;color:transparent;caret-color:#fff;font-family:var(--f-mono);text-align:center;outline:none}.text-format-bar{position:absolute;z-index:30;display:flex;align-items:center;gap:4px;height:40px;padding:0 6px;background:var(--th-panel);border:1px solid var(--th-border-strong);box-shadow:0 6px 18px #0000008c;font:12px var(--f-ui);color:var(--th-white);white-space:nowrap}.text-format-bar .tfb-btn{height:30px;padding:0 8px;background:var(--th-raised);border:1px solid var(--th-border);color:var(--th-white);display:inline-flex;align-items:center;gap:6px;cursor:pointer;font:inherit}.text-format-bar .tfb-btn:hover{border-color:var(--th-border-strong)}.text-format-bar .tfb-btn:disabled{opacity:.4;cursor:not-allowed}.text-format-bar .tfb-btn.on,.text-format-bar .tfb-btn[aria-expanded=true]{border-color:var(--th-red-signal)}.text-format-bar .tfb-sq{width:30px;padding:0;justify-content:center}.text-format-bar .tfb-sq sup{font-size:9px}.text-format-bar .tfb-font-btn{min-width:150px;justify-content:space-between}.text-format-bar .tfb-face{max-width:160px;overflow:hidden;text-overflow:ellipsis}.text-format-bar .tfb-color-btn .sw{width:12px;height:12px;border:1px solid var(--th-border-strong);display:inline-block}.text-format-bar .tfb-del svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4}.text-format-bar .tfb-sep{width:0;height:22px;border-left:1px solid var(--th-border);margin:0 2px}.text-format-bar .tfb-dd{position:relative}.text-format-bar .tfb-menu{position:absolute;top:34px;left:0;z-index:31;background:var(--th-panel);border:1px solid var(--th-border-strong);box-shadow:0 8px 22px #0009;padding:6px}.text-format-bar.below .tfb-menu{top:34px}.text-format-bar .tfb-fonts{width:280px;max-height:360px;overflow-y:auto}.text-format-bar .tfb-group-h{font:600 10.5px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--th-muted);padding:6px 4px 4px}.text-format-bar .tfb-font{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:8px;width:100%;height:34px;padding:0 6px;background:none;border:1px solid transparent;color:var(--th-white);cursor:pointer;text-align:left}.text-format-bar .tfb-font:hover,.text-format-bar .tfb-font.on{background:var(--th-raised);border-color:var(--th-border-strong)}.text-format-bar .tfb-font.on{border-color:var(--th-red-signal)}.text-format-bar .tfb-font .text-font-sample{width:120px;height:20px;color:var(--th-white)}.text-format-bar .tfb-font .nm{font:11px var(--f-mono);color:var(--th-text-2)}.text-format-bar .tfb-sizes{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;width:190px}.text-format-bar .tfb-size-opt{height:26px;background:none;border:1px solid transparent;color:var(--th-white);cursor:pointer;font-size:12px}.text-format-bar .tfb-size-opt.on,.text-format-bar .tfb-size-opt:hover:not(:disabled){border-color:var(--th-red-signal)}.text-format-bar .tfb-size-opt:disabled{color:var(--th-muted);opacity:.5;cursor:not-allowed}.text-format-bar .tfb-size-free{grid-column:1 / -1;display:flex;align-items:center;gap:6px;padding:4px;font-size:11px;color:var(--th-muted)}.text-format-bar .tfb-size-free input{width:60px;background:var(--th-raised);border:1px solid var(--th-border);color:var(--th-white)}.text-format-bar .tfb-colors{width:250px}.tfb-notes{position:absolute;z-index:30;display:flex;flex-direction:column;justify-content:center;padding:3px 8px;background:var(--th-panel);border:1px solid var(--th-border);box-shadow:0 4px 12px #00000073;pointer-events:none;overflow:hidden}.tfb-notes .tfb-note{display:block;margin:0;text-align:left;height:18px;line-height:18px;color:var(--th-warning);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.text-format-bar .tfb-level{height:30px}.tfb-notes .tfb-level-hint,.text-level-hint{color:var(--th-muted)}.text-level-hint{margin-left:8px}.text-glyph-note{color:var(--th-warning);margin-top:6px}.text-small-note{color:var(--th-warning)}.text-panel .text-fonts{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}@media(max-width:760px){.tools-add{grid-template-columns:1fr}.tray-actions{position:sticky;bottom:0;z-index:20;background:var(--th-canvas);padding:6px 8px;gap:4px;border-top:1px solid var(--th-border)}.tray-actions .ta-group{gap:4px}.tray-actions .ta-btn{min-width:0;padding:0 6px;font-size:11px;gap:4px}.tray-actions .ta-div{margin:0 2px}.tray-actions .ta-readout{display:none}.tray-actions.can-scroll{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 28px),transparent)}.text-format-bar{overflow-x:auto}}.work>.stage{flex:0 0 auto}.guide-ctl{margin-left:auto;display:flex;align-items:center;gap:10px;height:34px;padding:0 12px;border:1px solid var(--th-border);background:var(--th-black);flex:none;white-space:nowrap}.guide-lbl{font:600 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--th-text-2)}.guide-lbl .gl-short{display:none}.guide-sw{width:38px;height:20px;border-radius:10px;background:var(--th-border-strong, var(--th-border));position:relative;border:0;padding:0;cursor:pointer;flex:none}.guide-sw:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--th-white);transition:left .15s}.guide-sw[aria-checked=true]{background:var(--th-red)}.guide-sw[aria-checked=true]:after{left:20px}.guide-state{font:600 10px var(--f-mono);letter-spacing:.12em;color:var(--th-white);min-width:24px}.guide-meter{display:flex;align-items:center;gap:8px;font:600 10px var(--f-mono);color:var(--th-muted)}.guide-dots{display:flex;gap:5px}.guide-dots i{width:18px;height:3px;background:var(--th-border);display:block}.guide-meter .guide-dots i{width:10px}.guide-dots i.done{background:var(--th-text-2)}.guide-dots i.on{background:var(--th-red)}@media(max-width:719.98px){.guide-lbl .gl-long{display:none}.guide-lbl .gl-short{display:inline}.guide-ctl{margin-left:0;gap:8px;padding:0 8px}.guide-meter .guide-dots{display:none}}.guide-layer{position:fixed;inset:0;pointer-events:none;z-index:900}.guide-layer *{pointer-events:none}.guide-spot{position:absolute;border-radius:6px;box-shadow:0 0 0 9999px #00000073;outline:2px solid var(--th-red-signal);outline-offset:3px;animation:guide-pulse 1.8s ease-in-out infinite}@keyframes guide-pulse{50%{outline-color:#e5406a59;outline-offset:6px}}.guide-arrow{position:absolute;width:0;height:0}.guide-arrow.a-bottom{border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:12px solid var(--th-red)}.guide-arrow.a-top{border-left:10px solid transparent;border-right:10px solid transparent;border-top:12px solid var(--th-red)}.guide-arrow.a-right{border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:12px solid var(--th-red)}.guide-arrow.a-left{border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:12px solid var(--th-red)}.guide-layer .guide-bubble,.guide-layer .guide-bubble *{pointer-events:auto}.guide-bubble{position:absolute;box-sizing:border-box;background:var(--th-panel, #141416);color:var(--th-white);border:1px solid var(--th-red);border-top:3px solid var(--th-red);padding:14px 16px 12px;box-shadow:0 10px 30px #0009;font-size:13px;line-height:1.4}.guide-bubble .gb-step{font:600 10px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--th-red-signal)}.guide-bubble h3{margin:4px 22px 6px 0;font:700 16px var(--f-display, system-ui);letter-spacing:.03em;text-transform:none;color:var(--th-white)}.guide-bubble p{margin:0 0 8px;color:var(--th-text-2)}.guide-bubble .gb-note{font-size:12px;color:var(--th-muted)}.guide-bubble .gb-hint{font-size:12px;color:var(--th-warning)}.guide-bubble .gb-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;flex-wrap:wrap}.guide-bubble .gb-acts{display:flex;align-items:center;gap:12px;margin-left:auto;white-space:nowrap}.guide-bubble .gb-acts .linkbtn{white-space:nowrap}.guide-bubble .gb-acts .btn{margin-top:0;flex:none;width:auto;height:34px;padding:0 14px;font-size:13px}.guide-bubble .gb-x{all:unset;cursor:pointer;color:var(--th-muted);font:600 16px var(--f-mono);position:absolute;top:8px;right:10px;line-height:1;padding:2px 4px}.guide-bubble .gb-x:hover,.guide-bubble .gb-x:focus-visible{color:var(--th-white)}@media(prefers-reduced-motion:reduce){.guide-spot{animation:none}.guide-sw:after{transition:none}}.tgroup.mytraces .trow .mt-rot180.is-on{border-color:var(--th-red-signal)}.tgroup.mytraces .trow .mt-rot .mt-rot180 svg{display:none}.tgroup.mytraces .trow .mt-rot .mt-rot180{position:relative;flex:0 1 auto;min-width:0;height:24px;padding:0 3px;font-size:10px;letter-spacing:0}.sandbox-banner{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:10px 20px;background:#302716;color:#f2d991;border-bottom:1px solid #65502c;font-size:12px}.sandbox-banner strong{letter-spacing:.08em}.sandbox-banner [role=status]{margin-left:auto;color:#cae4b6}.sandbox-steps{display:flex;justify-content:center;gap:12px;padding:10px 18px;border-bottom:1px solid var(--th-border);background:var(--th-panel)}.sandbox-steps button{border:1px solid var(--th-border);border-radius:8px;background:transparent;color:var(--th-text,#e8e8ec);padding:10px 18px;font:inherit;cursor:pointer;font-size:13px}.sandbox-steps button:hover,.sandbox-steps button:focus-visible{border-color:var(--th-red-signal);background:#b0123820}.workbench-shell .app{height:calc(100vh - 175px);grid-template-columns:minmax(250px,290px) minmax(380px,1fr) minmax(280px,330px)}.workbench-shell .app.popped{grid-template-columns:1fr}.workbench-shell .work{padding:14px 18px;gap:10px}.workbench-shell .top{height:auto;min-height:60px}.workbench-shell .board{max-height:calc(100vh - 330px);min-height:300px}.workbench-shell .cta{position:static;padding:14px}.sandbox-restore{padding:12px 20px;display:flex;gap:12px;align-items:center;background:#273829;color:#e3f1d8;font-size:13px}.sandbox-restore button,.sandbox-review button{font:inherit;color:inherit;background:transparent;border:1px solid currentColor;border-radius:6px;padding:7px 10px;cursor:pointer}.sandbox-review{margin:8px 0;padding:15px;border:1px solid #64502c;background:#292316;border-radius:9px;color:#f3d895;font-size:13px}.sandbox-review-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.sandbox-review h3{font:600 14px var(--f-ui,sans-serif);margin:0}.sandbox-review ul{list-style:none;padding:0;margin:12px 0 0}.sandbox-review li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 0;border-top:1px solid #64502c}.sandbox-review li.info{color:#c5d0c8}.sandbox-review p{margin:8px 0 0}.sandbox-library{padding:4px 0 14px}.sandbox-library>p{font-size:11px;color:#b7bcc4;line-height:1.5}.sandbox-library>button{display:flex;width:100%;align-items:center;gap:12px;padding:12px;margin:8px 0;background:#202026;border:1px solid var(--th-border);border-radius:8px;color:#eee;font:inherit;cursor:pointer;text-align:left}.sandbox-library>button:hover{border-color:var(--th-red-signal)}.sandbox-library svg{width:75px;height:38px;flex:none}.sandbox-library path{fill:#51535d;stroke:#c4c6cd;stroke-width:1.5}.sandbox-library button>span:last-child{margin-left:auto;color:var(--th-red-signal);font-size:22px}.sandbox-export-note{font-size:12px;line-height:1.5;color:#d8c18a}.workbench-shell .export-btns{opacity:.5}.workbench-shell button:focus-visible{outline:2px solid #e5406a;outline-offset:3px}@media(max-width:1100px){.workbench-shell .app{grid-template-columns:240px minmax(320px,1fr) 285px}.workbench-shell .top-r{flex-wrap:wrap;justify-content:flex-end}.sandbox-steps{gap:5px}.sandbox-steps button{padding:9px 10px}}@media(max-width:900px){.workbench-shell .app{display:flex;flex-direction:column;height:auto;overflow:visible}.workbench-shell .panel.dock-left{order:0}.workbench-shell .work{order:1}.workbench-shell aside.panel:not(.dock-left){order:2}.workbench-shell .dock-left .pscroll{max-height:330px}.workbench-shell .board{min-height:250px}.sandbox-steps{flex-wrap:wrap}.sandbox-banner{gap:8px}.sandbox-banner [role=status]{margin-left:0}.sandbox-restore{flex-wrap:wrap}.sandbox-review-head{align-items:flex-start;flex-direction:column}}.trace-catalog-controls{display:grid;gap:10px;padding:12px 0}.trace-catalog-controls label{display:grid;gap:5px;font-size:13px}.trace-catalog-controls input,.trace-catalog-controls select{width:100%;min-width:0}.trace-catalog .mt-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.trace-catalog .mt-thumb{height:100px;aspect-ratio:auto}.trace-catalog .mt-meta{padding:8px}.trace-catalog .mt-meta dt{font-size:10px}.trace-catalog .mt-meta .tname{font-size:13px;white-space:normal;overflow-wrap:anywhere}.trace-catalog .mt-depth{font-size:12px}.trace-catalog .mt-rot{display:none}.trace-catalog .mt-badge,.trace-catalog .mt-ontray{font-size:9px}.trace-catalog nav{display:flex;justify-content:space-between;gap:12px;margin-top:12px}.trace-catalog .mt-edit-row{grid-column:1/-1}.sample-catalog{padding:12px;border:1px solid #444;border-radius:8px;margin-bottom:16px}.sample-catalog>p{font-size:12px;color:#b7bec5}.trace-catalog-list .mt-cards{grid-template-columns:1fr}.trace-catalog-list .mt-card{display:grid;grid-template-columns:85px 1fr;align-items:center}.trace-catalog-list .mt-thumb{height:75px}.trace-catalog-list .mt-badge,.trace-catalog-list .mt-ontray{display:none}.trace-catalog-controls [aria-pressed=true]{outline:2px solid #ff225e}.vision-library{padding:16px;border:1px solid #41434b;background:linear-gradient(150deg,#24262d,#191b20);border-radius:14px;margin-bottom:18px;position:relative}.vision-library header h3{font-size:23px;line-height:1.15;margin:9px 0}.vision-library header p,.vision-hint,.vision-detail>p{font-size:12px;color:#aeb6c3;line-height:1.5}.vision-eyebrow{font-size:9px;letter-spacing:1.5px;color:#ff607f}.vision-tabs{display:flex;gap:4px;flex-wrap:wrap;margin:16px 0}.vision-library button{border-radius:7px;text-transform:none;letter-spacing:0;font-family:inherit}.vision-tabs button{font-size:11px;padding:8px}.vision-library [aria-pressed=true]{background:#4b2432;border-color:#ff416d;color:#fff}.vision-search{display:grid;gap:6px;font-size:12px}.vision-search input{width:100%;box-sizing:border-box;min-height:40px}.vision-toolbar{display:flex;justify-content:space-between;align-items:end;gap:8px;margin-top:12px}.vision-toolbar label{display:grid;gap:4px;font-size:11px;min-width:0}.vision-toolbar select{max-width:170px}.vision-toolbar button{font-size:11px;padding:8px}.vision-count{font-size:11px;color:#aeb6c3;margin:12px 0}.vision-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.vision-results article{position:relative;border:1px solid #414650;border-radius:10px;overflow:hidden;background:#20232a}.vision-results article.active{border-color:#ff416d;box-shadow:0 0 0 1px #ff416d}.vision-preview{width:100%;padding:10px;background:transparent!important;border:0!important;text-align:left;display:grid;gap:8px}.vision-preview svg{width:100%;height:70px;fill:#45515e;stroke:#cbd5df;stroke-width:1.5}.vision-preview strong{display:block;font-size:12px;line-height:1.3}.vision-preview small{display:block;font-size:10px;color:#aeb6c3;margin-top:5px}.vision-star{position:absolute;right:4px;top:4px;padding:2px 7px!important;font-size:18px;background:#191b20!important}.vision-results.list{grid-template-columns:1fr}.vision-results.list .vision-preview{grid-template-columns:65px 1fr;align-items:center;padding-right:35px}.vision-results.list svg{height:42px}.vision-pagination{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:14px;font-size:11px}.vision-pagination button{font-size:11px;padding:7px}.vision-empty{padding:20px 8px;text-align:center;color:#b8c0ca}.vision-empty h4{color:#fff}.vision-empty p{font-size:12px}.vision-detail{margin-top:14px;padding:14px;background:#12151b;border:1px solid #ff416d;border-radius:12px}.vision-detail-heading{display:flex;align-items:center;justify-content:space-between}.vision-detail>svg{width:100%;height:120px;fill:#394957;stroke:#d4e2f0;stroke-width:1.5}.vision-detail h3{font-size:20px;margin:6px 0}.vision-detail dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.vision-detail dt{font-size:10px;color:#9ba7b7}.vision-detail dd{margin:5px 0;font-size:13px}.vision-detail>button{width:100%;margin-top:8px}.vision-add{background:#ff225e!important;color:#fff!important;border-color:#ff225e!important}.vision-added{font-size:12px;color:#ade3bd}.vision-workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 4px 8px}.vision-workspace-heading h2{font-size:clamp(24px,3vw,36px);margin:6px 0;letter-spacing:-1px}.vision-workspace-heading p{color:#aeb6c3;font-size:13px;margin:5px 0}.vision-project-pill{padding:10px 14px;border:1px solid #46505a;border-radius:30px;font-size:12px;white-space:nowrap}@media(max-width:700px){.vision-workspace-heading{display:block}.vision-project-pill{display:inline-block;margin-top:10px}}dialog.vision-detail{position:fixed;inset:24px 24px 24px auto;width:min(390px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);height:fit-content;margin:auto 0;box-sizing:border-box;overflow-y:auto;color:#eef1f5;padding:22px;box-shadow:0 24px 100px #000b;z-index:1000}dialog.vision-detail::backdrop{background:#05080d99;backdrop-filter:blur(3px)}dialog.vision-detail .vision-detail-heading button{min-width:40px;min-height:40px;font-size:22px}dialog.vision-detail>svg{height:180px}@media(max-width:600px){dialog.vision-detail{inset:auto 12px 12px;width:calc(100vw - 24px);max-height:calc(100dvh - 36px);margin:0;border-radius:16px}}.arrange-bar{border:1px solid #414650;border-radius:12px;background:linear-gradient(110deg,#262a32,#1c1e25);padding:14px;margin:10px 0}.arrange-bar strong{font-size:16px}.arrange-bar small{display:block;color:#aeb6c3;margin:5px 0 12px;font-size:11px}.arrange-buttons{display:flex;flex-wrap:wrap;gap:6px}.arrange-buttons button{font-size:11px;padding:8px 10px;border-radius:6px;text-transform:none}.arrange-buttons [aria-pressed=true]{border-color:#54d9db;color:#54d9db}.arrange-bar p{font-size:11px;color:#aeb6c3;margin-bottom:0}.p3d-failure{position:absolute;inset:16px;z-index:5;background:#20232af5;border:1px solid #ff416d;border-radius:12px;padding:24px;height:fit-content;color:#fff}.p3d-failure p{font-size:13px;overflow-wrap:anywhere}.floating-inspector{position:fixed;right:18px;top:100px;width:340px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 125px);overflow:auto;z-index:1100;background:#191c23;border:1px solid #ff416d;border-radius:12px;box-shadow:0 20px 75px #0009;color:#eef1f5}.floating-inspector>header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:#27222d;position:sticky;top:0;z-index:2;font-size:10px;letter-spacing:1.5px;color:#ff7897}.floating-inspector>header button{width:36px;height:34px;font-size:24px;background:transparent;border:0;color:#fff;cursor:pointer}.floating-inspector .pc{margin:0;border:0}.floating-inspector .dock-grip{display:none}.floating-inspector input,.floating-inspector select{max-width:100%;box-sizing:border-box}.floating-inspector .pc-body{padding:12px}@media(max-width:650px){.floating-inspector{top:auto;bottom:12px;right:12px;width:calc(100vw - 24px);max-height:55dvh}}.workbench-shell .app{grid-template-columns:300px minmax(0,1fr)!important;height:calc(100dvh - 160px)}.workbench-shell .work{min-width:0;overflow:auto}.workbench-shell .workspace-settings{display:none}.workbench-shell .workspace-settings.settings-open{display:block;position:fixed;right:16px;top:100px;bottom:16px;width:340px;max-width:calc(100vw - 32px);z-index:1090;border:1px solid #46505a;border-radius:12px;box-shadow:0 20px 70px #000a}.workspace-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.workspace-actions>span{font-size:10px;letter-spacing:1.5px;color:#9aa7b6}.workspace-actions button{font-size:11px;border-radius:6px;padding:8px 12px}.vision-workspace-heading{display:none}.workbench-shell .board{max-height:none;min-height:320px;height:min(62dvh,700px)}.workbench-shell .dock-left .pscroll{max-height:none}.vision-library{padding:10px}.vision-library header h3{font-size:17px}.vision-library header p{font-size:10px}.vision-library .vision-eyebrow{display:none}.arrange-bar{padding:9px;margin:4px 0}.arrange-bar strong{font-size:13px}.arrange-bar small{margin:3px 0 7px}.arrange-buttons button{padding:6px 8px;font-size:10px}.workbench-shell .top{min-height:46px}.sandbox-banner{font-size:10px;padding:7px 12px}.sandbox-steps{margin:6px 0}.sandbox-steps button{padding:7px 10px}@media(max-width:900px){.workbench-shell .app{height:auto}.workbench-shell .dock-left .pscroll{max-height:300px}.workbench-shell .board{height:50dvh;min-height:280px}.workbench-shell .workspace-settings.settings-open{top:80px}}.floating-inspector{width:310px;max-height:calc(100dvh - 125px)}.floating-inspector>header{cursor:grab;touch-action:none;user-select:none;padding:5px 10px}.floating-inspector>header:active{cursor:grabbing}.floating-inspector>header small{font-size:9px;color:#aeb6c3;letter-spacing:0}.floating-inspector .pc-body{padding:8px 12px}.floating-inspector .pc-h{padding:8px 12px;min-height:38px}.floating-inspector .row{margin-top:5px;margin-bottom:5px}@media(max-width:650px){.floating-inspector{left:12px!important;top:auto!important;bottom:12px;width:calc(100vw - 24px);max-height:45dvh}.floating-inspector>header{cursor:default}.floating-inspector>header small{display:none}}.workspace-views,.workspace-zoom{display:flex;gap:5px}.workspace-views [aria-pressed=true]{background:#ff225e;color:#fff;border-color:#ff225e}.workspace-actions{flex-wrap:wrap;position:sticky;top:0;z-index:4;background:#15171d;padding:8px;border-radius:10px}.workspace-actions button{min-height:34px}.inspector-actions{display:flex;flex-wrap:wrap;gap:5px;padding:10px;border-bottom:1px solid #3b414b}.inspector-actions button{padding:7px 9px;font-size:11px;border-radius:6px}.workbench-shell .work>.preview3d{margin:8px 0}.workbench-shell .work>.preview3d .p3d-canvas{height:min(62dvh,700px);min-height:320px}.saved-sets{padding:12px;border:1px solid #46505a;border-radius:10px;margin-bottom:12px;background:#20232a}.saved-sets summary{cursor:pointer;font-size:13px;font-weight:600}.saved-sets p{font-size:11px;color:#aeb6c3;line-height:1.5}.saved-sets label{display:grid;gap:5px;font-size:12px;margin:10px 0}.saved-sets input{width:100%;min-width:0;box-sizing:border-box}.saved-sets button{font-size:11px;padding:7px;border-radius:6px}.saved-set-row{display:flex;gap:6px;align-items:center;border-top:1px solid #414650;padding:10px 0}.saved-set-row>span{flex:1;min-width:0;overflow-wrap:anywhere;font-size:12px}.saved-set-row small{display:block;color:#aeb6c3;font-size:10px}.workspace-history{display:flex;gap:5px}.print-review{border:1px solid #b88a42;border-radius:10px;padding:12px;background:#29251e;margin:8px 0}.print-review header{display:flex;justify-content:space-between;align-items:start;gap:12px}.print-review strong{font-size:15px}.print-review p{font-size:11px;color:#d4cbbd;line-height:1.5;margin:5px 0}.print-review button{font-size:11px;padding:7px;border-radius:6px;white-space:nowrap}.print-review ol{max-height:190px;overflow:auto;padding:0;list-style:none;margin:10px 0 0}.print-review li{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #5a4b34;padding:9px 0;font-size:12px}.print-review li.warn{color:#ff9aab}.print-review li.info{color:#f3d08d}.print-review li small{font-size:10px;max-width:150px}.print-review .review-limit{color:#b9b3a9}.workspace-actions>button[aria-pressed=true]{border-color:#ffc35b;color:#ffc35b}.measure-panel{border:1px solid #48b3bd;background:#1a282e;border-radius:10px;padding:12px;margin:8px 0}.measure-panel p{font-size:11px;color:#adbec6;line-height:1.5}.measure-panel h4{font-size:12px;margin:8px 0}.measure-values{display:flex;gap:15px;flex-wrap:wrap}.measure-values span{font-size:10px;color:#9bb5bd}.measure-values b{display:block;font-size:15px;color:#d1f6ff;margin-top:4px}.measure-target{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:12px;font-size:11px}.measure-target input{width:80px}.measure-target button,.measure-target select{font-size:11px;padding:7px}.section-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;background:#1c2028;font-size:12px}.section-controls label{display:flex;align-items:center;gap:6px}.section-controls small{font-size:10px;color:#aeb6c3}.section-controls>input{width:180px;max-width:40vw}.layout-versions{border:1px solid #414650;border-radius:8px;padding:9px 12px;font-size:12px;margin:6px 0}.layout-versions summary{cursor:pointer}.layout-versions p{font-size:11px;color:#acb7c5;line-height:1.5}.layout-versions>div{display:flex;gap:8px;align-items:center;margin:8px 0}.layout-versions input{max-width:190px;min-width:0}.layout-versions button{font-size:11px;padding:7px;border-radius:5px}.version-row{border-top:1px solid #414650;padding-top:8px}.version-row>span{flex:1}.version-row small{display:block;color:#aeb6c3;font-size:10px;margin-top:4px}.find-space{border:1px solid #525369;border-radius:12px;padding:14px 18px;background:linear-gradient(110deg,#25202c,#181d24);margin:12px 0}.find-space summary{cursor:pointer;font-weight:700;color:#ff94b5}.find-space summary span{font-weight:400;color:#aab6c5;margin-left:14px}.find-space p{font-size:13px;color:#b1bbc7;max-width:85ch}.placement-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.placement-options button{padding:12px;background:#20252d;border:1px solid #505969;border-radius:10px;text-align:left;color:#eee}.placement-options button:hover{border-color:#fa4279}.placement-options svg{width:100%;height:125px}.placement-options b,.placement-options span{display:block;margin-top:8px}.placement-options span{font-size:12px;color:#b3becb}@media(max-width:650px){.placement-options{grid-template-columns:1fr}.find-space summary span{display:block;margin:6px 0}}.compact-case{background:#191c22;border:1px solid #363c46;border-radius:12px;padding:18px;color:#e6e9ee;margin-bottom:12px}.case-compact-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.case-compact-header strong{font:600 17px system-ui}.case-compact-header p{margin:6px 0 0;color:#a9b4c4;font:14px system-ui}.case-header-actions{display:flex;gap:14px;align-items:center}.case-header-actions button{padding:9px 14px;border:1px solid #434b58;border-radius:6px;background:#252b34;color:#eef0f5;cursor:pointer}.case-header-actions [aria-pressed=true]{background:#a91645;border-color:#ed4275}.compact-case #case-setup-fields>.bar-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,2fr);gap:12px 20px;margin-top:18px}.compact-case .field{min-width:0;width:auto}.compact-case label,.compact-case .cu-name{text-transform:none;letter-spacing:normal;font:500 14px system-ui}.compact-case .select{width:100%;min-width:0;max-width:100%;height:42px;border:1px solid #434b58;border-radius:6px;background-color:#222731;font:15px system-ui;padding:8px 12px}.case-search{width:100%;box-sizing:border-box;padding:8px 12px;margin:0 0 7px;border:1px solid #434b58;border-radius:6px;background:#13171d;color:#eee}.compact-case .case-use-field,.case-dimensions,.case-depth-min{grid-column:1/-1}.case-dimensions,.case-depth-min{font:13px system-ui;color:#a9b4c4;margin:0}.compact-case .case-use{display:flex;width:fit-content;border:1px solid #434b58;border-radius:7px;overflow:hidden}.compact-case .case-use .segbtn{min-height:40px;padding:10px 22px;flex:0 1 auto;border:0;border-right:1px solid #434b58;background:#222731}.compact-case .case-use .segbtn.on{background:#492332;box-shadow:inset 0 -2px #f34479}.case-depth-row{display:flex;align-items:center;gap:10px;grid-column:1/-1}.compact-case .readout{display:flex;gap:12px;align-items:center;padding:8px 12px;border:1px solid #434b58;border-radius:6px;margin:0;font:14px system-ui}.compact-case .depth-input{width:80px;font:16px system-ui}.compact-case .fill-rim{width:auto!important;min-height:40px;padding:8px 14px;margin:0;border-radius:6px;font:14px system-ui}.compact-case .stack-row{background:none;border:0;padding:12px 0 0;margin:0}.compact-case .stack-pick{font:14px system-ui;gap:12px}.compact-case .stack-pick .select{width:130px}.compact-case .case-note{font-size:13px}.photo-guidance{margin-top:12px;font-size:13px}.photo-guidance summary{cursor:pointer;color:#b8c3d3}#case-setup-fields[hidden]{display:none}@media(max-width:650px){.case-compact-header{align-items:flex-start;flex-direction:column}.compact-case #case-setup-fields>.bar-row{grid-template-columns:1fr}.compact-case .case-use .segbtn{padding:10px 14px}.case-depth-row{flex-wrap:wrap}}.settings-drawer-header{display:none}.workbench-shell .workspace-settings.settings-open{display:flex;flex-direction:column;overflow:hidden}.workbench-shell .workspace-settings.settings-open>.settings-drawer-header{display:flex;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;background:#1c2028;border-bottom:1px solid #454d59;gap:12px}.settings-drawer-header strong{font:600 14px system-ui}.settings-drawer-header button{min-height:40px;padding:8px 12px;border:1px solid #586273;border-radius:6px;background:#292f39;color:#fff;cursor:pointer}.settings-drawer-header button:focus-visible{outline:2px solid #ff4279;outline-offset:2px}.workbench-shell .workspace-settings.settings-open>.pscroll{flex:1;min-height:0;overflow-y:auto}.library-add{padding:4px 0 14px}.library-add>.bar-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}.library-add .seg,.library-add .tm{width:100%;min-width:0}.library-add>.bar-row .segbtn,.library-add>.bar-row .tm-btn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:48px;box-sizing:border-box;padding:10px 8px;font:600 13px system-ui;text-transform:none;letter-spacing:0;clip-path:none;border-radius:8px;border:1px solid #454d5b;background:#242a34;color:#edf1f8}.library-add>.bar-row .tm-btn{background:#a91645;border-color:#d72b61}.library-add .i{width:18px;height:18px;flex-shrink:0}.library-add .photo-guidance{margin:10px 0 0}.library-add .photo-guidance summary{font:12px system-ui;color:#a6b2c4;padding:4px 0}.saved-sets{background:transparent;padding:10px 0;border:0;border-top:1px solid #343b47;border-bottom:1px solid #343b47;border-radius:0;margin-bottom:14px}.saved-sets summary{font:500 13px system-ui;list-style:none;display:flex;align-items:center;gap:8px}.saved-sets summary:before{content:"›";color:#9da9b9}.saved-sets details[open]>summary:before{content:"⌄"}.set-count{margin-left:auto;background:#2b323e;color:#bbc6d6;border-radius:12px;padding:2px 8px;font-size:11px}.library-add .tm-menu{min-width:0;max-width:100%}.case-preview{float:right;width:260px;margin:18px 0 14px 24px;padding:12px;background:#12171e;border:1px solid #374354;border-radius:10px}.case-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font:12px system-ui}.case-preview-heading button{font:11px system-ui;padding:5px 8px;background:#27303d;color:#cbd4e1;border:1px solid #49586b;border-radius:5px}.case-preview-canvas{height:180px;width:100%;touch-action:none;cursor:grab}.case-preview figcaption{display:grid;gap:5px;font:12px system-ui;color:#b7c3d4}.case-preview figcaption b{color:#e7edf6}.case-preview small{font-size:10px;line-height:1.4;color:#94a2b5}.compact-case #case-setup-fields:after{content:"";display:block;clear:both}@media(max-width:1200px){.case-preview{float:none;width:auto;margin:14px 0}.case-preview-canvas{height:160px}}.bar-pc>.compact-case{align-self:stretch;flex:1 1 100%;width:100%;max-width:none;box-sizing:border-box}.compact-case #case-setup-fields:not([hidden]){display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,440px);column-gap:28px;align-items:start}.compact-case #case-setup-fields>*{grid-column:1}.compact-case #case-setup-fields>.case-preview{grid-column:2;grid-row:1/span 20;float:none;width:auto;margin:18px 0 0}.compact-case #case-setup-fields:after{display:none}.compact-case .case-preview-canvas{height:220px}@media(max-width:900px){.compact-case #case-setup-fields:not([hidden]){grid-template-columns:1fr}.compact-case #case-setup-fields>.case-preview{grid-column:1;grid-row:auto}}.vision-library .vision-toolbar select.select{width:auto!important;display:inline-block;max-width:170px;min-height:30px;padding:4px 28px 4px 8px;font-size:12px}.vision-library .vision-toolbar label{flex:0 1 auto}.vision-library .vision-toolbar [role=group]{display:flex;flex:none}.bar-pc>.compact-case{container-type:inline-size;container-name:casesetup;min-width:0;overflow:hidden}.compact-case #case-setup-fields>.case-preview{min-width:0}.compact-case #case-setup-fields:not([hidden]){grid-template-columns:minmax(440px,1fr) minmax(280px,440px)}@container casesetup (max-width: 959.98px){.compact-case #case-setup-fields:not([hidden]){grid-template-columns:minmax(0,1fr)}.compact-case #case-setup-fields>.case-preview{grid-column:1;grid-row:auto;order:99;margin:16px 0 0}}@container casesetup (max-width: 539.98px){.compact-case #case-setup-fields>.bar-row{grid-template-columns:minmax(0,1fr)!important}.case-compact-header{flex-wrap:wrap}}.vision-preview .vision-thumb{display:block;width:100%;height:70px;overflow:hidden;border-radius:6px}.vision-preview .vision-thumb>svg{display:block;width:100%;height:70px}.vision-preview .vision-thumb>svg.has-photo{fill:none}.case-preview-photo-frame{display:flex;align-items:center;justify-content:center;cursor:default;touch-action:auto}.case-preview-photo-frame img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(0,0,0,.45))}
