:root{--ivory: #fbf8f5;--deep: #254d70;--denim: #527fab;--denim-dark: #46709a;--teal: #659fa3;--teal-strong: #3e7c82;--teal-tint: #e9f1f1;--blush: #f2e1de;--blush-dark: #e9d0cc;--bluegrey: #d2dde5;--divider: #ead6d2;--mat: #6fa4a5;--bg: var(--ivory);--panel: var(--ivory);--panel-2: #ffffff;--line: var(--bluegrey);--text: var(--deep);--muted: #567089;--accent: var(--denim);--accent-2: #3f6e9c;--danger: #b5483a;--mat-select: #163a5a;--mat-halo: #ffffff}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Segoe UI,Seravek,Gill Sans Nova,Ubuntu,Calibri,DejaVu Sans,source-sans-pro,system-ui,sans-serif;font-size:14px;color:var(--text);background:var(--bg)}.app{display:flex;flex-direction:column;height:100%}button{background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:8px;min-height:36px;padding:0 12px;font:inherit;font-size:14px;cursor:pointer}button:hover{border-color:var(--teal)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.info-tip:focus-visible{outline:2px solid var(--teal-strong);outline-offset:1px}button:disabled,input:disabled,select:disabled{opacity:.45;cursor:default}button:disabled:hover{border-color:var(--line)}button.primary{background:var(--denim);border-color:var(--denim);color:#fff;font-weight:600}button.primary:hover{background:var(--denim-dark);border-color:var(--denim-dark)}button.primary:disabled{opacity:.6}button.secondary{background:var(--blush);border-color:var(--divider);font-weight:600}button.secondary:hover{background:var(--blush-dark);border-color:var(--blush-dark)}button.quiet{background:transparent;border-color:transparent;color:var(--accent-2)}button.quiet:hover{background:var(--teal-tint);border-color:transparent}button.quiet.danger-text{color:var(--danger)}button.danger,button.danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}button.link{background:none;border:none;min-height:0;color:var(--accent-2);padding:0;text-decoration:underline;display:inline;font-size:inherit}button.link:hover{color:var(--deep)}input,select,textarea{background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:8px;min-height:36px;padding:6px 10px;font:inherit;font-size:14px}input[type=checkbox],input[type=radio]{min-height:0;width:16px;height:16px;padding:0;accent-color:var(--teal-strong)}input[type=range]{min-height:0;padding:0;border:none;background:none;accent-color:var(--teal-strong)}input::placeholder,textarea::placeholder{color:#8fa2b3}.toolbar{display:flex;align-items:center;gap:8px 12px;padding:8px 14px;background:var(--deep);color:#fff;flex-wrap:wrap;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:17px;letter-spacing:.4px;margin-right:4px;white-space:nowrap}.brand-make{font-weight:400;opacity:.85}.group{display:flex;align-items:center;gap:6px}.group.right{margin-left:auto}.toolbar button{background:#ffffff1f;border-color:#fff3;color:#fff;border-radius:999px;min-height:34px;padding:0 12px;font-size:13.5px;white-space:nowrap}.toolbar button:hover{background:#ffffff38;border-color:#ffffff73}.toolbar button:disabled,.toolbar button:disabled:hover{background:#ffffff14;border-color:#ffffff1f;opacity:.5}.toolbar button.icon{padding:0;width:34px}.toolbar button.tool.active{background:var(--teal-strong);border-color:var(--ivory);font-weight:700;box-shadow:0 0 0 1px var(--ivory)}.toolbar button.primary{background:var(--denim);border-color:var(--denim);font-weight:600;padding:0 18px}.toolbar button.primary:hover{background:#6390bb;border-color:#6390bb}.toolbar label{display:flex;align-items:center;gap:6px;font-size:13.5px;color:#ffffffe6;white-space:nowrap}.toolbar label.check{gap:6px;cursor:pointer}.toolbar label.check input{accent-color:var(--teal)}.toolbar select{min-height:30px;padding:2px 6px;font-size:13px;border-color:transparent}.toolbar .notch-type{margin-left:4px}.top-menu{position:relative}.top-menu-panel{position:absolute;top:calc(100% + 8px);left:0;min-width:250px;display:flex;flex-direction:column;gap:2px;padding:8px;background:var(--ivory);color:var(--text);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #254d7047;z-index:40}.toolbar .top-menu-panel button,.toolbar .top-menu-panel button:hover{background:transparent;border-color:transparent;color:var(--text);border-radius:8px;min-height:36px;padding:0 10px;text-align:left;font-size:14px}.toolbar .top-menu-panel button:hover{background:var(--teal-tint)}.toolbar .top-menu-panel .menu-row{justify-content:space-between;gap:16px;min-height:36px;padding:2px 10px;color:var(--text);font-size:14px}.toolbar .top-menu-panel .menu-row.check{justify-content:flex-start;gap:8px}.toolbar .top-menu-panel .menu-row.check input{accent-color:var(--teal-strong)}.toolbar .top-menu-panel select{border-color:var(--line);min-height:32px;font-size:14px}.top-menu-panel hr{border:none;border-top:1px solid var(--divider);margin:6px 4px;width:auto}.body{display:flex;flex:1;min-height:0}.canvas-wrap{flex:1;min-width:0;position:relative;margin:10px;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--mat)}.canvas{display:block;touch-action:none;user-select:none;-webkit-user-select:none}.canvas.tool-pen{cursor:crosshair}.canvas.tool-pan{cursor:grab}.canvas.tool-select{cursor:default}.canvas.calibrating,.canvas.tool-fold,.canvas.tool-grainline,.canvas.tool-curve,.canvas.tool-dot{cursor:crosshair}.calib-dot{fill:#fff6;stroke:var(--mat-select);stroke-width:1.5}.calib-line{stroke:var(--mat-select);stroke-width:1.5;stroke-dasharray:5 3}.calib-cross{stroke:var(--mat-select);stroke-width:1}.calib-label{fill:var(--mat-select);font-size:12px;font-weight:700;paint-order:stroke;stroke:#fff;stroke-width:3px}.canvas-bg{fill:var(--mat)}.off-mat{fill:#5b8d8f}.grid-minor{stroke:#fff3;stroke-width:1}.grid-major{stroke:#fdf4dcb8;stroke-width:1}.grid-axis{stroke:#fdf4dcf2;stroke-width:1.6}.grid-num{fill:#fdf4dc;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;pointer-events:none}.grid-unit{fill:#fdf4dcf2;font-size:11px;font-weight:700;text-anchor:end;pointer-events:none}.page-rect{fill:#ffffff14;stroke:#fdf4dc;stroke-width:1;stroke-dasharray:4 4}.pattern-path{fill:#f9eeecdb;stroke:var(--deep);stroke-width:1.7}.pattern-path.active{stroke:var(--mat-select);stroke-width:2.2}.pattern-path.dashed{stroke-dasharray:6 4}.pattern-path.marking{fill:none;stroke:#3f5f7c;stroke-width:1.3;stroke-dasharray:2 2}.dot-marking{fill:var(--deep);stroke:none}.dot-marking.piece-selected{stroke:var(--mat-halo);stroke-width:2.4}.fold-edge{fill:none;stroke:var(--deep);stroke-width:1.7;pointer-events:none}.fold-edge.piece-selected{stroke:var(--mat-select);stroke-width:3}.seam-path{fill:none;stroke:#8c3a8c;stroke-width:1.7}.pattern-path.piece-selected{stroke:var(--mat-select);stroke-width:3;filter:drop-shadow(0 0 1.5px var(--mat-halo)) drop-shadow(0 0 3px var(--mat-halo))}.anchor{fill:#fff;stroke:var(--deep);stroke-width:1.5}.anchor.selected{fill:var(--mat-select);stroke:#fff;stroke-width:2}.rotate-ui{cursor:grab}.rotate-stem{stroke:var(--mat-select);stroke-width:1;stroke-dasharray:3 3}.rotate-handle{fill:#fff;stroke:var(--mat-select);stroke-width:1.6}.rotate-glyph{fill:var(--mat-select);font-size:12px;text-anchor:middle;pointer-events:none;-webkit-user-select:none;user-select:none}.handle-line{stroke:var(--mat-select);stroke-width:1}.handle-dot{fill:var(--denim);stroke:#fff;stroke-width:1.2}.piece-fill{fill:#f9eeecdb;stroke:none;pointer-events:none}.size-layer{pointer-events:none}.edge-selected{fill:none;stroke:#ffb02e;stroke-width:4.5;stroke-linecap:round;opacity:.95;pointer-events:none}.edge-move-end{fill:none;stroke:#ffb02e;stroke-width:2.2;stroke-dasharray:3 2;pointer-events:none}.canvas-hint{position:absolute;top:12px;left:50%;transform:translate(-50%);max-width:min(560px,90%);background:#fbf8f5f7;border:1px solid var(--teal);border-left:4px solid var(--teal-strong);color:var(--text);padding:8px 14px;border-radius:10px;font-size:14px;line-height:1.45;pointer-events:none;box-shadow:0 6px 18px #254d7040}.canvas-hint b{color:var(--deep)}.canvas-hint.dismissable{padding-right:38px}.canvas-hint.dismissable button{position:absolute;top:2px;right:4px;pointer-events:auto;background:none;border:none;min-height:0;color:var(--muted);font-size:18px;line-height:1;padding:4px 6px;cursor:pointer}.canvas-hint.dismissable button:hover{color:var(--deep)}.grain-line{stroke:var(--teal-strong);stroke-width:1.7;fill:none}.piece-label{fill:#4a6a85;font-size:10.5px;text-anchor:middle;dominant-baseline:middle;cursor:move}.piece-label-name{fill:var(--deep);font-size:12px;font-weight:700}.piece-label-foot{fill:#7089a0;font-size:8.5px;font-style:italic}.piece-label-logo{pointer-events:none}.label-knob .rotate-handle{stroke-width:1.3}.label-knob-glyph{font-size:9px}.piece-lock{fill:#8a5a1c;font-size:9.5px;font-weight:700;cursor:default}.fold-bracket{stroke:#8c3a8c;stroke-width:1.6;fill:none}.fold-label{fill:#8c3a8c;font-size:9.5px;font-weight:700;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.sidebar{width:332px;flex:none;display:flex;flex-direction:column;background:var(--panel);border-right:1px solid var(--divider);min-height:0}.sb-scroll{flex:1;min-height:0;overflow-y:auto;padding:12px 14px 16px;display:flex;flex-direction:column;gap:8px}.sb-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;border-top:1px solid var(--divider);font-size:13px}.sidebar .rail-toggle{width:36px;padding:0;flex:none;color:var(--muted);font-size:16px}.sidebar.collapsed{width:52px;align-items:center;gap:6px;padding:10px 0}.sidebar.collapsed .rail-step{width:36px;padding:0;display:grid;place-items:center;color:var(--deep)}.sidebar.collapsed .rail-step.active{background:var(--teal-tint);border-color:var(--teal);box-shadow:inset 3px 0 0 var(--teal-strong)}.sb-section{flex:none}.sb-head{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:0 10px;background:#fff;border:1px solid var(--divider);border-radius:10px;text-align:left}.sb-head:hover{border-color:var(--teal)}.sb-icon{display:grid;place-items:center;color:var(--teal-strong);flex:none}.sb-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1;padding:6px 0}.sb-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}.sb-num{color:var(--teal-strong)}.sb-summary{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--muted)}.sb-chevron{flex:none;color:var(--muted);font-size:11px;width:12px;text-align:center}.sb-section.open .sb-head{background:var(--teal-tint);border-color:var(--teal);box-shadow:inset 4px 0 0 var(--teal-strong)}.sb-section.open .sb-chevron{color:var(--teal-strong)}.sb-section.quiet .sb-head{background:transparent;border-style:dashed}.sb-section.quiet.open .sb-head{background:var(--teal-tint);border-style:solid}.sb-group{margin:16px 2px 0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--muted)}.sb-body{display:flex;flex-direction:column;gap:12px;padding:16px 4px}.sb-body button:not(.link):not(.chip):not(.piece-x):not(.info-tip){width:100%}.sb-sub{display:flex;flex-direction:column;gap:12px;margin-top:4px;padding:12px;background:#f2e1de52;border:1px solid var(--divider);border-radius:10px}.sidebar h4{position:relative;display:flex;align-items:center;gap:6px;margin:0;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--deep)}.calib-box{display:flex;flex-direction:column;gap:8px;background:var(--teal-tint);border:1px solid var(--teal);border-radius:10px;padding:10px 12px}.info-tip{display:inline-grid;place-items:center;width:16px;height:16px;border:1px solid var(--teal-strong);border-radius:50%;color:var(--teal-strong);font:italic 700 10.5px/1 Georgia,serif;text-transform:none;cursor:help;flex:none}.info-tip-bubble{display:none;position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:5;padding:10px 12px;background:var(--deep);color:#fff;border-radius:8px;font:400 13px/1.45 Segoe UI,Seravek,Ubuntu,Calibri,system-ui,sans-serif;letter-spacing:0;text-transform:none;box-shadow:0 8px 20px #254d704d}.info-tip:hover .info-tip-bubble,.info-tip:focus .info-tip-bubble{display:block}.row{display:flex;gap:8px;align-items:flex-end}.row .field{flex:1;min-width:0}.sb-body .row button:not(.link):not(.chip):not(.piece-x){width:auto;flex:1 1 0;min-width:0;padding:0 8px}.sb-body .row .check{white-space:nowrap;flex:1}.check{display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height:1.35;color:var(--text);cursor:pointer}.check input{margin:2px 0 0;flex:none}.field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.field input,.field select,.field textarea{width:100%}.field textarea{resize:vertical;min-height:64px;line-height:1.4}.rotate-row{align-items:flex-end}.sb-body .rotate-row button:not(.link){flex:0 0 auto;width:auto;padding:0 14px}.measurements{display:flex;flex-direction:column;gap:8px;margin-top:4px}.meas-grid{display:grid;grid-template-columns:minmax(0,1fr) 62px 62px 22px;gap:6px 6px;align-items:center}.meas-row{display:contents}.meas-head{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.meas-head:nth-child(2),.meas-head:nth-child(3){text-align:right}.meas-grid input{width:100%;min-width:0;padding:4px 8px}.meas-grid input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;text-align:right}.meas-grid input[type=number]::-webkit-inner-spin-button,.meas-grid input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stats{margin:8px 0 0}.stats div{display:flex;justify-content:space-between;padding:3px 0;font-size:13px;border-bottom:1px solid var(--line)}.stats dt{color:var(--muted);margin:0}.stats dd{margin:0;font-variant-numeric:tabular-nums}.help{margin:0;padding-left:18px;font-size:14px;line-height:1.6;color:var(--text)}.help b{color:var(--deep)}.help a,.note a{color:var(--accent-2)}.note{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.note.small{font-size:13px}.note b{color:var(--text)}.muted{color:var(--muted)}.small{font-size:13px}.banner{background:var(--blush);border:1px solid var(--divider);border-left:4px solid var(--denim);border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.5}.banner .link{display:block;margin-top:4px}.presets{display:flex;flex-wrap:wrap;gap:6px}.chip{min-height:32px;padding:0 12px;font-size:13.5px;border-radius:16px}.chip.active{background:var(--teal-strong);border-color:var(--teal-strong);color:#fff;font-weight:700}.size-legend{display:flex;flex-direction:column;gap:4px}.legend-item{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--text);cursor:pointer}.legend-item input{margin:0}.legend-item svg{flex:none}.size-pick-actions{align-items:center;gap:10px}.piece-list{display:flex;flex-direction:column;gap:4px}.piece-row{display:flex;align-items:center;gap:6px;min-height:36px;padding:0 6px 0 8px;border-radius:8px;cursor:pointer;background:#fff;border:1px solid var(--line)}.piece-row:hover{border-color:var(--teal)}.piece-row.selected{background:var(--teal-tint);border-color:var(--teal);box-shadow:inset 4px 0 0 var(--teal-strong)}.piece-row.selected .piece-name{font-weight:700}.piece-row input[type=checkbox]{margin:0;flex:none}.piece-row .piece-name{flex:1;min-width:0;min-height:28px;background:none;border:1px solid transparent;padding:2px 4px;color:var(--text)}.piece-row .piece-name:focus{background:#fff;border-color:var(--line);border-radius:6px}.piece-row .piece-meta{font-size:11px;color:var(--muted);flex:none}button.piece-x{width:26px;min-height:26px;margin:0;padding:0;font-size:15px;line-height:1;flex:none;border-radius:6px;color:var(--muted)}button.piece-x:hover{color:var(--danger);border-color:var(--danger)}button.piece-lock-btn{font-size:12px;opacity:.45}button.piece-lock-btn:hover{opacity:.9;border-color:var(--line)}button.piece-lock-btn.on{opacity:1;border-color:#f0a63c;background:#fff6e6}.sidebar details summary{cursor:pointer;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);min-height:28px;display:flex;align-items:center;gap:6px}.sidebar details summary:before{content:"▸";font-size:10px}.sidebar details[open] summary:before{content:"▾"}.sidebar details summary::-webkit-details-marker{display:none}.sidebar details[open]{display:flex;flex-direction:column;gap:10px}.logo-box{display:flex;flex-direction:column;gap:8px}.logo-thumb{max-width:160px;max-height:56px;display:block;background:#fff;border:1px solid var(--line);border-radius:8px;padding:6px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#254d7073;display:flex;align-items:center;justify-content:center;z-index:50}.modal{background:var(--ivory);border:1px solid var(--line);border-radius:14px;width:min(760px,92vw);max-height:84vh;display:flex;flex-direction:column;padding:20px;box-shadow:0 24px 60px #254d7059}.modal h2{margin:0 0 4px;font-size:19px;color:var(--deep)}.modal .muted{color:var(--muted);font-size:14px;margin:0 0 14px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;overflow-y:auto;padding:2px}.gallery-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:6px}.gallery-card:hover{border-color:var(--teal);box-shadow:0 4px 14px #254d701f}.gallery-thumb{background:var(--mat);border-radius:8px;width:100%;height:96px}.gallery-thumb path{fill:#f9eeeceb;stroke:var(--deep);stroke-width:1;vector-effect:non-scaling-stroke}.gallery-name{font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-date{font-size:12px;color:var(--muted)}.gallery-card .row{gap:5px;flex-wrap:wrap}.gallery-card .row button{flex:1 1 auto;min-width:0;min-height:30px;margin:0;padding:0 6px;font-size:12.5px}.gallery-card .row button.danger{background:transparent;color:var(--danger);border-color:var(--line)}.gallery-card .row button.danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}.photo-thumb{object-fit:contain}.modal input.photo-name{background:transparent;border:1px solid transparent;border-radius:6px;min-height:0;padding:1px 3px;margin:0 -4px;width:calc(100% + 8px);font-family:inherit}.modal input.photo-name:hover,.modal input.photo-name:focus{border-color:var(--line);background:#fff;outline:none}.gallery-empty{color:var(--muted);font-size:14px;padding:24px 8px;text-align:center}.gallery-empty a{color:var(--accent-2)}.modal-actions{display:flex;gap:8px;margin-top:16px}.modal-actions .spacer{flex:1}.help-modal{width:min(720px,92vw)}.help-body{overflow-y:auto;padding-right:8px}.help-body h3{margin:20px 0 8px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--teal-strong)}.help-body .help li{margin-bottom:5px}.projector{--panel: #262b33;--panel-2: #2e343d;--line: #3a414c;--text: #e6e9ee;--muted: #9aa3b0;--accent: #2f73d8;--accent-2: #1a8fe0;--teal: #4a525e;color:var(--text)}.projector button{min-height:0;border-radius:6px}.projector button.primary{background:var(--accent);border-color:var(--accent)}.projector input,.projector select{min-height:0}.projector{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--proj-bg, #060809);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.projector.mode-calibrate{cursor:default}.projector:active{cursor:grabbing}.proj-plane{position:absolute;left:0;top:0;will-change:transform}.proj-cut{fill:none;stroke:var(--proj-ink, #ffffff);stroke-width:1.2}.proj-stitch{fill:none;stroke:var(--proj-ink, #ffffff);stroke-opacity:.55;stroke-width:.5;stroke-dasharray:5 3}.proj-marking{fill:none;stroke:var(--proj-ink, #ffffff);stroke-opacity:.7;stroke-width:.5;stroke-dasharray:3 2.5}.proj-dot{fill:var(--proj-ink, #ffffff);stroke:none}.proj-notch{stroke:var(--proj-ink, #ffffff);stroke-width:.9}.proj-grain{stroke:var(--proj-grain, #9edcff);stroke-width:.5}.proj-fold{stroke:var(--proj-fold, #ffd166);stroke-width:.6}.proj-toolbar input.proj-swatch{width:24px;height:20px;padding:0;border:1px solid var(--line);background:none;cursor:pointer}.proj-toolbar[hidden]{display:none}.proj-toast{position:absolute;top:12px;left:50%;transform:translate(-50%);padding:7px 14px;background:#14191feb;border:1px solid var(--line);border-radius:10px;color:var(--text);font-size:12.5px;white-space:nowrap;pointer-events:none}.proj-warn{color:#ffb4a8;font-weight:700;font-size:11.5px;white-space:nowrap}.proj-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.proj-corner{cursor:grab}.proj-corner circle{fill:#22d3ee2e;stroke:#22d3ee;stroke-width:2}.proj-corner .proj-corner-dot{fill:#22d3ee;stroke:none}.proj-corner.active circle{fill:#22d3ee61}.proj-corner text{fill:#9be8ff;font-size:15px;font-weight:700;text-anchor:middle;pointer-events:none}.proj-toolbar{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:6px 12px;background:#14191fe6;border:1px solid var(--line);border-radius:10px;opacity:.45;transition:opacity .15s;max-width:94vw;flex-wrap:wrap;cursor:default}.proj-toolbar:hover,.projector.mode-calibrate .proj-toolbar{opacity:1}.proj-toolbar label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.proj-toolbar input,.proj-toolbar select{background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:3px 6px;font-size:12px}.proj-toolbar input{width:64px}.proj-toolbar select{max-width:180px}.proj-toolbar button{padding:3px 9px;font-size:12px}.proj-toolbar button.active{border-color:var(--accent-2);color:#9be8ff}.proj-brand{font-weight:700;font-size:12.5px;white-space:nowrap}.proj-status{font-size:11.5px;color:var(--muted);white-space:nowrap}.proj-hint{font-size:11.5px;color:var(--muted);max-width:520px}.proj-mirror-badge{position:absolute;right:16px;bottom:12px;color:#ffd166;border:1px solid #ffd166;border-radius:8px;padding:4px 10px;font-size:13px;font-weight:700;letter-spacing:2px;opacity:.85}
