:root{--bg: #e7e8ed;--surface: #ffffff;--surface-2: #f4f5f8;--surface-3: #e8eaef;--surface-hover: #e0e2e9;--border: #d5d8df;--border-strong: #c4c7d0;--text: #1c1d23;--text-2: #2c2e36;--text-muted: #45474f;--accent-text: #0c5c9e;--danger-text: #c62828;--fs-heading: 1.0625rem;--fs-body: .9375rem;--fs-label: .875rem;--fs-caption: .75rem;--icon-size-toolbar: 18px;--btn-primary-bg: #23342b;--btn-primary-border: #3a5a45;--btn-primary-text: #cfe;--btn-primary-hover-bg: #2c4234;--btn-copy-bg: #3a3323;--btn-copy-border: #6a5a2f;--btn-copy-text: #f0e0b0;--btn-copy-hover-bg: #4a4030;--btn-active-bg: #24343f;--btn-active-border: #4a7fa5;--btn-active-text: #cfe8ff;--tab-active-bg: #2a4a3a;--tab-active-border: #3a6a4a;--tab-active-text: #cfe;--btn-danger-bg: #3a1f1f;--btn-danger-border: #542;--btn-danger-text: #fbb;--btn-danger-hover-bg: #522a2a;--accent-amber-border: #5a4a2a;--accent-amber-text: #fed;--row-selected-bg: #2a2a15;--row-focused-bg: color-mix(in srgb, var(--accent-text) 26%, var(--surface));--row-focused-mark: #d8b64a;--row-drop-target-line: #4a8a5a;--chrome-panel-bg: rgba(244, 247, 245, .95);--radius-control: 4px;--radius-panel: 6px;--panel-bevel: none;--btn-face-bg: var(--surface-2);--btn-face-border: var(--border-strong);--btn-face-hover-bg: #d8dbe4;--btn-face-press-bg: #c9cdd9;--btn-face-shadow: none;--menu-item-hover-bg: var(--surface-hover);--menu-item-press-bg: var(--border-strong)}html[data-theme=protools] #app{--btn-face-bg: linear-gradient(to bottom, #fafafb 0%, #e8e8ec 46%, #dadade 54%, #cfcfd4 100%);--btn-face-border: #a5a7ad;--btn-face-hover-bg: linear-gradient(to bottom, #ececf0 0%, #dcdce2 46%, #cecfd5 54%, #c2c3ca 100%);--btn-face-press-bg: linear-gradient(to bottom, #d3d4da 0%, #c4c5cc 46%, #b8b9c1 54%, #aeb0b8 100%);--btn-face-shadow: inset 0 1px 0 0 rgba(255, 255, 255, .85), inset 0 -1px 0 0 rgba(0, 0, 0, .12), 0 1px 1px 0 rgba(0, 0, 0, .08);--btn-active-bg: linear-gradient(to bottom, #cdeaf9 0%, #8fcdec 50%, #62b3e0 100%);--btn-active-border: #2f84b3;--btn-active-text: #0b3a52;--tab-active-bg: linear-gradient(to bottom, #cdeaf9 0%, #8fcdec 50%, #62b3e0 100%);--tab-active-border: #2f84b3;--tab-active-text: #0b3a52;--btn-primary-bg: linear-gradient(to bottom, #e3f6e7 0%, #b9e6c2 50%, #93d5a1 100%);--btn-primary-border: #4d9a5f;--btn-primary-text: #17401f;--btn-primary-hover-bg: linear-gradient(to bottom, #edfaf0 0%, #c8ecd0 50%, #a3ddb0 100%);--btn-copy-bg: linear-gradient(to bottom, #fbf1d6 0%, #f0dca0 50%, #e6c877 100%);--btn-copy-border: #b3902f;--btn-copy-text: #4a3810;--btn-copy-hover-bg: linear-gradient(to bottom, #fdf7e6 0%, #f5e5b8 50%, #ecd58f 100%);--btn-danger-bg: linear-gradient(to bottom, #fbe0e0 0%, #f2b8b8 50%, #e89898 100%);--btn-danger-border: #b3554a;--btn-danger-text: #4a1410;--btn-danger-hover-bg: linear-gradient(to bottom, #fdecec 0%, #f6cbcb 50%, #efb0b0 100%);--accent-amber-border: #b3902f;--accent-amber-text: #7a5a10;--row-selected-bg: #d7edf8;--row-focused-bg: color-mix(in srgb, var(--accent-text) 26%, var(--surface));--row-focused-mark: #b3902f;--row-drop-target-line: #3f9fd6;--radius-control: 3px;--radius-panel: 4px;--panel-bevel: inset 0 1px 0 0 rgba(255, 255, 255, .75), inset 0 -1px 0 0 rgba(0, 0, 0, .08)}.op-group,#rightbar-header,#tab-panel,#object-params-panel,.flyout{box-shadow:var(--panel-bevel)}html{font-size:16px}.hint{font-size:var(--fs-caption);color:var(--text-muted)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;width:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,sans-serif}#app{position:relative;height:100%;width:100%}#app-root{height:100%;width:100%}#renderCanvas{position:fixed;top:0;left:0;width:calc(100% - var(--rightbar-w));height:100%;display:block;touch-action:none;z-index:0}.hidden{display:none!important}.mono{font-family:ui-monospace,monospace;word-break:break-all}#topbar{position:fixed;top:0;left:0;right:var(--rightbar-w);z-index:20;display:flex;flex-wrap:nowrap;align-items:center;gap:6px 14px;min-height:44px;padding:0 10px;background:#f5f6f9eb;border-bottom:1px solid var(--border);max-width:100vw}#topbar.flyout-elevated{z-index:25}#topbar-brand{font-size:var(--fs-label);font-weight:600;white-space:nowrap;flex:0 1 auto;min-width:20px;overflow-x:clip}#topbar-brand.chrome-logo-clipped{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 14px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 14px),transparent)}#topbar-brand.chrome-logo-box{-webkit-mask-image:none;mask-image:none;flex:0 0 auto}#topbar-brand.chrome-logo-box .brand-logo-text,#topbar-brand.chrome-logo-box #auth-status,#topbar-brand.chrome-logo-box #rider-id-display,#topbar-brand.chrome-logo-notext #auth-status,#topbar-brand.chrome-logo-notext #rider-id-display,#topbar-brand.chrome-logo-min .brand-logo-text,#topbar-brand.chrome-logo-min #auth-status,#topbar-brand.chrome-logo-min #rider-id-display{display:none}#topbar-brand .brand-logo-link{display:flex;height:20px}#rider-id-display{display:block;font-size:var(--fs-caption);font-weight:400;line-height:1;color:var(--text-muted);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon{flex:0 0 auto;vertical-align:middle;display:inline-block}#topbar-ops .icon,#rightbar-header .icon,#rightbar-rail .icon{width:var(--icon-size-toolbar);height:var(--icon-size-toolbar)}#rightbar-header .icon-letterO,#rightbar-rail .icon-letterO{width:calc(var(--icon-size-toolbar) * 30 / 24)}#topbar-ops{display:flex;flex-wrap:wrap;align-items:center;gap:4px;flex:1 0 auto}#topbar-ops-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:4px;flex:1 1 0;min-width:0}#topbar-ops-buttons.collapsed{display:none}#topbar-ops.menu-merged #topbar-ops-buttons{display:none!important}.chrome-fold-measuring{position:fixed;left:-99999px;top:0;flex-wrap:nowrap;white-space:nowrap;width:max-content;visibility:hidden;pointer-events:none}.chrome-folded{display:none!important}.chrome-overflow-wrap{position:relative;display:flex;flex:0 0 auto;margin-left:auto}.chrome-overflow-tick{display:inline-block;width:1em;text-align:center;color:var(--accent-text)}#chrome-overflow-menu{left:auto;right:0;overflow-y:auto}#chrome-overflow-menu button span{min-width:0;overflow:hidden;text-overflow:ellipsis}.op-group{display:flex;align-items:center;gap:4px;flex-wrap:wrap}#btn-menu-toggle{background:transparent;border-color:var(--surface-hover)}#btn-menu-toggle.active{background:transparent;color:var(--text);border-color:var(--btn-active-border)}.op-btn{display:flex;align-items:center;gap:4px;font-size:var(--fs-label);padding:5px 9px;cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:var(--radius-control);box-shadow:var(--btn-face-shadow);white-space:nowrap}:where(.op-btn,.op-caret,.view-switch-btn,.rightbar-rail-btn){-webkit-tap-highlight-color:transparent}@media (prefers-reduced-motion: no-preference){:where(.op-btn,.op-caret,.view-switch-btn,.rightbar-rail-btn,#rightbar-expand,#rightbar-collapse){transition:transform .12s ease}}@media (hover: hover){:where(.op-btn,.op-caret,.view-switch-btn,.rightbar-rail-btn):hover:not(:disabled):not(:has(input:disabled)),#rightbar-expand:hover:not(:disabled),#rightbar-collapse:hover:not(:disabled){background:var(--btn-face-hover-bg)}}@media (hover: hover) and (prefers-reduced-motion: no-preference){:where(.op-btn,.op-caret,.view-switch-btn,.rightbar-rail-btn):hover:not(:disabled):not(:has(input:disabled)),#rightbar-expand:hover:not(:disabled),#rightbar-collapse:hover:not(:disabled){transform:scale(1.06)}}@media (prefers-reduced-motion: no-preference){:where(.op-btn,.op-caret,.view-switch-btn,.rightbar-rail-btn):active:not(:disabled):not(:has(input:disabled)),#rightbar-expand:active:not(:disabled),#rightbar-collapse:active:not(:disabled){transform:scale(.96)}}:where(.op-btn,.op-caret,.view-switch-btn,.rightbar-rail-btn):active:not(:disabled):not(:has(input:disabled)),#rightbar-expand:active:not(:disabled),#rightbar-collapse:active:not(:disabled){background:var(--btn-face-press-bg)}.op-btn:disabled{opacity:.45;cursor:default}.op-btn-primary{background:var(--btn-primary-bg);border-color:var(--btn-primary-border);color:var(--btn-primary-text);font-weight:600}.op-btn-primary:hover{background:var(--btn-primary-hover-bg)}.op-btn-primary.save-as-copy{background:var(--btn-copy-bg);border-color:var(--btn-copy-border);color:var(--btn-copy-text)}.op-btn-primary.save-as-copy:hover{background:var(--btn-copy-hover-bg)}.op-sep{width:1px;align-self:stretch;margin:2px;background:var(--surface-hover)}.toggle-btn{display:flex;align-items:center;gap:4px;font-size:var(--fs-label);padding:4px 8px;border:1px solid var(--btn-face-border);border-radius:var(--radius-control);background:var(--btn-face-bg);box-shadow:var(--btn-face-shadow);cursor:pointer;white-space:nowrap}.op-split{position:relative;display:flex;align-items:stretch;gap:2px}.op-caret{display:flex;align-items:center;justify-content:center;padding:0 1px;cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:var(--radius-control);box-shadow:var(--btn-face-shadow)}#topbar-ops .op-caret .icon{width:12px;height:12px}.op-caret.active{background:var(--btn-active-bg);border-color:var(--btn-active-border);color:var(--btn-active-text)}.flyout{position:absolute;top:calc(100% + 4px);left:0;z-index:30;display:flex;flex-direction:column;gap:4px;min-width:max-content;padding:8px 10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-panel);box-shadow:0 6px 20px #00000040;font-size:var(--fs-caption);color:var(--text)}.flyout label{display:flex;align-items:center;gap:5px;white-space:nowrap;cursor:pointer;padding:2px 6px;margin:-2px -6px;border-radius:var(--radius-control)}.flyout button{display:flex;align-items:center;gap:8px;padding:5px 6px;border:0;background:transparent;color:var(--text);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;border-radius:var(--radius-control)}.flyout button:disabled{color:var(--text-muted);cursor:default;opacity:.6}@media (hover: hover){.flyout button:hover:not(:disabled),.flyout label:hover:not(:has(input:disabled)){background:var(--menu-item-hover-bg)}}.flyout button:active:not(:disabled),.flyout label:active:not(:has(input:disabled)){background:var(--menu-item-press-bg)}.flyout button:focus-visible:not(:disabled),.flyout label:has(input:focus-visible){background:var(--menu-item-hover-bg);outline:2px solid var(--accent-text);outline-offset:-2px}.toggle-btn input{position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none}.op-btn.selectable:has(input:checked),.op-btn.active{background:var(--btn-active-bg);border-color:var(--btn-active-border);color:var(--btn-active-text)}.op-btn.selectable:has(input:disabled){opacity:.45;cursor:default}#labels-widget{display:contents}#labels-widget.labels-wide #labels-folded{display:none}#labels-plaque{display:flex;flex-direction:column;flex:0 0 auto;cursor:pointer;border:1px solid var(--btn-face-border);border-radius:var(--radius-control);overflow:hidden;background:var(--btn-face-bg);box-shadow:var(--btn-face-shadow)}#labels-widget:not(.labels-wide) #labels-plaque{position:fixed;left:-9999px;top:0;visibility:hidden;pointer-events:none}#labels-plaque-strip{padding:0 6px;font-size:8px;font-weight:600;letter-spacing:.06em;line-height:1.3;text-align:center;white-space:nowrap;background:var(--btn-face-border);color:var(--surface)}#labels-plaque.plaque-on{border-color:var(--btn-active-border)}#labels-plaque.plaque-on #labels-plaque-strip{background:var(--btn-active-bg);color:var(--btn-active-text)}#labels-plaque-options{display:flex;gap:2px;padding:1px}.labels-plaque-btn{font-size:10px;line-height:1.4;padding:0 5px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--text);cursor:pointer;white-space:nowrap}.labels-plaque-btn.btn-on{background:var(--btn-active-bg);border-color:var(--btn-active-border);color:var(--btn-active-text)}#view-switcher{display:flex;align-items:center;flex:0 0 auto}#view-switcher:not([data-level=narrow]) #view-switcher-narrow{display:none}#view-switcher[data-level=narrow] #view-switcher-wide{position:fixed;left:-9999px;top:0;visibility:hidden;pointer-events:none}#view-switcher-wide{display:flex;gap:2px}.view-switch-btn{display:flex;align-items:center;gap:4px;font-size:var(--fs-label);padding:5px 9px;cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:var(--radius-control);box-shadow:var(--btn-face-shadow);white-space:nowrap}.view-switch-btn.active{background:var(--btn-active-bg);border-color:var(--btn-active-border);color:var(--btn-active-text)}.view-switch-word{display:none}#view-switcher.view-switcher-labels-all[data-level=full] .view-switch-word-full,#view-switcher.view-switcher-labels-all[data-level=short] .view-switch-word-short{display:inline}#view-switcher:not(.view-switcher-labels-all)[data-level=full] .view-switch-btn.active .view-switch-word-full{display:inline}#view-switcher:not(.view-switcher-labels-all)[data-level=short] .view-switch-btn.active .view-switch-word-short{display:inline}.mobile-title{display:none}.tab-btn{display:flex;align-items:center;justify-content:center;gap:6px;height:28px;font-size:var(--fs-label);padding:0 8px;cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:var(--radius-control);box-shadow:var(--btn-face-shadow);white-space:nowrap;text-align:left}.tab-btn:hover{background:var(--btn-face-hover-bg)}.tab-btn.active{background:var(--tab-active-bg);border-color:var(--tab-active-border);color:var(--tab-active-text)}.pv-tab-btn .pv-tab-compact-letter{display:none;font-weight:800;font-size:13px;line-height:1;font-family:inherit;color:currentColor}#auth-status{display:block;width:0;min-width:100%;font-size:var(--fs-caption);font-weight:400;line-height:1;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#topbar-brand.chrome-compact #rider-id-display,#topbar-brand.chrome-fold-measuring #auth-status{display:none}#status{flex:0 0 auto;min-width:0;min-height:1.15em;max-width:100%;text-align:left;font-size:var(--fs-caption);color:var(--accent-text);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;white-space:nowrap}#status:empty{visibility:hidden}#status.error{color:var(--danger-text)}:root{--topbar-h: 44px;--bottom-stack-h: 48px}:root{--rightbar-w: 44px}#rightbar{position:fixed;top:0;right:0;bottom:var(--bottom-stack-h);z-index:21;display:flex}#rightbar-resizer{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:3;touch-action:none}#rightbar-panel{position:relative;display:flex;flex-direction:column;height:100%;min-width:0;background:var(--chrome-panel-bg);border-left:1px solid var(--border)}#rightbar-header{height:var(--topbar-h);flex:0 0 auto;display:flex;align-items:center;gap:3px;padding:0 6px;overflow:hidden;border-bottom:1px solid var(--border);background:var(--chrome-panel-bg)}#rightbar-header-spacer{flex:1 1 auto}#rightbar-collapse{flex:0 0 auto}#rightbar-header.rightbar-properties-compact .rightbar-properties-word{display:none}#tab-panel{flex:1 1 auto;min-height:0;overflow:auto;padding:10px}#rightbar-rail{width:44px;height:100%;display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:7px;background:var(--chrome-panel-bg);border-left:1px solid var(--border)}.rightbar-rail-sep{width:20px;height:1px;background:var(--btn-face-border);margin:2px 0}#rightbar-expand,.rightbar-rail-btn{display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--btn-face-border);border-radius:var(--radius-control);background:var(--btn-face-bg);color:var(--text);cursor:pointer}.rightbar-rail-btn.active{background:var(--tab-active-bg);border-color:var(--tab-active-border);color:var(--tab-active-text)}.tab-section{width:100%}.gear-power-summary{margin-top:8px;padding:6px 8px;border:1px solid var(--border);border-radius:4px;background:var(--surface-2);color:var(--text-2);font-size:var(--fs-label);line-height:1.5}.gear-count-power{font-size:var(--fs-caption);color:var(--text-muted);white-space:nowrap}.tab-section h2{font-size:var(--fs-heading);margin:0 0 8px}.tab-section label{font-size:var(--fs-label);color:var(--text-muted);margin-bottom:8px;max-width:480px}.tab-section label:not(.checkbox-row){display:block}.tab-section input[type=text],.tab-section input[type=number],.tab-section input[type=tel],.tab-section input[type=email],.tab-section textarea{display:block;width:100%;box-sizing:border-box;font-size:var(--fs-label);padding:4px;margin-top:3px;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:3px;font-family:inherit;resize:vertical}.dim-row{display:flex;gap:12px;max-width:480px}.dim-row label{flex:1 1 0}.checkbox-row{display:flex;align-items:center;gap:6px}.checkbox-row input[type=checkbox]{width:auto;margin:0;flex:0 0 auto}#rider-contact{margin:4px 0 10px;padding:6px 8px 8px;border:1px solid var(--border);border-radius:4px}#rider-contact legend{font-size:var(--fs-caption);color:var(--text-muted)}.band-logo-row{display:flex;align-items:center;gap:8px;margin:4px 0}#rider-band-logo-preview{width:40px;height:40px;object-fit:contain;border:1px solid var(--border);border-radius:4px;background:var(--surface-3)}.file-label{font-size:var(--fs-label)}.file-label input[type=file]{font-size:var(--fs-label);font-family:inherit;color:var(--text-muted)}input[type=file]::file-selector-button{font-family:inherit;font-size:var(--fs-label);padding:4px 9px;margin-right:8px;cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:4px;box-shadow:var(--btn-face-shadow)}input[type=file]::file-selector-button:hover{background:var(--btn-face-hover-bg)}#rider-band-logo-clear{margin:0;font-size:var(--fs-caption);padding:2px 6px;cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:3px;box-shadow:var(--btn-face-shadow)}.wysiwyg-field-label{display:block;font-size:var(--fs-label);color:var(--text-muted);margin-bottom:3px}.wysiwyg{border:1px solid var(--border);border-radius:4px;overflow:hidden}.wysiwyg-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:4px;background:var(--surface-2);border-bottom:1px solid var(--border)}.wysiwyg .wysiwyg-btn{display:inline-block;margin:0;font-size:var(--fs-label);font-weight:600;min-width:26px;padding:2px 6px;cursor:pointer;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:3px}.wysiwyg .wysiwyg-btn:hover{background:var(--surface-hover)}.wysiwyg .wysiwyg-btn.active{background:var(--btn-active-bg);border-color:var(--btn-active-border);color:var(--btn-active-text)}.wysiwyg-surface{min-height:96px;max-height:240px;overflow-y:auto;padding:8px 10px;font-size:var(--fs-label);line-height:1.5;background:var(--surface);color:var(--text)}.wysiwyg-surface:focus{outline:none}#rider-tab-panel{display:flex;flex-direction:column;min-height:100%}#rider-text-wysiwyg{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}#rider-text-wysiwyg .wysiwyg-surface{flex:1 1 auto;max-height:none;min-height:120px}.wysiwyg-surface ul,.wysiwyg-surface ol{margin:4px 0;padding-left:20px}.tab-section button{display:flex;align-items:center;gap:4px;margin:2px 0 8px;padding:4px 8px;font-size:var(--fs-label);cursor:pointer;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:1px solid var(--btn-primary-border);border-radius:3px}table.edit-list{width:100%;border-collapse:collapse;font-size:var(--fs-label);margin-bottom:4px;display:block;overflow-x:auto}table.edit-list th,table.edit-list td{border-bottom:1px solid var(--surface-2);padding:5px 6px;text-align:left;vertical-align:middle}.tab-section table.edit-list input,.tab-section table.edit-list select{display:block;width:100%;min-width:3.5em;height:26px;box-sizing:border-box;font-size:var(--fs-label);font-family:inherit;line-height:1;padding:0 4px;margin:0;background:var(--surface-2);color:var(--text);border:1px solid var(--surface-hover);border-radius:2px}table.edit-list select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:14px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' fill='none' stroke='%23888' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center;background-size:10px 10px}table.edit-list input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}table.edit-list input[type=number]::-webkit-outer-spin-button,table.edit-list input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}table.edit-list .channel-input{width:3.2em}table.edit-list .gear-weight-input,table.edit-list .gear-count-input{width:4em}table.edit-list .owner-uuid-cell{font-size:var(--fs-caption);color:var(--text-muted)}table.edit-list .btn-delete-line{display:flex;align-items:center;justify-content:center;height:19px;box-sizing:border-box;margin:0;cursor:pointer;background:var(--btn-danger-bg);color:var(--btn-danger-text);border:1px solid var(--btn-danger-border);border-radius:2px;padding:2px 5px;font-size:var(--fs-label)}table.edit-list .btn-delete-line:hover{background:var(--btn-danger-hover-bg)}table.edit-list .btn-edit-line{display:flex;align-items:center;justify-content:center;height:19px;box-sizing:border-box;margin:0;cursor:pointer;background:var(--btn-face-bg);color:var(--text-2);border:1px solid var(--btn-face-border);border-radius:2px;padding:2px 5px;font-size:var(--fs-label)}table.edit-list .btn-edit-line:hover{background:var(--btn-face-hover-bg)}.param-list-module{border:1px solid var(--border);border-radius:6px;margin-bottom:6px;background:var(--surface-2)}.param-list-module>summary{padding:5px 8px;cursor:pointer;font-size:var(--fs-label);color:var(--text-2);list-style:none}.param-list-module>summary::-webkit-details-marker{display:none}.param-list-module>summary{display:flex;align-items:center;gap:6px}.collapse-chevron{width:12px;height:12px;flex:none;color:var(--text-muted);transition:transform .15s}.param-list-module:not([open])>summary .collapse-chevron{transform:rotate(-90deg)}@media (prefers-reduced-motion: reduce){.collapse-chevron{transition:none}}.param-list-table{width:100%;border-collapse:collapse;margin:0 0 6px;font-size:var(--fs-caption)}.param-list-table td{padding:1px 3px}.param-list-module ul{margin:0;padding:0 8px 6px 20px;list-style:none}.param-list-module li{display:flex;gap:8px;padding:2px 0;font-size:var(--fs-caption);color:var(--text-muted)}.param-list-name{flex:1 1 auto;min-width:0;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text);font-size:var(--fs-caption);padding:1px 4px}.param-list-name:hover,.param-list-name:focus{border-color:var(--border-strong);background:var(--surface);outline:none}.param-list-count{flex:0 0 auto;color:var(--text-muted);font-variant-numeric:tabular-nums}.param-list-ch{flex:0 0 auto;min-width:20px;text-align:right;color:var(--text);font-variant-numeric:tabular-nums}#object-actions{margin-top:10px;padding:6px 8px;border:1px solid var(--border);border-radius:4px}#object-actions legend{font-size:var(--fs-caption);color:var(--text-muted)}#object-params-panel{position:relative;width:min(340px,92vw);max-height:62vh;overflow-y:auto;background:var(--chrome-panel-bg);border:1px solid var(--border-strong);border-radius:var(--radius-panel) 0 0 var(--radius-panel);padding:10px 10px 12px;font-size:var(--fs-label)}#properties-tab-panel #object-params-panel{width:100%;max-height:none;overflow-y:visible}#object-params-panel h3{font-size:var(--fs-label);margin:0 0 8px}#object-params-panel label{display:block;font-size:var(--fs-caption);color:var(--text-muted);margin-top:6px}#object-params-panel label.checkbox-row{font-size:var(--fs-label);color:var(--text-2)}#object-params-panel input[type=text],#object-params-panel input[type=number],#object-params-panel textarea,#object-params-panel select{display:block;width:100%;box-sizing:border-box;font-size:var(--fs-label);padding:3px;margin-top:2px;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:3px;font-family:inherit}#object-params-panel input[readonly]{color:var(--text-muted);background:var(--surface)}#object-params-panel .dim-row{max-width:none}#object-params-panel .panel-close-btn{position:absolute;top:6px;right:6px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:3px;box-shadow:var(--btn-face-shadow)}#object-params-panel .add_buttons{display:flex;flex-wrap:wrap;gap:4px;margin-top:10px}#object-params-panel .add_buttons button{display:flex;align-items:center;justify-content:center;gap:4px;flex:1 1 auto;padding:4px 6px;font-size:var(--fs-caption);cursor:pointer;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:1px solid var(--btn-primary-border);border-radius:3px;white-space:nowrap}#object-params-panel .add_buttons button.btn-delete-object{background:var(--btn-danger-bg);color:var(--btn-danger-text);border:1px solid var(--btn-danger-border)}#object-params-panel .add_buttons button.btn-delete-object:hover{background:var(--btn-danger-hover-bg)}#object-params-panel .add_buttons button.btn-save-preset{border-color:var(--accent-amber-border);color:var(--accent-amber-text)}#object-params-panel .add_buttons button.btn-link-output{border-color:var(--accent-blue-border, #3b82f6);color:var(--accent-blue-text, #93c5fd)}#object-params-panel .add_buttons button:disabled{opacity:.45;cursor:not-allowed;border-color:var(--border-subtle, #3e4451)!important;color:var(--text-muted, #7f848e)!important;background:var(--surface-2, #21252b)!important}.link-output-current-list{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 12px}.link-output-tag{display:inline-flex;align-items:center;gap:6px;background:var(--surface-2, #23272e);border:1px solid var(--border-subtle, #3e4451);border-radius:4px;padding:3px 8px;font-size:var(--fs-caption, 12px);color:var(--text-primary, #abb2bf)}.link-output-unlink-btn{background:transparent;border:none;color:var(--text-muted, #7f848e);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:14px;height:14px}.link-output-unlink-btn:hover{color:var(--btn-danger-text, #e06c75)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0009;display:flex;align-items:center;justify-content:center}.modal-backdrop.hidden{display:none}.modal{position:relative;width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto;padding:14px 16px 16px;background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:0 12px 40px #0009;color:var(--text-2);font-size:var(--fs-label)}.modal h3{margin:0 0 4px;font-size:var(--fs-heading)}.modal label{margin-top:10px;font-size:var(--fs-label);color:var(--text-muted)}.modal label:not(.upload-object-checkbox):not(.checkbox-row){display:block}.modal input[type=text],.modal select{width:100%;box-sizing:border-box;margin-top:3px;padding:4px 6px;font-size:var(--fs-label);background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:3px}.modal input[type=file]{font-size:var(--fs-caption);color:var(--text-muted);max-width:100%}.modal fieldset{margin-top:12px;border:1px solid var(--border);border-radius:4px;padding:8px}.modal legend{font-size:var(--fs-caption);color:var(--text-muted);padding:0 4px}.patch-editor-dialog{max-width:calc(100vw - 32px);width:calc(100vw - 32px);height:calc(100vh - 32px);max-height:calc(100vh - 32px);display:flex;flex-direction:column}.patch-editor-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:12px 16px}.patch-editor-subtitle{font-size:var(--fs-caption);color:var(--text-muted);margin-top:2px}.patch-editor-body{padding:16px;overflow-y:auto;flex:1 1 auto;display:flex;flex-direction:column;gap:16px}.patch-boxes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;margin-top:6px}.patch-box-card{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:10px;display:flex;flex-direction:column;gap:6px}.patch-box-top-row{display:flex;align-items:center;justify-content:space-between}.patch-box-name{font-weight:600;font-size:var(--fs-label)}.patch-box-usage-badge{font-size:11px;font-weight:600;background:var(--surface-1);border:1px solid var(--border);padding:2px 6px;border-radius:4px;color:var(--text-muted)}.patch-proto-label{font-size:var(--fs-caption);color:var(--text-muted);display:flex;flex-direction:column;gap:2px}.patch-proto-select{background:var(--surface-1);color:var(--text);border:1px solid var(--border-strong);border-radius:4px;padding:4px 6px;font-size:var(--fs-caption)}.patch-proto-badge{display:inline-block;align-self:flex-start;font-size:10px;font-weight:700;background:#0284c7;color:#fff;padding:2px 6px;border-radius:3px;letter-spacing:.5px}.patch-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:6px;margin-top:6px}.patch-table{width:100%;border-collapse:collapse;font-size:var(--fs-caption)}.patch-table th,.patch-table td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--border)}.patch-table th{background:var(--surface-2);color:var(--text-muted);font-weight:600}.patch-table tbody tr:hover{background:var(--surface-1)}.patch-cable-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.patch-cable-chip{background:var(--surface-2);border:1px solid var(--border);padding:4px 10px;border-radius:20px;font-size:var(--fs-caption)}.patch-editor-footer{display:flex;justify-content:space-between;border-top:1px solid var(--border);padding:12px 16px}.modal .add_buttons{display:flex;gap:6px;margin-top:14px}.modal .add_buttons button{display:flex;align-items:center;justify-content:center;gap:4px;flex:1 1 auto;padding:6px 8px;font-size:var(--fs-label);cursor:pointer;background:var(--btn-face-bg);color:var(--text-2);border:1px solid var(--btn-face-border);box-shadow:var(--btn-face-shadow);border-radius:3px}.modal .add_buttons button.op-btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-border)}.modal .add_buttons button:disabled{opacity:.5;cursor:progress}.modal .panel-close-btn{position:absolute;top:8px;right:8px;background:none;border:none;color:var(--text-muted);cursor:pointer}.modal .error{margin:10px 0 0;font-size:var(--fs-label);color:var(--danger-text)}.modal .error.hidden{display:none}.publish-progress{text-align:center}.publish-progress-stage{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 0 4px}.publish-progress-mascot{width:96px;height:96px;object-fit:contain}.publish-progress-dots{display:flex;gap:6px}.publish-progress-dots span{width:8px;height:8px;border-radius:50%;background:var(--text-muted);will-change:transform,opacity;animation:publish-progress-dot 1.2s ease-in-out infinite}.publish-progress-dots span:nth-child(2){animation-delay:.2s}.publish-progress-dots span:nth-child(3){animation-delay:.4s}@keyframes publish-progress-dot{0%,to{transform:scale(.6);opacity:.35}50%{transform:scale(1);opacity:1}}.publish-progress-text{margin:8px 0 0;font-size:var(--fs-body);color:var(--text)}.publish-progress--warn .publish-progress-text,.publish-progress--error .publish-progress-text{color:var(--danger-text)}.publish-progress-link{margin:6px 0 0;overflow-wrap:anywhere}.modal .add_buttons a.publish-progress-open{display:flex;align-items:center;justify-content:center;gap:4px;flex:1 1 auto;padding:6px 8px;font-size:var(--fs-label);text-decoration:none;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:1px solid var(--btn-primary-border);border-radius:3px}.modal .add_buttons a.publish-progress-open:hover{background:var(--btn-primary-hover-bg)}@media (prefers-reduced-motion: reduce){.publish-progress-stage--busy .publish-progress-mascot,.publish-progress-dots span{animation-duration:2.4s}}.save-preset-icon-row{display:flex;gap:10px;align-items:flex-start}.save-preset-icon-preview{flex:0 0 96px;width:96px;height:96px;border-radius:3px;overflow:hidden;background:var(--surface-3);display:flex;align-items:center;justify-content:center;color:#555}.save-preset-icon-preview img{width:100%;height:100%;object-fit:contain}.save-preset-icon-actions{flex:1 1 auto;min-width:0}.save-preset-icon-actions .hint{margin:0 0 6px;font-size:var(--fs-caption);color:var(--text-muted)}.save-preset-icon-btns{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.save-preset-icon-btns button{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;font-size:var(--fs-caption);cursor:pointer;background:var(--surface-2);color:var(--text-2);border:1px solid var(--border-strong);border-radius:var(--radius-control);transition:all .15s ease}.save-preset-icon-btns button:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.save-preset-icon-btns button.active{background:var(--btn-active-bg, #0c5c9e);border-color:var(--btn-active-border, #0a4d84);color:var(--btn-active-text, #ffffff);font-weight:600;box-shadow:0 1px 3px #0003}#save-preset-image-clear{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:var(--fs-caption);cursor:pointer;background:var(--btn-face-bg);color:var(--text-muted);border:1px solid var(--btn-face-border);box-shadow:var(--btn-face-shadow);border-radius:var(--radius-control)}#save-preset-image-clear.hidden,.save-preset-icon-btns button.hidden{display:none!important}#save-preset-subject{margin:0;font-size:var(--fs-caption);color:var(--text-muted)}table.edit-list tbody tr{cursor:pointer}.ch-cell,.count-cell{font-variant-numeric:tabular-nums;color:var(--text-muted);text-align:right;white-space:nowrap;padding-right:6px!important}.ch-cell .phantom{cursor:pointer;margin-left:3px;font-size:.62em;font-weight:700;letter-spacing:-.02em;color:#6a6a6a;-webkit-user-select:none;user-select:none;transition:color .1s ease}.ch-cell .phantom:hover{color:var(--text-muted)}.ch-cell .phantom.active{color:#e5484d}.ch-cell .phantom.active:hover{color:#f2686c}.linked-picker{max-height:148px;overflow-y:auto;border:1px solid var(--border);border-radius:4px;background:var(--surface);padding:2px}.linked-option{display:flex;align-items:center;gap:7px;padding:5px 7px;border-radius:3px;cursor:pointer;font-size:var(--fs-label);line-height:1.3}.linked-option:hover{background:var(--surface-hover)}.linked-option input{flex:none;margin:0}.linked-empty{margin:0;padding:7px;font-size:var(--fs-label);color:var(--text-muted);font-style:italic}.row-drag-cell{width:1.6em}.row-drag-handle{display:inline-flex;align-items:center;justify-content:center;cursor:grab;color:var(--text-muted);min-width:24px;min-height:24px;padding:3px;border-radius:3px}.row-drag-handle:hover{color:var(--text-2);background:var(--surface-2)}.row-drag-handle:active{cursor:grabbing}tr.selected-row{background:var(--row-selected-bg)}tr.gear-heading-row td{padding:0;background:var(--surface);border-bottom:1px solid var(--border)}tr.gear-heading-row .gear-heading-toggle{display:flex;align-items:center;gap:8px;width:100%;margin:0;padding:8px 6px 6px;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}tr.gear-heading-row .gear-heading-toggle:hover{background:var(--surface-2)}.gear-heading-toggle:focus-visible{outline:2px solid var(--accent-text);outline-offset:-2px}.gear-chevron{width:12px;height:12px;flex:none;color:var(--text-muted);transition:transform .15s}.gear-heading-toggle[aria-expanded=false] .gear-chevron{transform:rotate(-90deg)}@media (prefers-reduced-motion: reduce){.gear-chevron{transition:none}}tr.gear-heading-level-0 .gear-heading-title{font-weight:700;letter-spacing:.02em}tr.gear-heading-level-1 .gear-heading-toggle{padding-left:22px}tr.gear-heading-level-2 .gear-heading-toggle{padding-left:38px}tr.gear-heading-level-1 .gear-heading-title,tr.gear-heading-level-2 .gear-heading-title{font-size:.86em;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600}.gear-heading-count{font-size:.78em;color:var(--text-muted);background:var(--surface-2);border-radius:10px;padding:1px 8px;font-variant-numeric:tabular-nums}tr.gear-heading-band td{background:var(--surface-2)}tr.gear-note-row td{--gear-note-pad-start: 24px;--gear-note-pad-end: 10px;padding:6px var(--gear-note-pad-end) 8px var(--gear-note-pad-start);font-size:.9em;color:var(--text-muted);border-bottom:1px solid var(--border)}#gear-list-table{container-type:inline-size}#gear-list-table .gear-note-row .gear-unstated{position:sticky;left:var(--gear-note-pad-start);box-sizing:border-box;width:calc(100cqw - var(--gear-note-pad-start) - var(--gear-note-pad-end))}.gear-unstated ul{margin:4px 0 0;padding-left:18px}.gear-unstated-lead{display:block;font-style:italic}.gear-also{display:block;font-size:.8em;font-style:italic;color:var(--text-muted)}.gear-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;font-size:.85em}.gear-toolbar-label{color:var(--text-muted)}.gear-toolbar-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-control, 4px);overflow:hidden}.gear-toolbar .gear-toolbar-seg button,.gear-toolbar .gear-toolbar-btn{margin:0;font:inherit;padding:3px 10px;border:0;border-radius:0;background:var(--surface-2);color:var(--text);cursor:pointer}.gear-toolbar .gear-toolbar-seg button,.gear-toolbar .gear-toolbar-btn{display:inline-flex;align-items:center;gap:4px}.gear-toolbar .gear-toolbar-seg button+button{border-left:1px solid var(--border-strong)}.gear-toolbar .gear-toolbar-seg button[aria-pressed=true]{background:var(--accent-text);color:var(--surface)}.gear-toolbar .gear-toolbar-btn{border:1px solid var(--border-strong);border-radius:var(--radius-control, 4px)}.gear-toolbar-spacer{flex:1}tr.row-picked{background:color-mix(in srgb,var(--accent-text) 14%,var(--surface));box-shadow:inset 2px 0 0 0 var(--accent-text)}tr.row-picked:hover{background:color-mix(in srgb,var(--accent-text) 20%,var(--surface))}.selection-count-badge{display:inline-flex;align-items:center;font-size:var(--fs-caption);padding:2px 8px;margin:0 8px 0 0;border-radius:10px;background:color-mix(in srgb,var(--accent-text) 16%,var(--surface));color:var(--accent-text);border:1px solid var(--border-strong)}#bottom-overlay-stack{position:fixed;bottom:0;left:0;right:0;z-index:20;max-width:100vw;max-height:60vh;display:flex;flex-direction:column;pointer-events:none}#bottom-overlay-stack>*{pointer-events:auto}#bottombar{display:flex;flex-direction:column;align-items:stretch;gap:4px;max-width:100vw;background:#f5f6f9eb;border-top:1px solid var(--border);padding:6px 10px}#preset-category-tabs{flex:1 1 auto;min-width:0;display:flex;flex-wrap:nowrap;gap:4px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain}.preset-loading{font-size:var(--fs-label);color:var(--text-muted);padding:4px 2px}#preset-panel{background:#fafafcf5;border-top:1px solid var(--border);padding:8px 10px;overflow-y:auto;font-size:var(--fs-label)}.preset-category-btn{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-caption);padding:4px 8px;cursor:pointer;background:var(--btn-face-bg);color:var(--text-muted);border:1px solid var(--btn-face-border);border-radius:4px;box-shadow:var(--btn-face-shadow);white-space:nowrap}.preset-category-btn:hover{background:var(--btn-face-hover-bg)}.preset-category-btn.active{background:var(--tab-active-bg);border-color:var(--tab-active-border);color:var(--tab-active-text)}.preset-category-btn-uncategorized{border-color:#d97706;color:#f59e0b}.preset-category-btn-uncategorized.active{background:#78350f;border-color:#f59e0b;color:#fef3c7}.select-assign-preset-category{font-size:var(--fs-caption);padding:2px 4px;background:var(--surface-1, #1e293b);color:var(--text, #f8fafc);border:1px solid var(--border, #475569);border-radius:3px;max-width:100%;margin-top:4px}#preset-panel-toolbar{display:flex;align-items:flex-start;flex-direction:row-reverse;justify-content:flex-end;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border)}#preset-search-box{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:0 8px;height:28px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface);color:var(--text-muted)}#preset-search-box:focus-within{border-color:var(--btn-active-border)}#preset-search{width:150px;border:0;outline:none;background:transparent;color:var(--text);font-size:var(--fs-label)}#preset-search-key{flex:0 0 auto;padding:0 5px;border:1px solid var(--border);border-radius:4px;background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-caption);line-height:1.5;pointer-events:none}#preset-tag-chips{display:flex;flex-wrap:wrap;gap:4px;flex:1 1 auto;min-width:0}#btn-preset-edit-mode,#btn-preset-order-default{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}#btn-preset-edit-mode.active{background:var(--accent, #1c1d23);color:#fff}.preset-card-reorderable{cursor:grab;outline:1px dashed var(--border);outline-offset:2px}.preset-tag-chip{--chip-ink: #1c1d23;display:inline-flex;align-items:center;gap:3px;font-size:var(--fs-caption);padding:3px 7px;cursor:pointer;border-radius:10px;border:1px solid rgba(0,0,0,.12);white-space:nowrap;color:var(--chip-ink);font-weight:600}.preset-owner-chip{background:var(--surface);border-color:var(--border-strong);margin-right:6px}.preset-owner-chip.active{background:var(--btn-primary-bg);border-color:var(--btn-primary-border);--chip-ink: var(--btn-primary-text)}.preset-tag-chip[data-tag-class="0"]{background:#9a9aa2;color:var(--chip-ink)}.preset-tag-chip[data-tag-class="1"],.preset-tag-chip[data-tag-class="10"]{background:#e0a8e8}.preset-tag-chip[data-tag-class="2"],.preset-tag-chip[data-tag-class="11"]{background:#a8c8e8}.preset-tag-chip[data-tag-class="3"],.preset-tag-chip[data-tag-class="12"]{background:#a8e8c0}.preset-tag-chip[data-tag-class="4"]{background:#e8d0a8}.preset-tag-chip[data-tag-class="5"]{background:#e8a8a8}.preset-tag-chip[data-tag-class="6"]{background:#c8e8a8}.preset-tag-chip[data-tag-class="7"]{background:#a8e8e0}.preset-tag-chip[data-tag-class="8"]{background:#d8a8e8}.preset-tag-chip[data-tag-class="9"]{background:#e8c8a8}.preset-tag-chip.active{background:#d33!important;color:#fff;border-color:#a11}#preset-results{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:6px}.preset-card{flex:0 0 auto;width:92px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:4px}#preset-empty-state{color:var(--text-muted);font-size:var(--fs-label);padding:8px}.preset-card-image{width:100%;aspect-ratio:1 / 1;margin-bottom:4px;border-radius:3px;overflow:hidden;background:var(--surface-3);display:flex;align-items:center;justify-content:center}.preset-card-image img{width:100%;height:100%;object-fit:contain}.preset-card-image-fallback{background:repeating-linear-gradient(45deg,var(--surface),var(--surface) 6px,var(--surface-2) 6px,var(--surface-2) 12px)}.preset-card-image-fallback img{display:none}.preset-card{cursor:grab;touch-action:none;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.preset-card:active{cursor:grabbing}.preset-card-dragging{opacity:.45}.preset-card-ghost{position:fixed;top:0;left:0;transform:translate(-50%,-50%) scale(.92);opacity:.85;pointer-events:none;z-index:1000;box-shadow:0 4px 14px #00000059}.preset-own-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px}.btn-delete-preset,.btn-confirm-delete-preset,.btn-cancel-delete-preset{display:flex;align-items:center;gap:3px;font-size:var(--fs-caption);padding:3px 6px;cursor:pointer;border-radius:3px;width:auto}.btn-delete-preset{background:transparent;color:var(--danger-text);border:1px solid var(--danger-text)}.btn-delete-preset:hover{background:var(--btn-danger-bg);color:var(--btn-danger-text)}.btn-confirm-delete-preset{background:var(--btn-danger-bg);color:var(--btn-danger-text);border:1px solid var(--btn-danger-border);box-shadow:var(--btn-face-shadow);font-weight:600}.btn-confirm-delete-preset:hover{background:var(--btn-danger-hover-bg)}.btn-cancel-delete-preset{background:var(--btn-face-bg);color:var(--text-2);border:1px solid var(--btn-face-border);box-shadow:var(--btn-face-shadow)}.btn-cancel-delete-preset:hover{background:var(--btn-face-hover-bg)}#login-page{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--bg)}#login-card{position:relative;width:min(360px,100%);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:24px 20px 20px;display:flex;flex-direction:column;gap:10px}#login-brand{font-size:18px;margin:0}#login-hint{font-size:var(--fs-label);color:var(--text-muted);margin:0 0 4px}#login-error{font-size:var(--fs-label);color:var(--danger-text);background:#f888881a;border:1px solid #542;border-radius:3px;padding:4px 8px}#login-card label{display:block;font-size:var(--fs-label);color:var(--text-muted)}#login-card input{display:block;width:100%;box-sizing:border-box;font-size:var(--fs-label);padding:7px 8px;margin-top:3px;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:3px;font-family:inherit}#login-actions{display:flex;gap:8px;margin-top:6px}#login-actions button{display:flex;align-items:center;justify-content:center;gap:6px;flex:1 1 0;font-size:var(--fs-label);padding:8px;cursor:pointer;border-radius:4px;white-space:nowrap}#btn-login-submit{background:#23342b;color:#cfe;border:1px solid #3a5a45;font-weight:600}#btn-login-submit:hover{background:#2c4234}#btn-register-submit{background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong)}#btn-register-submit:hover{background:var(--surface-hover)}#app-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--surface-2);background:var(--surface)}#verify-email-banner{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 16px;font-size:var(--fs-label);background:var(--surface-3);color:var(--text-2);border-bottom:1px solid var(--border)}#verify-email-banner-text{min-width:0}#verify-email-banner-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:1 1 auto;min-width:0}#verify-email-banner-actions button{font-size:var(--fs-label);padding:4px 10px;cursor:pointer;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:4px}#verify-email-banner-actions button:hover{background:var(--surface-hover)}#verify-email-banner-dismiss{display:flex;align-items:center;padding:4px!important}#editor-verify-email-slot #verify-email-banner{position:fixed;top:var(--topbar-h);left:0;right:var(--rightbar-w);z-index:15;border-radius:0}#app-header-user{display:flex;align-items:center;gap:10px;font-size:var(--fs-body)}#app-header-user button{display:flex;align-items:center;gap:5px;font-size:var(--fs-label);padding:5px 10px;cursor:pointer;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:4px}#app-header-user button:hover{background:var(--surface-hover)}.brand-logo-link{display:inline-flex;align-items:center;text-decoration:none;color:inherit;cursor:pointer}.brand-logo{display:inline-flex;align-items:center;gap:7px}.brand-logo-mark{flex:0 0 auto;color:var(--accent-text)}.brand-logo-text{font-size:1.15em;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.brand-logo-text .bl-sound{font-weight:400;color:var(--text-muted)}.brand-logo-text .bl-check{font-weight:700;color:var(--text)}.brand-logo-text .bl-box{font-weight:800;color:var(--accent-text)}.page-title{margin:0 0 14px;font-size:calc(var(--fs-heading) * 1.375);color:var(--text)}#page-layout{display:flex}#side-nav{flex:0 0 200px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding:16px 10px;border-right:1px solid var(--surface-2);background:var(--surface)}#side-nav-items{display:flex;flex-direction:column;gap:2px}#side-nav-theme{display:flex;flex-direction:column;gap:4px;padding:10px 12px 0;border-top:1px solid var(--surface-2)}#side-nav-theme-select{width:100%;padding:5px 6px;font-size:var(--fs-label);background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-control)}#side-nav-locale{display:flex;flex-direction:column;gap:4px;padding:10px 12px 0}#side-nav-locale-select{width:100%;padding:5px 6px;font-size:var(--fs-label);background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-control)}.side-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;font-size:var(--fs-label);text-align:left;cursor:pointer;color:var(--text-2);background:transparent;border:none;border-radius:6px;white-space:nowrap}.side-nav-item{position:relative}.side-nav-badge{margin-left:auto;min-width:20px;box-sizing:border-box;padding:1px 6px;font-size:var(--fs-caption);font-weight:700;line-height:1.4;text-align:center;color:#fff;background:#b3261e;border-radius:10px}.side-nav-badge[hidden]{display:none}.side-nav-item:hover:not(:disabled){background:var(--surface-hover)}.side-nav-item.active{background:#e3f0fb;color:#0c5c9e;font-weight:600}.side-nav-item:disabled{color:var(--text-muted);opacity:.55;cursor:default}#page-body{flex:1 1 auto;min-width:0;padding:20px}#riders-page #page-body{max-width:900px;margin:0 auto}@media (max-width: 700px){#page-layout{flex-direction:column}#side-nav{flex:0 0 auto;flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--surface-2);padding:8px 10px}#side-nav-items{flex-direction:row}#side-nav-theme{flex:0 0 auto;flex-direction:row;align-items:center;padding:0 0 0 10px;border-top:none;border-left:1px solid var(--surface-2)}#side-nav-theme-select{width:auto}#side-nav-locale{flex:0 0 auto;flex-direction:row;align-items:center;padding:0 0 0 10px;border-left:1px solid var(--surface-2)}#side-nav-locale-select{width:auto}.side-nav-item{flex:0 0 auto;width:auto;padding:8px 10px}.side-nav-item span{display:none}.side-nav-badge{position:absolute;top:0;right:0;margin-left:0;min-width:16px;padding:0 4px;font-size:10px}}#riders-page{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:var(--bg)}#btn-new-rider{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-label);font-weight:600;padding:9px 16px;margin-bottom:14px;cursor:pointer;background:#2c6b3f;color:#fff;border:1px solid #3a8a52;border-radius:5px}#btn-new-rider:hover{background:#35804c}#riders-status{font-size:var(--fs-label);color:var(--text-muted);margin-bottom:8px}#riders-filter{display:flex;gap:6px;margin:10px 0}.riders-filter-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;font-size:var(--fs-label);color:var(--text-muted);background:var(--surface-1);border:1px solid var(--border);border-radius:999px;cursor:pointer}.riders-filter-btn:hover{color:var(--text);background:var(--surface-2)}.riders-filter-btn.active{color:#dceeff;background:#24405f;border-color:#3a6690}#riders-table{width:100%;border-collapse:collapse;font-size:var(--fs-label)}#riders-table th{text-align:left;padding:0;border-bottom:1px solid var(--border);color:var(--text-muted);font-weight:600}#riders-table td{padding:8px 10px;border-bottom:1px solid var(--surface-2)}.rider-title-text{display:inline-block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.btn-get-link-rider{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:6px;padding:3px 5px;color:var(--accent-text);background:none;border:1px solid transparent;border-radius:4px;cursor:pointer}.btn-get-link-rider:hover{border-color:var(--border);background:var(--surface-2)}.col-sort-btn{display:inline-flex;align-items:center;gap:4px;width:100%;padding:8px 10px;background:none;border:none;color:inherit;font:inherit;font-weight:600;text-align:left;cursor:pointer}.col-sort-btn:hover{color:var(--text)}.col-sort-btn svg{opacity:.35;transition:transform .15s,opacity .15s}.col-sort-btn.sort-active svg{opacity:1}.col-sort-btn.sort-asc svg{transform:rotate(180deg)}.btn-edit-rider{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-label);padding:5px 12px;cursor:pointer;background:#24405f;color:#dceeff;border:1px solid #3a6690;border-radius:4px}.btn-edit-rider:hover{background:#2c4d72}.btn-publish-rider{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-label);padding:5px 12px;cursor:pointer;background:var(--surface-2);color:var(--text-2);border:1px solid var(--border-strong);border-radius:4px}.btn-publish-rider:hover{background:var(--surface-hover)}.btn-publish-rider:disabled{opacity:.6;cursor:default}.rider-status-badge{display:inline-block;font-size:var(--fs-caption);font-weight:600;letter-spacing:.02em;text-transform:uppercase;padding:3px 8px;border-radius:999px}.rider-status-badge.draft{background:var(--surface-3);color:var(--text-muted);border:1px solid var(--border-strong)}.rider-status-badge.published{background:#e3f4e6;color:#1f6b2c;border:1px solid #9cd2a8}.riders-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.rider-action-split{position:relative;display:inline-flex;align-items:stretch}.rider-action-split .btn-edit-rider{border-top-right-radius:0;border-bottom-right-radius:0}.btn-rider-more{display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:5px 7px;font-size:var(--fs-caption);line-height:1;cursor:pointer;color:#dceeff;background:#24405f;border:1px solid #3a6690;border-left:none;border-radius:0 4px 4px 0}.btn-rider-more:hover,.btn-rider-more[aria-expanded=true]{background:#2c4d72}.rider-action-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:30;display:flex;flex-direction:column;min-width:190px;padding:4px;background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;box-shadow:0 8px 24px #0000002e}.rider-action-menu-item,.rider-action-menu .btn-publish-rider,.rider-action-menu .btn-copy-link-rider,.rider-action-menu .btn-delete-rider{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;font-size:var(--fs-label);text-align:left;white-space:nowrap;cursor:pointer;color:var(--text);background:transparent;border:none;border-radius:4px}@media (hover: hover){.rider-action-menu-item:hover:not(:disabled),.rider-action-menu .btn-publish-rider:hover:not(:disabled),.rider-action-menu .btn-copy-link-rider:hover:not(:disabled){background:var(--menu-item-hover-bg);color:var(--text)}}.rider-action-menu-item:active:not(:disabled),.rider-action-menu .btn-publish-rider:active:not(:disabled),.rider-action-menu .btn-copy-link-rider:active:not(:disabled){background:var(--menu-item-press-bg);color:var(--text)}.rider-action-menu-item:focus-visible:not(:disabled),.rider-action-menu .btn-publish-rider:focus-visible:not(:disabled),.rider-action-menu .btn-copy-link-rider:focus-visible:not(:disabled){background:var(--menu-item-hover-bg);color:var(--text);outline:2px solid var(--accent-text);outline-offset:-2px}.rider-action-menu-item:disabled{opacity:.5;cursor:default;background:transparent}.rider-action-menu hr{height:0;margin:4px 2px;border:none;border-top:1px solid var(--border)}.rider-action-menu-item.danger,.rider-action-menu .btn-delete-rider{color:var(--danger-text)}@media (hover: hover){.rider-action-menu-item.danger:hover:not(:disabled),.rider-action-menu .btn-delete-rider:hover:not(:disabled){background:#fdeaea;color:var(--danger-text)}}.rider-action-menu-item.danger:active:not(:disabled),.rider-action-menu .btn-delete-rider:active:not(:disabled){background:#f8d2d2;color:var(--danger-text)}.rider-action-menu-item.danger:focus-visible:not(:disabled),.rider-action-menu .btn-delete-rider:focus-visible:not(:disabled){background:#fdeaea;color:var(--danger-text)}.btn-delete-rider,.btn-confirm-delete-rider,.btn-cancel-delete-rider{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-label);padding:5px 12px;cursor:pointer;border-radius:4px}.btn-delete-rider{background:transparent;color:#d98b8b;border:1px solid #5e3535}.btn-delete-rider:hover{background:#4a2222;color:#ffd9d9}.btn-confirm-delete-rider{background:#7a2020;color:#ffe3e3;border:1px solid #a33;font-weight:600}.btn-confirm-delete-rider:hover{background:#932828}.btn-cancel-delete-rider{background:var(--surface-2);color:var(--text-2);border:1px solid var(--border-strong)}.btn-cancel-delete-rider:hover{background:var(--surface-hover)}.confirm-prompt{font-size:var(--fs-label);color:#e0a0a0;white-space:nowrap}.btn-close{position:absolute;top:8px;right:8px;width:24px;height:24px;line-height:1;font-size:16px;cursor:pointer;background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:4px}.btn-close:hover{background:var(--surface-hover)}.auth-page{height:100%;overflow-y:auto;overflow-x:hidden;display:flex;align-items:flex-start;justify-content:center;padding:24px;background:var(--bg)}.auth-page>.auth-card{margin:auto}.auth-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:28px}.auth-title{margin:0 0 8px;font-size:19px;color:var(--text)}.auth-lead{margin:0 0 18px;font-size:var(--fs-label);color:var(--text-muted)}.auth-card label{display:block;margin-bottom:14px;font-size:var(--fs-label);color:var(--text-2)}.auth-card input{display:block;width:100%;margin-top:5px;padding:9px 10px;font-size:var(--fs-body);color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:6px}.auth-alt{margin:16px 0 0;font-size:var(--fs-label);text-align:center}.auth-alt a,#login-forgot a{color:var(--accent-text)}#login-forgot{margin:14px 0 0;font-size:var(--fs-label);text-align:center}.auth-message{margin:14px 0 0;padding:9px 11px;font-size:var(--fs-label);border-radius:6px;word-break:break-word}.auth-message-info{background:var(--surface-3);color:var(--text-2)}.auth-message-success{background:#e3f4e6;color:#1f6b2c}.auth-message-error{background:#fdeaea;color:var(--danger-text)}#profile-page{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:var(--bg)}.profile-page{padding:0 0 44px;color:var(--text)}.profile-page>*{max-width:780px;margin-left:auto;margin-right:auto}.profile-status{margin:0 auto 18px;padding:9px 12px;font-size:var(--fs-label);border-radius:6px}.profile-inline-status{margin:8px 0 0;padding:7px 10px;font-size:var(--fs-label);border-radius:6px}.profile-inline-status-info{background:var(--surface-3);color:var(--text-2)}.profile-inline-status-success{background:#e3f4e6;color:#1f6b2c}.profile-inline-status-error{background:#fdeaea;color:var(--danger-text)}.profile-status-info{background:var(--surface-3);color:var(--text-2)}.profile-status-success{background:#e3f4e6;color:#1f6b2c}.profile-status-error{background:#fdeaea;color:var(--danger-text)}.profile-section{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px 22px;margin-bottom:18px}.profile-section h2{margin:0 0 14px;font-size:var(--fs-heading)}.profile-section h3{margin:24px 0 6px;font-size:var(--fs-body);color:var(--text-2)}.profile-hint{margin:0 0 12px;font-size:var(--fs-caption);color:var(--text-muted)}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 16px;margin-bottom:14px}.profile-grid label{display:block;font-size:var(--fs-label);color:var(--text-muted)}.profile-grid input,.profile-grid select{display:block;width:100%;margin-top:4px}.profile-grid input,.profile-grid select,.field-control{padding:8px 9px;font-size:var(--fs-label);color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:6px}.profile-facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0 0 14px;font-size:var(--fs-body)}.profile-facts dt{font-size:var(--fs-label);color:var(--text-muted)}.profile-facts dd{margin:0;color:var(--text)}.profile-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid var(--border)}.profile-row strong{font-size:var(--fs-label)}.profile-row .checkbox-row{font-size:var(--fs-label);color:var(--text-muted);white-space:nowrap}.profile-row .profile-hint{margin:4px 0 0}.profile-row-danger{border-top-color:#f0c9c9}.btn-primary{padding:8px 16px;font-size:var(--fs-label);font-weight:600;color:#fff;background:#0c5c9e;border:1px solid #0a4d85;border-radius:6px;cursor:pointer}.btn-secondary{padding:8px 14px;font-size:var(--fs-label);color:var(--text-2);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:6px;cursor:pointer;text-decoration:none}.btn-danger{padding:8px 14px;font-size:var(--fs-label);font-weight:600;color:#fff;background:#c62828;border:1px solid #a11;border-radius:6px;cursor:pointer}.landing{height:100%;overflow-y:auto;overflow-x:hidden;background:var(--bg);color:var(--text)}.landing-nav{position:sticky;top:0;z-index:10;background:var(--surface);border-bottom:1px solid var(--border)}.landing-nav-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;white-space:nowrap}.landing-brand{display:inline-flex;align-items:center;font-size:1.3rem;font-weight:700;color:var(--text);white-space:nowrap}.landing-nav-links{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}.landing-nav-links a{font-size:var(--fs-body);color:var(--text-2);text-decoration:none}.landing-nav-links a:hover{color:var(--accent-text)}@media (min-width: 1141px){.landing-nav-inner{padding-left:0;padding-right:0}}@media (max-width: 1380px) and (min-width: 801px){.landing-nav-inner{flex-wrap:wrap;white-space:normal;row-gap:10px}.landing-nav-links{order:3;width:100%;flex-wrap:wrap;justify-content:center;gap:18px}}@media (max-width: 800px){.landing-nav-links{display:none}.landing-nav-inner{overflow-x:auto;overscroll-behavior-x:contain}}.landing-nav-cta{display:flex;align-items:center;gap:10px;flex:0 0 auto}.landing-hero{padding:64px 20px 72px}.landing-hero-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}@media (max-width: 900px){.landing-hero-inner{grid-template-columns:1fr}}.landing-hero-text h1{margin:0 0 16px;font-size:44px;line-height:1.1;color:var(--text)}.landing-hero-sub{margin:0 0 28px;font-size:18px;line-height:1.5;color:var(--text-muted)}.landing-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.landing-hero-media img{display:block;width:100%;max-width:100%;border-radius:10px;border:1px solid var(--border);box-shadow:0 12px 32px #0000001f}.landing-section-inner{max-width:1100px;margin:0 auto;padding:0 20px}.landing-section-alt{background:var(--surface)}.landing-section h2{margin:0 0 16px;font-size:30px;text-align:center;color:var(--text)}.landing-lead{max-width:640px;margin:0 auto 40px;font-size:16px;line-height:1.6;text-align:center;color:var(--text-muted)}.landing-split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}@media (max-width: 900px){.landing-split{grid-template-columns:1fr}}@media (min-width: 901px){.landing-split-reverse>*:first-child{order:2}.landing-split-reverse>*:last-child{order:1}}.landing-split h3{margin:0 0 10px;font-size:20px;color:var(--text)}.landing-split p{margin:0 0 10px;line-height:1.6;color:var(--text-muted)}.landing-split img{display:block;width:100%;max-width:100%;border-radius:10px;border:1px solid var(--border);box-shadow:0 8px 24px #00000014}.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.landing-feature{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:22px}.landing-feature h3{margin:0 0 8px;font-size:16px;color:var(--text)}.landing-feature p{margin:0;font-size:var(--fs-body);line-height:1.5;color:var(--text-muted)}.landing-demo-box{max-width:520px;margin:32px auto 0;padding:28px;text-align:center;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:10px}.landing-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}@media (max-width: 900px){.landing-contact-grid{grid-template-columns:1fr}}.landing-contact-item{padding:14px 0;border-bottom:1px solid var(--border)}.landing-contact-item:last-child{border-bottom:none}.landing-contact-item-label{display:block;margin-bottom:6px;font-size:var(--fs-label);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.landing-contact-item-value{display:block;font-size:16px;line-height:1.5;color:var(--text);text-decoration:none}a.landing-contact-item-value:hover{color:var(--accent-text);text-decoration:underline}.landing-contact-social{padding-top:18px}.landing-contact-social-links{display:flex;gap:10px}.landing-contact-social-links a,.landing-footer-social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;color:var(--text-muted);text-decoration:none;border:1px solid var(--border-strong);transition:color .15s ease,border-color .15s ease,background .15s ease}.landing-contact-social-links a:hover,.landing-footer-social a:hover{color:var(--accent-text);border-color:var(--accent-text);background:var(--surface-2)}#landing-contact-form{display:flex;flex-direction:column;gap:0}#landing-contact-form label{display:block;margin:0 0 7px;font-size:var(--fs-label);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}#landing-contact-form label+input,#landing-contact-form label+textarea{margin-bottom:20px}#landing-contact-form input,#landing-contact-form textarea{display:block;width:100%;box-sizing:border-box;padding:11px 12px;font-size:var(--fs-body);font-family:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:6px}#landing-contact-form textarea{min-height:120px;resize:vertical}#landing-contact-status{margin-top:12px;font-size:var(--fs-label)}.landing-recaptcha-note{margin:12px 0 0;font-size:var(--fs-label);line-height:1.5;color:var(--text-muted)}.landing-recaptcha-note a{color:var(--text-muted);text-decoration:underline}.grecaptcha-badge{visibility:hidden}#landing-contact-status:empty{display:none}#landing-contact-status.is-error{padding:8px 10px;color:var(--danger-text);background:#fdeaea;border-radius:6px}#landing-contact-status.is-success{padding:8px 10px;color:#1f6b2c;background:#e3f4e6;border-radius:6px}.landing-footer{padding:32px 20px 40px;text-align:center;font-size:var(--fs-label);color:var(--text-muted);border-top:1px solid var(--border)}.landing-footer-social{display:flex;justify-content:center;gap:12px;margin-top:10px;margin-bottom:18px}@font-face{font-family:Montserrat;font-style:normal;font-weight:200;font-display:swap;src:url(/landing/fonts/montserrat-200.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/landing/fonts/montserrat-400.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/landing/fonts/montserrat-500.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/landing/fonts/montserrat-700.woff2) format("woff2")}.landing{font-family:Montserrat,system-ui,-apple-system,sans-serif;color:#1a1a1a}.landing-hero-text h1,.landing-section h2{font-weight:200;letter-spacing:-.01em;line-height:1.15}.landing-hero-text h1{font-size:clamp(2.1rem,6vw,3.5rem);margin:0 0 18px}.landing-section h2{font-size:clamp(1.6rem,4vw,2.5rem);margin:0 0 18px}.landing-hero-sub,.landing-lead{font-weight:400;font-size:clamp(1rem,2vw,1.25rem);line-height:1.6;color:#4a4a4a}.landing-feature h3{font-weight:500}.landing-section{background:#fff}.landing-section-alt{background:#efefef}.landing .btn-primary,.landing .btn-secondary{font-family:inherit;font-weight:500;font-size:1rem;padding:12px 26px;border-radius:4px;border:1px solid transparent;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:background-color .15s ease}.landing .btn-primary{background-color:#1569ae;color:#fff}.landing .btn-primary:hover{background-color:#154d80}.landing .btn-secondary{background-color:#fff;color:#154d80;border-color:#d5d8df}.landing .btn-secondary:hover{background-color:#154d80;color:#fff;border-color:#154d80}.landing-nav{background:#fffffff5;border-bottom:1px solid #e4e4e4}.landing-brand{font-weight:700;color:#1a1a1a;text-decoration:none}.landing-nav-links a{color:#4a4a4a;text-decoration:none;font-size:.9rem}.landing-nav-links a:hover{color:#1569ae}.landing-video{position:relative;width:100%;max-width:800px;margin:0 auto;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;background:#000}.landing-video iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.public-viewer{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden;color:var(--text);background:var(--bg)}.pv-bar{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;padding:8px 14px;border-bottom:1px solid var(--border);background:var(--surface);box-shadow:0 1px 3px #0000000f;z-index:5}.pv-bar-brand{display:flex;align-items:baseline;gap:7px;text-decoration:none;color:inherit;flex:none}.pv-bar-sub{font-size:var(--fs-caption);color:var(--text-muted);text-transform:lowercase}.pv-bar-title{font-size:var(--fs-heading);font-weight:600;margin:0;padding-right:6px;border-left:1px solid var(--border);padding-left:14px;flex:1 1 8ch;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv-view-controls{gap:8px;padding-left:8px;border-left:1px solid var(--border)}.pv-tool-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:var(--fs-label);line-height:1.1;cursor:pointer;white-space:nowrap;transition:background .12s ease,border-color .12s ease,color .12s ease}.pv-tool-btn:hover{background:var(--surface-hover);border-color:var(--border-strong)}.pv-tool-btn:disabled{opacity:.55;cursor:not-allowed;background:var(--surface-2);border-color:var(--border);color:var(--text-muted)}.pv-viewswitch{display:inline-flex}.pv-viewswitch .pv-tool-btn{border-radius:0;margin-left:-1px}.pv-viewswitch .pv-tool-btn:first-child{border-radius:999px 0 0 999px;margin-left:0}.pv-viewswitch .pv-tool-btn:last-child{border-radius:0 999px 999px 0}.pv-viewswitch .pv-tool-btn.active{position:relative;z-index:1}.pv-tool-btn.active{background:var(--accent-text);border-color:var(--accent-text);color:#fff}.pv-tool-btn.flash{animation:pv-flash .42s ease-out}@keyframes pv-flash{0%,55%{background:var(--accent-text);border-color:var(--accent-text);color:#fff}to{background:var(--surface-2);border-color:var(--border);color:var(--text-2)}}.pv-tool-btn[disabled]{opacity:.45;cursor:not-allowed}.pv-menu{position:relative}.pv-menu>summary:after{content:"▾";font-size:.85em;opacity:.7}.pv-menu>summary{list-style:none}.pv-menu>summary::-webkit-details-marker{display:none}.pv-menu[open]>summary{background:var(--surface-hover);border-color:var(--border-strong)}.pv-menu-body{position:fixed;top:var(--pv-menu-top, 56px);right:var(--pv-menu-right, 12px);z-index:40;display:grid;gap:8px;min-width:190px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 10px 28px #00000029}.pv-menu-rule{width:100%;height:0;margin:2px 0;border:0;border-top:1px solid var(--border)}.pv-check{display:flex;align-items:center;gap:8px;font-size:var(--fs-label);color:var(--text-2);cursor:pointer}.pv-switch:has(input:checked){background:var(--accent-text);border-color:var(--accent-text);color:#fff}.pv-switch{border:1px solid transparent;border-radius:999px;padding:5px 11px 5px 8px;display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-label);color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.pv-switch input{position:absolute;opacity:0;width:0;height:0}.pv-switch-track{position:relative;width:34px;height:19px;border-radius:999px;background:var(--surface-3);border:1px solid var(--border-strong);transition:background .14s ease,border-color .14s ease;flex:none}.pv-switch-knob{position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px #00000040;transition:transform .14s ease}.pv-switch input:checked+.pv-switch-track{background:#fff;border-color:#fff}.pv-switch input:checked+.pv-switch-track .pv-switch-knob{background:var(--accent-text)}.pv-switch input:checked+.pv-switch-track .pv-switch-knob{transform:translate(15px)}.pv-switch input:focus-visible+.pv-switch-track{outline:2px solid var(--accent-text);outline-offset:2px}.pv-switch input:disabled+.pv-switch-track{opacity:.45}.pv-body{position:relative;flex:1 1 auto;min-height:0}.pv-status{margin:0;padding:8px 16px;font-size:var(--fs-label);color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border)}.pv-status.error{color:var(--danger-text)}.pv-stage-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.pv-stage-wrap canvas{display:block;width:100%;height:100%;outline:none;touch-action:none}.pv-plan-poster{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:contain;background:#dbdee6;pointer-events:none;opacity:1;transition:opacity .45s ease}.pv-stage-loader{position:absolute;top:50%;left:50%;width:96px;height:96px;margin:-48px 0 0 -48px;object-fit:contain;pointer-events:none;z-index:3}.pv-stage-loader.hidden{display:none}.pv-plan-poster.faded{opacity:0}.pv-schematic-wrap{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:1}.pv-schematic-wrap.hidden{display:none}.pv-stage-hint{position:absolute;left:50%;transform:translate(-50%);bottom:12px;margin:0;padding:5px 12px;border-radius:8px;background:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--text-muted);font-size:var(--fs-caption);pointer-events:none;z-index:5;box-shadow:0 2px 8px #00000014;white-space:nowrap}.pv-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.3}.pv-table thead th{position:sticky;top:0;z-index:1;padding:5px 6px;text-align:left;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border)}.pv-table td{padding:4px 6px;border-bottom:1px solid var(--border);color:var(--text-2);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.pv-table tbody tr{cursor:pointer;height:25px}.pv-table tbody tr:hover td{background:var(--surface-2)}.pv-table tr.selected-row td{background:color-mix(in srgb,var(--accent-text) 12%,var(--surface));color:var(--text);font-weight:600}.pv-table th:first-child,.pv-table td:first-child{width:32px;min-width:32px;max-width:36px;text-align:center;font-variant-numeric:tabular-nums;font-weight:600;padding-left:4px;padding-right:4px}.pv-table th:nth-child(2),.pv-table td:nth-child(2){min-width:75px;max-width:120px;font-weight:500}.pv-table th:nth-child(3),.pv-table td:nth-child(3){color:var(--text-muted);font-size:11px}#pv-gear-panel .pv-table th:first-child,#pv-gear-panel .pv-table td:first-child{width:auto;min-width:90px;max-width:200px;text-align:left;padding-left:6px;padding-right:6px;font-variant-numeric:normal}.pv-table tr.gear-heading-row td,.pv-table tr.gear-note-row td{width:auto;min-width:0;max-width:none;text-align:left;white-space:normal;overflow:visible;cursor:default;font-weight:400}.pv-table tr.gear-heading-row:hover td{background:var(--surface)}.pv-table tr.gear-heading-band:hover td{background:var(--surface-2)}#pv-gear-panel .pv-table th:nth-child(2),#pv-gear-panel .pv-table td:nth-child(2){max-width:none;font-weight:400}#pv-gear-panel .pv-gear-table th,#pv-gear-panel .pv-gear-table td{white-space:normal;overflow-wrap:anywhere;max-width:none}#pv-gear-panel .pv-gear-table th:first-child,#pv-gear-panel .pv-gear-table td:first-child{width:46%;min-width:0;max-width:none}#pv-gear-panel .pv-gear-table th:nth-child(3),#pv-gear-panel .pv-gear-table td:nth-child(3){width:58px;text-align:right;white-space:nowrap;overflow-wrap:normal}#pv-gear-panel .pv-table td.gear-count{color:inherit;font-size:inherit;text-align:right;font-variant-numeric:tabular-nums}.pv-phantom{color:var(--danger-text);font-size:.65em;margin-left:2px}.pv-gear-power-summary{margin:0;padding:10px 12px;font-size:var(--fs-label);color:var(--text-muted);border-top:1px solid var(--border);background:var(--surface-2)}.pv-tab-section{padding:0}.pv-logo{max-width:84px;max-height:84px;border-radius:10px;object-fit:contain;background:var(--surface-2)}.pv-rider-text{max-width:68ch;font-size:var(--fs-body);line-height:1.62;color:var(--text-2);overflow-wrap:anywhere}.pv-rider-text>:first-child{margin-top:0}.pv-rider-text p,.pv-rider-text div{margin:0 0 .9em}.pv-rider-text p:empty{min-height:.9em;margin-bottom:0}.pv-rider-text ul,.pv-rider-text ol{margin:0 0 .9em;padding-left:1.5em}.pv-rider-text li{margin:.25em 0}.pv-rider-text li::marker{color:var(--text-muted)}.pv-rider-text b,.pv-rider-text strong{font-weight:700;color:var(--text)}.pv-rider-text a{color:var(--accent-text);text-underline-offset:2px}.pv-rider-text .empty{color:var(--text-muted);font-style:italic}.pv-selected{position:absolute;right:16px;bottom:16px;z-index:4;width:min(300px,calc(100vw - 32px));padding:12px 14px 14px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);box-shadow:0 10px 28px #0000002e}.pv-selected h3{margin:0 22px 4px 0;font-size:var(--fs-heading)}.pv-selected-comment{margin:0 0 8px;font-size:var(--fs-label);color:var(--text-muted)}.pv-selected-meta{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:0;font-size:var(--fs-label)}.pv-selected-meta dt{color:var(--text-muted)}.pv-selected-meta dd{margin:0;color:var(--text-2)}.pv-selected-close{position:absolute;top:8px;right:8px;border:0;background:transparent;color:var(--text-muted);font-size:19px;line-height:1;cursor:pointer;border-radius:6px;padding:0 4px}.pv-selected-close:hover{background:var(--surface-hover);color:var(--text)}@media (max-width: 720px){.pv-stage-hint{display:none}.pv-table td,.pv-table thead th{padding:6px 7px}}#renderCanvas.attach-armed{cursor:crosshair}.landing-hero{position:relative;background-image:linear-gradient(#0c1018bd,#0c1018bd),url(/landing/top_video.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}.landing-hero .landing-hero-text h1{color:#fff}.landing-hero .landing-hero-sub{color:#ffffffd9}.landing-hero .btn-secondary{color:#fff;border-color:#ffffffb3;background:transparent}.landing-hero .btn-secondary:hover{background:#ffffff1f}.landing-hero .landing-hero-media img{box-shadow:0 18px 48px #00000073}.modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px}.modal-actions .op-btn{font-size:var(--fs-label);padding:7px 14px}.op-btn-danger{background:var(--btn-danger-bg);border-color:var(--btn-danger-border);color:var(--btn-danger-text);box-shadow:var(--btn-face-shadow);font-weight:600}.op-btn-danger:hover{background:var(--btn-danger-hover-bg)}#io-delete-summary{margin:4px 0 0;color:var(--text-2)}#io-delete-remember-row{margin-top:14px}tr.unconnected-row{opacity:.6;font-style:italic}tr.unconnected-row td{cursor:default}tr.unconnected-row input,tr.unconnected-row select{color:var(--text-muted);cursor:not-allowed}.upload-object-checkbox{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:var(--fs-label)}.upload-object-checkbox input{width:auto}.admin-badge{display:inline-block;padding:1px 7px;margin-left:4px;font-size:var(--fs-caption);font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;color:#fff;background:#7a2e9e;border-radius:999px}section .wave{overflow:hidden;position:relative;z-index:4;left:0;width:100vw;line-height:0;direction:ltr;padding-bottom:72px}section .wave-bottom{transform:rotate(180deg);margin-bottom:-1px}section .wave svg{height:50px;display:block;width:-webkit-calc(100% + 1.3px);width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translate(-50%)}section .wave .wave-fill{fill:#fff}@media (max-width: 700px){.pv-tab-btn[data-tab=input] .pv-tab-label,.pv-tab-btn[data-tab=output] .pv-tab-label{display:none}.pv-tab-btn[data-tab=input] .pv-tab-compact-letter,.pv-tab-btn[data-tab=output] .pv-tab-compact-letter{display:inline-block}#rider-id-display,#auth-status{display:none}}#ai-prompt{width:100%;resize:vertical;min-height:3.5rem;font:inherit}#ai-preview h4{margin:.75rem 0 .25rem}.ai-diff-list{margin:0;padding-left:1.2rem}.ai-diff-list li{margin:.25rem 0}.ai-mic-btn.recording{color:#e11d48;animation:ai-mic-pulse 1s ease-in-out infinite}@keyframes ai-mic-pulse{0%,to{opacity:1}50%{opacity:.45}}#ai-skipped{margin-top:.75rem}#ai-skipped-heading{margin:0 0 .25rem}.ai-skipped-list{opacity:.8}#waiticon{position:fixed;top:50%;left:50%;width:64px;height:64px;margin:-32px 0 0 -32px;background:url(/interface/load2.gif) center / contain no-repeat;pointer-events:none;z-index:5}#waiticon[hidden]{display:none}#modifier-indicator{position:fixed;bottom:72px;left:50%;transform:translate(-50%);z-index:30;padding:6px 14px;border-radius:var(--radius-panel);background:var(--surface);border:1px solid var(--border-strong);box-shadow:0 6px 20px #00000040;font-size:var(--fs-label);color:var(--text);pointer-events:none;white-space:nowrap}.legal-page{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:var(--bg);padding:32px 20px 64px}.legal-doc{max-width:46rem;margin:0 auto;color:var(--text);font-size:var(--fs-body);line-height:1.65}.legal-doc h2{font-size:1.35rem;margin:2rem 0 .6rem}.legal-doc h3{font-size:1.1rem;margin:1.6rem 0 .4rem}.legal-doc h4,.legal-doc h5{font-size:1rem;margin:1.2rem 0 .3rem}.legal-doc p,.legal-doc li{margin:0 0 .7rem}.legal-doc ul{padding-left:1.4rem}.legal-doc hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.legal-doc code{background:var(--surface-2);border-radius:3px;padding:0 4px}.legal-error,.legal-loading{color:var(--text-muted)}#login-consent{margin:10px 0 0;font-size:var(--fs-caption);color:var(--text-muted);line-height:1.5}.landing-footer-legal{margin:0 0 6px}.landing-footer-legal a{color:inherit}.consent-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:#0000008c}.consent-dialog{max-width:30rem;width:100%;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:22px 24px;box-shadow:0 12px 32px #00000059}.consent-dialog h2{margin:0 0 10px;font-size:var(--fs-heading)}.consent-dialog p{margin:0 0 10px;font-size:var(--fs-body);line-height:1.55}.consent-note{color:var(--text-muted);font-size:var(--fs-caption)!important}.consent-error{color:var(--danger, #d33)}.consent-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}#admin-page{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:var(--bg)}.admin-page{padding:0 0 64px;color:var(--text)}.admin-page>*{max-width:60rem;margin-left:auto;margin-right:auto}.admin-doc{border:1px solid var(--border);border-radius:6px;padding:12px;margin-bottom:14px;background:var(--surface)}.admin-doc-head{display:flex;align-items:baseline;gap:10px;margin-bottom:8px}.admin-doc-state{font-size:var(--fs-caption);color:var(--text-muted)}.admin-doc-text,.admin-mail-text{width:100%;box-sizing:border-box;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-caption);line-height:1.5;resize:vertical}.admin-doc-actions{display:flex;gap:8px;margin-top:8px}.admin-tabs{display:flex;gap:4px;margin:0 0 18px;border-bottom:1px solid var(--border)}.admin-tab{background:transparent;border:1px solid transparent;border-bottom:none;border-radius:6px 6px 0 0;padding:8px 14px;color:var(--text-muted);cursor:pointer}.admin-tab.active{background:var(--surface);border-color:var(--border);color:var(--text);font-weight:600;margin-bottom:-1px;padding-bottom:9px}.admin-history{margin-top:10px;border-top:1px solid var(--border);padding-top:8px}.admin-history-row{display:grid;grid-template-columns:max-content max-content 1fr;gap:8px;align-items:start;margin-bottom:8px}.admin-history-row pre{margin:0;max-height:6em;overflow:hidden;font-size:var(--fs-caption);color:var(--text-muted);white-space:pre-wrap}.admin-ui-only{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-caption);white-space:nowrap}.admin-ui-text{width:100%;box-sizing:border-box;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-caption);line-height:1.5;resize:vertical}.admin-mail-table td:first-child{width:16rem;word-break:break-word}.admin-paging{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:var(--fs-caption);color:var(--text-muted)}.admin-page h1{font-size:1.4rem;margin:0 0 20px}.admin-section h2{font-size:var(--fs-heading);margin:0 0 12px}.admin-search{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.admin-search input{flex:1 1 18rem;min-width:12rem}.admin-table{width:100%;border-collapse:collapse;font-size:var(--fs-label)}.admin-table th,.admin-table td{border-bottom:1px solid var(--border);padding:8px;text-align:left;vertical-align:middle}.admin-table th{color:var(--text-muted);font-weight:600}.admin-table thead th{background:var(--surface-2);border-bottom:1px solid var(--border-strong)}.admin-table tbody tr:hover{background:var(--surface-2)}.admin-table .btn-secondary{padding:4px 10px}.admin-table .btn-secondary:disabled,.btn-secondary:disabled{opacity:.5;cursor:default}.admin-row-actions{display:flex;gap:6px;flex-wrap:wrap}.admin-flag{color:var(--danger, #d33);font-size:var(--fs-caption)}.admin-message{margin:0 0 12px;font-size:var(--fs-label);color:var(--text-muted)}.admin-message-error{color:var(--danger, #d33)}.admin-empty,.admin-denied{color:var(--text-muted)}a.admin-badge{text-decoration:none;cursor:pointer}.admin-setting{display:grid;grid-template-columns:14rem minmax(10rem,22rem) auto;grid-template-areas:"key control actions" "desc desc desc";gap:6px 12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.admin-setting-key{grid-area:key;font-family:monospace;font-size:var(--fs-label)}.admin-setting-control{grid-area:control}.admin-setting-control input[type=text],.admin-setting-control input[type=number]{width:100%}.admin-setting-actions{grid-area:actions;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.admin-setting-desc{grid-area:desc;margin:0;color:var(--text-muted);font-size:var(--fs-caption)}.admin-setting-flag{font-size:var(--fs-caption);color:var(--text-muted)}.admin-setting-default{opacity:.7}.admin-hint{color:var(--text-muted);font-size:var(--fs-label);margin:0 0 12px}.admin-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-bottom:12px}.admin-filter{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-caption);color:var(--text-muted)}.admin-filter select,.admin-filter input[type=number]{min-width:7rem}.admin-filter input[type=number]{width:7rem}.admin-stats{margin-bottom:16px}.admin-stats-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.admin-stats-head h3{font-size:var(--fs-label);font-weight:600;margin:0 0 8px}.admin-stats-head .admin-hint{margin:0 0 8px}.admin-stats-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:8px;margin-bottom:10px}.admin-stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:var(--surface, var(--bg))}.admin-stat-value{font-size:1.4rem;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums}.admin-stat-label{font-size:var(--fs-caption);color:var(--text-muted)}.admin-stats-windows{max-width:36rem}.admin-stats-windows th[scope=row]{color:var(--text);font-weight:500}.admin-stats-note{margin-top:8px}.admin-table .admin-num{text-align:right;font-variant-numeric:tabular-nums}.admin-null{color:var(--text-muted);text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:3px;cursor:help}.admin-sort{all:unset;display:inline-flex;align-items:center;gap:4px;cursor:pointer;color:inherit;font:inherit;white-space:nowrap}.admin-sort:hover,.admin-sort:focus-visible{color:var(--text)}.admin-sort .icon{opacity:.55}.admin-sort.active .icon{opacity:1}#admin-results{overflow-x:auto}#admin-results .admin-table th,#admin-results .admin-table td{white-space:nowrap;padding-inline:6px}#admin-results .admin-table td:first-child{white-space:normal;max-width:210px;overflow-wrap:anywhere}.admin-users-table{min-width:56rem}@media (max-width: 640px){.admin-setting{grid-template-columns:1fr;grid-template-areas:"key" "control" "actions" "desc"}}#print-options-dialog{width:min(560px,calc(100vw - 32px))}.print-opt-group{margin:10px 0 0;padding:8px 10px 10px;border:1px solid var(--border);border-radius:4px}.print-opt-group legend{padding:0 4px;color:var(--text-muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.04em}.print-opt-check{display:flex!important;align-items:center;gap:6px;margin:2px 0}.print-opt-check input{margin:0}.print-opt-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px}.modal .print-opt-rename{width:100%;margin-top:0}.print-opt-presets{margin-top:8px}@media (max-width: 520px){.print-opt-col{grid-template-columns:1fr;gap:2px}}.op-btn.op-btn-tour{color:var(--text-muted, #94a3b8);display:inline-flex;align-items:center;gap:4px}.op-btn.op-btn-tour:hover{color:#38bdf8;background:var(--surface-hover, rgba(255, 255, 255, .08))}.scb-tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;pointer-events:auto}.scb-tour-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a38;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.scb-tour-spotlight{position:absolute;border-radius:8px;box-shadow:0 0 0 9999px #0f172a47,0 0 16px #0284c766;border:2px solid #0284c7;pointer-events:none;transition:top .2s cubic-bezier(.16,1,.3,1),left .2s cubic-bezier(.16,1,.3,1),width .2s cubic-bezier(.16,1,.3,1),height .2s cubic-bezier(.16,1,.3,1),opacity .2s ease}.scb-tour-target-highlight{position:relative;z-index:10001!important}.scb-tour-pointer{position:absolute;z-index:10002;pointer-events:none;display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin-left:-16px;margin-top:-16px;transition:top .2s cubic-bezier(.16,1,.3,1),left .2s cubic-bezier(.16,1,.3,1)}.scb-tour-pointer-svg{position:relative;z-index:2;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.scb-tour-pointer-pulse{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#0284c740;animation:scbPointerPulse 1.6s ease-out infinite}@keyframes scbPointerPulse{0%{transform:scale(.6);opacity:1}to{transform:scale(1.6);opacity:0}}.scb-tour-pointer--down{animation:scbBounceDown 1s ease-in-out infinite alternate}.scb-tour-pointer--down .scb-tour-pointer-svg{transform:rotate(0)}.scb-tour-pointer--up{animation:scbBounceUp 1s ease-in-out infinite alternate}.scb-tour-pointer--up .scb-tour-pointer-svg{transform:rotate(180deg)}.scb-tour-pointer--right{animation:scbBounceRight 1s ease-in-out infinite alternate}.scb-tour-pointer--right .scb-tour-pointer-svg{transform:rotate(-90deg)}.scb-tour-pointer--left{animation:scbBounceLeft 1s ease-in-out infinite alternate}.scb-tour-pointer--left .scb-tour-pointer-svg{transform:rotate(90deg)}@keyframes scbBounceDown{0%{transform:translateY(0)}to{transform:translateY(8px)}}@keyframes scbBounceUp{0%{transform:translateY(0)}to{transform:translateY(-8px)}}@keyframes scbBounceRight{0%{transform:translate(0)}to{transform:translate(8px)}}@keyframes scbBounceLeft{0%{transform:translate(0)}to{transform:translate(-8px)}}.scb-tour-card{position:absolute;z-index:10005;width:380px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px;box-shadow:0 20px 25px -5px #0000001f,0 8px 10px -6px #00000014;color:#0f172a;font-family:inherit;box-sizing:border-box;opacity:1}@keyframes scbTourCardIn{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.scb-tour-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.scb-tour-step-badge{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#e0f2fe;color:#0284c7;padding:3px 9px;border-radius:9999px;border:1px solid #bae6fd}.scb-tour-btn-close{background:transparent;border:none;color:#64748b;font-size:20px;line-height:1;cursor:pointer;padding:0 4px;border-radius:4px}.scb-tour-btn-close:hover{color:#0f172a;background:#f1f5f9}.scb-tour-card-title{margin:0 0 8px;font-size:15px;font-weight:700;color:#0f172a}.scb-tour-card-body{font-size:13px;line-height:1.55;color:#334155;margin-bottom:16px}.scb-tour-card-body b{color:#0f172a;font-weight:600}.scb-tour-card kbd,.scb-cheatsheet-modal kbd{display:inline-block;padding:2px 6px;font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:600;line-height:1.2;color:#0f172a;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:4px;box-shadow:0 1px 1px #00000014}.scb-tour-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid #f1f5f9;gap:8px}.scb-tour-btn-sheet{background:transparent;border:none;color:#0284c7;font-size:12px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:4px;transition:all .15s ease}.scb-tour-btn-sheet:hover{background:#e0f2fe;color:#0369a1}.scb-tour-card-actions{display:flex;align-items:center;gap:6px}.scb-tour-btn-prev,.scb-tour-btn-next,.scb-cheatsheet-btn-close-bottom,.scb-cheatsheet-btn-tour{font-size:12px;font-weight:500;padding:6px 12px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.scb-tour-btn-prev:hover:not(:disabled),.scb-cheatsheet-btn-close-bottom:hover{background:#f8fafc;color:#0f172a;border-color:#94a3b8}.scb-tour-btn-prev:disabled{opacity:.4;cursor:not-allowed}.scb-tour-btn-primary{background:#0284c7;border-color:#0284c7;color:#fff;font-weight:600}.scb-tour-btn-primary:hover{background:#0369a1;border-color:#0369a1;color:#fff}.scb-cheatsheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10010;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.scb-cheatsheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.scb-cheatsheet-modal{position:relative;z-index:10011;width:720px;max-width:calc(100vw - 32px);max-height:calc(100vh - 48px);background:#fff;border:1px solid #cbd5e1;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;overflow:hidden;color:#0f172a;box-sizing:border-box;animation:scbTourCardIn .2s cubic-bezier(.16,1,.3,1)}.scb-cheatsheet-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.scb-cheatsheet-title{display:flex;align-items:center;gap:8px;color:#0284c7}.scb-cheatsheet-header h2{margin:0;font-size:16px;font-weight:700;color:#0f172a}.scb-cheatsheet-btn-close{background:transparent;border:none;color:#64748b;font-size:22px;line-height:1;cursor:pointer;padding:2px 6px;border-radius:4px}.scb-cheatsheet-btn-close:hover{color:#0f172a;background:#e2e8f0}.scb-cheatsheet-content{padding:16px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.scb-cheatsheet-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px}.scb-cheatsheet-section-title{margin:0 0 10px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#0284c7}.scb-cheatsheet-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.scb-cheatsheet-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.scb-cheatsheet-key{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;flex-shrink:0}.scb-cheatsheet-val{color:#475569;text-align:right;font-size:11.5px;line-height:1.3}.scb-cheatsheet-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 20px;border-top:1px solid #e2e8f0;background:#f8fafc}@media (max-width: 640px){.scb-cheatsheet-grid{grid-template-columns:1fr}.scb-cheatsheet-row{flex-direction:column;align-items:flex-start;gap:2px}.scb-cheatsheet-val{text-align:left}}.pv-plan-zones{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.pv-plan-zones.hidden{display:none}.pv-plan-zone{position:absolute;width:40px;height:40px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;pointer-events:auto;font:inherit}.pv-plan-zone:hover,.pv-plan-zone:focus-visible{background:#2563eb1f;outline:none}.pv-plan-zone.selected{background:#2563eb2e;box-shadow:inset 0 0 0 2px #2563eb}.pv-plan-zone-caption{position:absolute;top:100%;left:50%;transform:translate(-50%);pointer-events:none;padding:1px 5px;border:1px solid var(--border-strong);border-radius:4px;background:#ffffffe0;color:var(--text);font-size:var(--fs-caption);line-height:1.25;white-space:nowrap;box-shadow:0 1px 3px #0000001f}.pv-plan-zone:hover .pv-plan-zone-caption{border-color:#2563eb}.pv-plan-zone.selected .pv-plan-zone-caption{border-color:#2563eb;background:#eff6ff;font-weight:600}.patch-editor-dialog{max-width:calc(100vw - 16px)!important;width:calc(100vw - 16px)!important;height:calc(100vh - 16px)!important;max-height:calc(100vh - 16px)!important;display:flex!important;flex-direction:column!important;background:#fff!important;color:#0f172a!important;border-radius:6px!important;padding:0!important;margin:8px auto!important}.patch-editor-header{display:flex!important;align-items:center!important;justify-content:space-between!important;border-bottom:1px solid #e2e8f0!important;padding:6px 14px!important}.patch-editor-body{overflow-y:auto!important;flex:1 1 auto!important;max-height:calc(100vh - 85px)!important;padding:8px 14px 4px!important}.patch-editor-footer{display:flex!important;justify-content:space-between!important;align-items:center!important;border-top:1px solid #e2e8f0!important;padding:6px 14px!important;background:#f8fafc!important;margin-top:auto!important}.patch-boxes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:8px;margin-bottom:20px}.patch-box-card{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;padding:10px 12px}.patch-box-top-row{display:flex;justify-content:space-between;align-items:center}.patch-box-usage-badge{font-size:11px;font-weight:700;background:#e2e8f0;color:#1e293b;padding:2px 6px;border-radius:4px}.patch-table-wrap{overflow-x:auto;border:1px solid #cbd5e1;border-radius:6px;margin-top:8px;margin-bottom:20px}.patch-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.patch-table th{background:#f1f5f9;color:#334155;padding:8px 12px;font-weight:700;border-bottom:1px solid #cbd5e1}.patch-table td{padding:8px 12px;border-bottom:1px solid #e2e8f0;color:#1e293b}.patch-table tbody tr:hover{background:#f8fafc}.patch-cable-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;margin-bottom:16px}.patch-cable-chip{background:#f8fafc;border:1px solid #cbd5e1;padding:4px 10px;border-radius:14px;font-size:12px;color:#334155}.print-variant-dialog{border:none;border-radius:10px;padding:0;max-width:min(96vw,34rem)}.print-variant-dialog::backdrop{background:#00000059}.pv-form{padding:1.25rem 1.5rem 1rem}.pv-heading{margin:0 0 1rem;font-size:1.05rem}.pv-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;align-items:stretch}.pv-option{min-width:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.9rem;border:1px solid var(--border, #ccc);border-radius:8px;background:var(--surface);cursor:pointer;text-align:center}@media (min-width: 58rem){.print-variant-dialog{max-width:min(96vw,60rem)}.pv-options{display:flex}.pv-option{flex:0 0 12.5rem}}.pv-option:hover,.pv-option:focus-visible{border-color:var(--accent, #1a4fd0);outline:none}.pv-name{font-weight:600}.pv-note{font-size:.85em;color:var(--muted, #666);line-height:1.35}.pv-thumb{display:block;background:#fff;border:1px solid #bbb}.pv-thumb-landscape{width:min(9.5rem,100%);aspect-ratio:297 / 210;padding:6%;display:flex;flex-direction:column;gap:4%}.pv-thumb-plot{flex:0 0 46%;background:#d8dbe4}.pv-thumb-plot-line{background:#fff;border:1px solid #bbb;display:flex;align-items:center;justify-content:space-around;padding:0 8%}.pv-thumb-obj{display:block;border:1px solid #333;background:#fff}.pv-thumb-obj-box{width:22%;height:45%}.pv-thumb-obj-round{width:26%;aspect-ratio:1;border-radius:50%}.pv-thumb-stack{position:relative;display:block;width:min(9.5rem,100%);aspect-ratio:297 / 210}.pv-thumb-stack .pv-thumb-landscape{position:absolute;top:0;right:0;bottom:0;left:0;width:100%}.pv-thumb-stack-back{transform:translate(7%,-7%)}.pv-thumb-stack-front{transform:translate(-3%,5%)}.pv-thumb-caption{flex:0 0 6%;background:#e9e9e9;margin:0 18%}.pv-thumb-grid{flex:1 1 auto;display:grid;grid-template-columns:repeat(6,1fr);gap:1px}.pv-thumb-grid>span{background:#eee;border:.5px solid #ccc}.pv-thumb-portrait{width:min(4.75rem,50%);aspect-ratio:210 / 297;position:relative;background:none;border:none}.pv-thumb-behind{position:absolute;inset:0 0 auto auto;width:92%;height:96%;transform:translate(6%,-4%);background:#fff;border:1px solid #ccc}.pv-thumb-page{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;border:1px solid #bbb;padding:8%;display:flex;flex-direction:column;gap:6%}.pv-thumb-heading{flex:0 0 8%;background:#333;width:55%}.pv-thumb-rows{flex:1 1 auto;display:flex;flex-direction:column;gap:6%}.pv-thumb-rows>span{flex:1 1 auto;background:#eee;border-bottom:.5px solid #ccc}@media (max-height: 500px){.print-variant-dialog{max-width:min(96vw,60rem)}.pv-form{padding:.6rem .75rem .5rem}.pv-heading{margin:0 0 .5rem}.pv-options{display:flex;gap:.5rem}.pv-option{flex:1 1 0;padding:.5rem;gap:.3rem}.pv-thumb-landscape,.pv-thumb-stack{width:min(6.5rem,100%)}.pv-thumb-portrait{width:min(3.25rem,50%)}}.pv-actions{display:flex;justify-content:flex-end;margin:1rem 0 0;padding:0}.gear-derived-row td{color:var(--text-muted, #666);font-style:italic}.gear-derived-row td:first-child span:first-child{color:var(--text);font-style:normal}.gear-derived-note{display:block;font-size:.78em}.plan-view-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:15;display:flex;align-items:center;justify-content:center;overflow:auto;background:#fff}.plan-view-overlay{overflow:hidden;touch-action:none}.plan-view-overlay[data-dragging=true]{cursor:grabbing}.plan-view-stage{transform-origin:0 0;will-change:transform}.plan-view-overlay svg{max-width:100%;max-height:100%;height:auto;-webkit-user-select:none;user-select:none}.plan-view-note{margin:0;color:var(--muted);font-size:var(--fs-label)}.pv-schematic-wrap{overflow:hidden;cursor:grab;touch-action:none}.pv-schematic-wrap[data-dragging=true]{cursor:grabbing}.pv-schematic-stage{transform-origin:0 0;will-change:transform}.pv-schematic-stage svg{max-width:100%;max-height:100%;height:auto;-webkit-user-select:none;user-select:none}.pv-schematic-note{margin:0;padding:24px;color:var(--muted);font-size:var(--fs-label)}tr.row-focused{background:var(--row-focused-bg);box-shadow:inset 3px 0 0 0 var(--row-focused-mark)}tr.row-focused td{font-weight:600}#select-mode-icon{display:inline-flex;align-items:center}.offer-overlay{height:100%;overflow-y:auto;overflow-x:hidden;background:var(--bg);color:var(--text);display:flex;flex-direction:column}.ov-bar{display:flex;align-items:center;gap:16px;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap}.ov-bar-brand{display:flex;align-items:baseline;gap:6px;text-decoration:none;color:var(--text);font-weight:700}.ov-bar-sub{font-size:var(--fs-caption);color:var(--text-muted);font-weight:400}.ov-bar-title{flex:1;margin:0;font-size:var(--fs-heading);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ov-back-link{color:var(--accent-text);text-decoration:none;font-size:var(--fs-label);white-space:nowrap}.ov-back-link:hover{text-decoration:underline}.ov-view-switch{display:flex;gap:6px}.ov-status{margin:0;padding:8px 20px;font-size:var(--fs-label);color:var(--accent-text);background:var(--surface-2);border-bottom:1px solid var(--border)}.ov-status.error{color:var(--danger-text)}.ov-guest-note{margin:8px 0 0;font-size:var(--fs-label);color:var(--text-muted, inherit)}.ov-guest-step{margin-top:12px;padding:10px 12px;border:1px solid var(--accent-text);border-radius:6px;background:var(--surface-2)}.ov-guest-step p{margin:0 0 8px}.ov-mylist-wrap{display:inline-flex;align-items:center;gap:8px}.ov-mylist-link{font-size:var(--fs-label)}.ov-mylist-summary{margin-top:12px;padding:10px 12px;border:1px solid var(--accent-text);border-radius:6px;background:var(--surface-2)}.ov-mylist-summary p{margin:0 0 8px}.ov-mylist-marker{display:inline-block;margin-left:6px;font-size:var(--fs-label);color:var(--text-muted, inherit);font-style:italic}.ov-body{flex:1;max-width:1100px;width:100%;margin:0 auto;padding:16px 20px 60px;box-sizing:border-box}.ov-offer-bar{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:20px}.ov-offer-bar-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ov-offer-status{font-weight:700;padding:2px 10px;border-radius:999px;background:var(--surface-3);font-size:var(--fs-label)}.ov-offer-status--submitted,.ov-offer-status--awaiting_organiser{background:#fff3cd;color:#7a5b00}.ov-offer-status--approved{background:#d8f5da;color:#14602a}.ov-offer-status--changes_requested,.ov-offer-status--declined{background:#fbdadb;color:#8a1c22}.ov-offer-round{color:var(--text-muted);font-size:var(--fs-caption)}.ov-author-comment{margin:12px 0 0;padding:10px 12px;background:#fbdadb;color:#8a1c22;border-radius:6px;font-size:var(--fs-body)}.ov-comment-label{display:block;margin:14px 0 4px;font-size:var(--fs-label);color:var(--text-muted)}.ov-comment{width:100%;min-height:64px;box-sizing:border-box;border:1px solid var(--border);border-radius:6px;padding:8px 10px;font:inherit;resize:vertical}.ov-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.ov-btn{border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);border-radius:6px;padding:8px 14px;font-size:var(--fs-label);cursor:pointer}.ov-btn:hover:not(:disabled){background:var(--surface-hover)}.ov-btn:disabled{opacity:.5;cursor:default}.ov-btn-primary{background:var(--accent-text);border-color:var(--accent-text);color:#fff}.ov-btn-primary:hover:not(:disabled){background:var(--accent-text);filter:brightness(1.08)}.ov-list-section{margin-bottom:24px}.ov-list-section h2{font-size:var(--fs-heading);margin:0 0 8px}.ov-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);font-size:var(--fs-body)}.ov-table th,.ov-table td{padding:6px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.ov-table th{background:var(--surface-2);font-weight:600;font-size:var(--fs-caption);color:var(--text-muted)}.ov-gear-heading th{background:var(--surface-3)}.ov-gear-set>td{font-weight:600}.ov-set-toggle{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.ov-set-what{color:var(--text-muted);font-weight:400;font-size:var(--fs-caption)}.ov-gear-inside>td:first-child{padding-left:28px}.ov-gear-inside>td{color:var(--text-muted)}.ov-gear-why{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.ov-gear-channel>td,.ov-gear-source>td{color:var(--text-muted);font-size:var(--fs-caption)}.ov-gear-channel>td:first-child,.ov-gear-source>td:first-child{padding-left:28px}.ov-gear-note td{color:var(--text-muted);font-size:var(--fs-caption);font-style:italic;padding-bottom:4px}.ov-gear-consumables th{border-top:2px solid var(--border)}.ov-table th:last-child,.ov-table td:last-child{min-width:260px}.offer-answer-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap;width:100%}.offer-answer-select{font:inherit;padding:3px 6px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface);flex:0 0 auto}.offer-answer-mark{display:none;flex:0 0 auto;align-items:center;justify-content:center;min-width:28px;min-height:28px;padding:0;border:0;border-radius:6px;background:none;cursor:pointer}@media (max-width: 640px),(pointer: coarse){.offer-answer-mark{display:inline-flex}}@media (pointer: coarse) and (min-width: 641px){.offer-answer-mark{min-width:44px;min-height:44px}.offer-answer-mark svg{width:32px;height:34px}}.offer-answer-mark--ok{color:#14602a}.offer-answer-mark--warn{color:#7a5b00}.offer-answer-mark--no{color:#8a1c22}.offer-answer-mark--open{color:var(--text-muted);opacity:.45}.ov-gear-where-inline{display:none}.offer-answer-model,.offer-answer-reason{font:inherit;padding:3px 6px;border:1px solid var(--border-strong);border-radius:4px;flex:1 1 220px;min-width:200px;box-sizing:border-box}.offer-answer-model.hidden,.offer-answer-reason.hidden{display:none}.offer-model-box{display:flex;align-items:center;gap:6px;flex:1 1 220px;min-width:200px}.offer-model-box.hidden{display:none}.offer-model-box .offer-answer-model{flex:1;min-width:0}.offer-no-answer{color:var(--text-muted);font-size:var(--fs-caption);font-style:italic}@media (max-width: 640px){.ov-body{padding:12px}.ov-table{table-layout:fixed}.ov-table th{padding:5px 4px;font-size:10px;white-space:nowrap}.ov-table td{padding:5px 4px;font-size:var(--fs-caption);white-space:normal;overflow-wrap:break-word}.ov-table th:last-child,.ov-table td:last-child{width:44%;min-width:0}.ov-table-list th:nth-child(3),.ov-table-list td:nth-child(3),.ov-table-list th:nth-child(5),.ov-table-list td:nth-child(5){display:none}}@media (max-width: 640px),(orientation: landscape) and (max-height: 520px){.offer-answer-cell{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px}.offer-answer-select{flex:1 1 0;width:auto;min-width:0;box-sizing:border-box}.offer-model-box,.offer-answer-model,.offer-answer-reason{flex:1 1 100%;width:100%;min-width:0;box-sizing:border-box}.ov-table-gear,.ov-table-gear thead,.ov-table-gear tbody{display:block}.ov-table-gear tr{display:grid;grid-template-columns:minmax(0,1fr) 40px 132px;align-items:center;border-bottom:1px solid var(--border)}.ov-table-gear tr[hidden]{display:none}.ov-table-gear th,.ov-table-gear td{border-bottom:0;min-width:0}.ov-table-gear th:last-child,.ov-table-gear td:last-child{width:auto;min-width:0}.ov-table-gear thead th:nth-child(3){overflow:visible;text-overflow:clip;direction:rtl;text-align:right}.ov-table-gear thead th:nth-child(2),.ov-table-gear .ov-gear-where,.ov-table-gear .ov-set-what{display:none}.ov-table-gear tr:not(.ov-gear-channel):not(.ov-gear-source):not(.ov-gear-piece):not(.ov-gear-detail-head):not(.ov-gear-kit)>td:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ov-table-gear .ov-gear-where-inline{display:block;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted);font-size:11px}.ov-table-gear .ov-gear-heading,.ov-table-gear .ov-gear-blockhead,.ov-table-gear .ov-gear-note{grid-template-columns:minmax(0,1fr)}.ov-table-gear .ov-gear-source>td:first-child,.ov-table-gear .ov-gear-channel>td:last-child{display:none}.ov-table-gear .ov-gear-source>td:nth-child(2){padding-left:28px}.ov-table-gear .ov-gear-channel{grid-template-columns:64px minmax(0,1fr) minmax(0,1fr)}.ov-table-gear td:nth-child(3),.ov-table-gear .ov-gear-source>td:nth-child(3),.ov-table-gear .ov-gear-channel>td:first-child{white-space:nowrap}.ov-table-gear .ov-gear-channel>td:first-child{padding-left:12px}}@media (orientation: landscape) and (max-height: 520px){.offer-overlay .ov-bar{padding:6px 12px;gap:10px}.ov-offer-bar--supplier{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 10px;margin-bottom:10px}.ov-offer-bar--supplier .ov-comment-label{margin:0}#ov-comment{flex:1 1 240px;min-height:0;height:34px;padding:6px 8px;resize:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#ov-comment:focus{height:72px;white-space:normal;overflow:auto}.ov-offer-bar--supplier .ov-actions{position:fixed;left:0;right:0;bottom:0;z-index:20;margin:0;padding:6px 12px calc(6px + env(safe-area-inset-bottom,0px));justify-content:flex-end;background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -2px 8px #00000014}.offer-overlay .ov-body{padding-bottom:72px}}.offer-answer-readonly{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.offer-answer-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:var(--fs-caption);font-weight:600;background:var(--surface-3);color:var(--text)}.offer-answer-badge--ok{background:#d8f5da;color:#14602a}.offer-answer-badge--band_carried{background:var(--surface-3);color:var(--text-muted)}.offer-answer-badge--venue_provided{background:#dbeafe;color:#1e3a8a}.offer-answer-badge--substitute{background:#fff3cd;color:#7a5b00}.offer-answer-badge--na{background:#fbdadb;color:#8a1c22}.offer-answer-detail{font-size:var(--fs-caption);color:var(--text-muted)}.ovr-supplier{margin:4px 0 0;font-size:var(--fs-body);color:var(--text)}.ovr-supplier-company,.ovr-supplier-email{color:var(--text-muted);font-size:var(--fs-caption)}.ovr-readonly-text{margin:0;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;font-size:var(--fs-body);white-space:pre-wrap}.ovr-approved-notice{margin:12px 0 0;padding:10px 12px;background:#d8f5da;color:#14602a;border-radius:6px;font-size:var(--fs-body)}.ovr-request-form{margin-top:14px}.ovr-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:var(--fs-caption);color:var(--text-muted)}.ovr-history-list li{padding:4px 0;border-bottom:1px solid var(--surface-2)}.ovr-history-comment{display:block;color:var(--text);margin-top:2px}#offers-page{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;background:var(--bg)}#offers-page #page-body{max-width:960px;margin:0 auto}.offers-section{margin-bottom:28px}.offers-section h2{font-size:var(--fs-heading);margin:0 0 8px}.offers-empty{color:var(--text-muted);font-size:var(--fs-label);padding:10px 0}.offers-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.offers-table{width:100%;border-collapse:collapse;font-size:var(--fs-label)}.offers-table th{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text-muted);font-weight:600;font-size:var(--fs-caption)}.offers-table td{padding:8px 10px;border-bottom:1px solid var(--surface-2);vertical-align:middle}.offers-table tr.offers-row-link{cursor:pointer}.offers-table tr.offers-row-link:hover{background:var(--surface-hover)}.offers-status-pill{display:inline-block;font-weight:700;padding:2px 10px;border-radius:999px;background:var(--surface-3);font-size:var(--fs-label)}.offers-status-pill--warn{background:#fff3cd;color:#7a5b00}.offers-status-pill--good{background:#d8f5da;color:#14602a}.offers-status-pill--bad{background:#fbdadb;color:#8a1c22}@media (max-width: 640px){.offers-col-round{display:none}.offers-table th,.offers-table td{padding:6px;font-size:var(--fs-caption)}}#tab-panel:has(>.tab-section:not(.hidden)>.list-scroll){display:flex;flex-direction:column;overflow:hidden}#tab-panel>.tab-section:not(.hidden):has(>.list-scroll){display:flex;flex-direction:column;flex:1 1 auto;min-height:0}#tab-panel>.tab-section:not(.hidden)>.list-scroll{flex:0 1 auto;min-height:0;overflow:auto;margin-bottom:4px}#tab-panel>.tab-section:not(.hidden):has(>.list-scroll)>:not(.list-scroll){flex:none;align-self:flex-start}.list-scroll>table.edit-list{display:table;table-layout:fixed;width:auto;margin-bottom:0}.list-scroll>table.edit-list th{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}.list-scroll>table.edit-list input{text-overflow:ellipsis;min-width:0}.list-scroll>table.edit-list td.ch-cell{overflow:hidden}.list-col-grip{position:absolute;top:0;right:0;bottom:0;width:10px;cursor:col-resize;touch-action:none}.list-col-grip:after{content:"";position:absolute;top:4px;bottom:4px;right:0;width:1px;background:var(--border-strong)}.list-col-grip:hover:after,.list-col-grip.dragging:after{width:3px;background:var(--accent-text)}.list-scroll.resizing,.list-scroll.resizing *{cursor:col-resize!important}.list-scroll>table.edit-list thead th{position:sticky;top:0;z-index:3;background:var(--surface-2)}.list-scroll>table.edit-list thead th:nth-child(7),.list-scroll>table.edit-list thead th:nth-child(8){z-index:4}.list-scroll>table.edit-list thead th.list-clear-sel{cursor:pointer}.list-scroll>table.edit-list th,.list-scroll>table.edit-list td{border-bottom:1px solid var(--border)}.list-scroll>table.edit-list tbody tr:nth-child(odd)>td{background:var(--surface)}.list-scroll>table.edit-list tbody tr:nth-child(2n)>td{background:color-mix(in srgb,var(--surface) 55%,var(--surface-2))}.list-scroll>table.edit-list tbody tr.selected-row>td,.list-scroll>table.edit-list tbody tr.row-focused>td,.list-scroll>table.edit-list tbody tr.row-picked>td{background:inherit}.list-scroll>table.edit-list tbody tr.row-focused>td:first-child{box-shadow:inset 3px 0 0 0 var(--row-focused-mark)}.list-scroll>table.edit-list tbody tr.row-picked>td:first-child{box-shadow:inset 2px 0 0 0 var(--accent-text)}.list-scroll>table.edit-list th.list-col-fixed{box-shadow:inset 0 -2px 0 var(--accent-text)}.list-scroll>table.edit-list td.row-drag-cell{padding:0}.list-scroll>table.edit-list td.row-drag-cell>.row-drag-handle{display:flex;width:100%;min-height:36px;box-sizing:border-box;border-radius:0}.list-scroll>table.edit-list tr.row-lifted{background:transparent!important;box-shadow:none!important}.list-scroll>table.edit-list tr.row-lifted>td{background:var(--surface)!important}.list-scroll>table.edit-list tr.row-lifted.selected-row>td{background:var(--row-selected-bg)!important}.list-scroll>table.edit-list tr.row-lifted.row-focused>td{background:var(--row-focused-bg)!important}.list-scroll>table.edit-list tr.row-lifted.row-picked>td{background:color-mix(in srgb,var(--accent-text) 14%,var(--surface))!important}.list-scroll>table.edit-list tr.row-lifted>td:not(:nth-child(7)):not(:nth-child(8)){position:relative;z-index:6}.list-scroll>table.edit-list tr.row-lifted>td:nth-child(7),.list-scroll>table.edit-list tr.row-lifted>td:nth-child(8){z-index:7}.list-scroll>table.edit-list tr.row-lifted>td{box-shadow:0 7px 10px -7px #00000059,0 -7px 10px -7px #00000040;border-bottom-color:transparent}.list-scroll.reordering,.list-scroll.reordering *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.list-scroll>table.edit-list tbody td.ch-cell,.list-scroll>table.edit-list tbody .row-drag-handle{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.list-scroll>table.edit-list tbody .row-drag-handle{touch-action:none}.list-scroll>table.edit-list tr>:nth-child(7),.list-scroll>table.edit-list tr>:nth-child(8){position:sticky;z-index:2}.list-scroll>table.edit-list tr>:nth-child(8){right:0}.list-scroll>table.edit-list td:nth-child(7)>.btn-edit-line{margin-left:auto}.list-scroll>table.edit-list tr>:nth-child(7){right:var(--pin-del-w, 36px)}.list-scroll>table.edit-list thead th:nth-child(7),.list-scroll>table.edit-list thead th:nth-child(8){background:var(--surface-2)}.list-scroll.overflowing>table.edit-list tr>:nth-child(7):before{content:"";position:absolute;top:0;bottom:0;left:-8px;width:8px;pointer-events:none;background:linear-gradient(to left,#00000024,#0000)}.list-scroll.tight>table.edit-list tr>:nth-child(7){padding-left:1px;padding-right:1px}.list-scroll.tight>table.edit-list tr>:nth-child(8){padding:0;border-left:0}.list-scroll.tight>table.edit-list tr>td:nth-child(8)>.btn-delete-line{display:none}.list-scroll>table.edit-list tr.unconnected-row{opacity:1;font-style:normal}.list-scroll>table.edit-list tr.unconnected-row input{color:var(--text);cursor:text}#row-edit-dialog #row-edit-heading{font-weight:400}#row-edit-delete{margin-right:auto}#row-edit-dialog textarea#row-edit-comment{display:block;width:100%;box-sizing:border-box;margin-top:3px;padding:4px 6px;font-size:var(--fs-label);font-family:inherit;line-height:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:3px;resize:vertical}#row-edit-top{display:flex;align-items:center;gap:10px;margin-top:8px;font-size:var(--fs-label)}#row-edit-top .row-edit-ch-label{color:var(--text-muted);font-weight:400}#row-edit-top .ch-cell{text-align:left;padding-right:0!important;display:inline-flex;align-items:flex-start}#row-edit-top .ch-cell input.ch-num{min-width:0;margin:0;padding:4px 6px;box-sizing:content-box;font:inherit;font-variant-numeric:tabular-nums;color:var(--text);text-align:center;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:3px;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}#row-edit-top .ch-cell input.ch-num::-webkit-inner-spin-button,#row-edit-top .ch-cell input.ch-num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#row-edit-top .ch-cell input.ch-num:disabled{cursor:not-allowed;color:var(--text-muted);opacity:.7}#row-edit-top label.checkbox-row{margin:0 0 0 auto}#row-edit-linked-row{margin-top:10px}#my-equipment-page{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;background:var(--bg)}#my-equipment-page #page-body{flex:1 1 auto;width:100%;box-sizing:border-box;min-width:0;max-width:960px;margin:0 auto}.me-lead{margin-top:-8px}.me-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);padding:12px 14px}.me-card textarea{width:100%;box-sizing:border-box;font-family:inherit;font-size:var(--fs-label)}.me-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-top:8px}.me-list-head{align-items:baseline;margin-top:0}.me-list-head h2{margin:0}.me-list-head h2{flex:1 1 auto}.me-list-head #me-list-summary{order:3;flex:1 0 100%;padding:0}.me-field{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-caption);color:var(--text-muted);min-width:0}.me-field input,.me-field select{font-size:var(--fs-label);min-width:0}.me-grow{flex:1 1 220px}.me-qty-field input{width:80px}.me-check{font-size:var(--fs-label);display:flex;align-items:center;gap:4px}.me-file{display:inline-block}.me-sub{font-size:var(--fs-caption);color:var(--text-muted);margin:4px 0}.me-summary{margin:10px 0 4px;font-size:var(--fs-label)}.me-warn{color:var(--danger-text);font-size:var(--fs-label);margin:6px 0}.me-table td,.me-table th{overflow-wrap:break-word}.me-table .offers-status-pill{white-space:nowrap}.me-qty{width:64px}.me-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.me-btn{padding:4px 10px}.me-describe{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;padding:6px 0}.me-back-link{display:inline-block;margin:0 0 8px;color:var(--accent-text)}.me-item-title{display:flex;align-items:center;gap:6px}.offers-status-pill--info{background:var(--surface-2);color:var(--text-2)}.me-from-offer{position:relative;margin:0 0 8px;padding-right:28px}.me-from-offer a{color:var(--accent-text)}.me-from-offer-hide{position:absolute;top:0;right:0;border:0;background:none;color:var(--text-muted);cursor:pointer;font-size:16px;line-height:1;padding:0 4px}.me-grow-row{align-items:center;gap:8px;flex-wrap:wrap}.me-formed{display:flex;gap:8px;align-items:center;margin:4px 0 8px;cursor:pointer}.me-search{margin:8px 0;max-width:360px}.me-pile{border:1px solid var(--border-strong);border-radius:var(--radius-panel);padding:8px 12px;margin:8px 0 12px}.me-pile-title{font-size:var(--fs-body)}.me-section{border-top:1px solid var(--border)}.me-section-summary{cursor:pointer;padding:8px 0;font-size:var(--fs-label)}@media (max-width: 700px){#my-equipment-page #page-body{padding:12px}.me-list-table,.me-list-table tbody,.me-list-table tr.me-describe-row,.me-list-table tr.me-describe-row td{display:block}.me-list-table thead{display:none}.me-list-table tr[data-row-key]{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 0;border-bottom:1px solid var(--surface-2)}.me-list-table tr[data-row-key] td{border:0;padding:0}.me-list-table .me-item{flex:1 1 100%}}#param-riser{display:flex;flex-direction:column;gap:8px;margin-top:8px}#param-riser .dim-row{max-width:none}.riser-chips-label{font-size:var(--fs-caption);color:var(--text-muted)}.riser-chips{display:flex;flex-wrap:wrap;gap:6px}.riser-chip{min-width:44px;min-height:32px;padding:4px 8px;font-size:var(--fs-label);font-variant-numeric:tabular-nums;cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:var(--radius-control);box-shadow:var(--btn-face-shadow)}.riser-chip:hover{background:var(--btn-face-hover-bg)}.riser-chip[aria-pressed=true]{background:var(--accent-text);border-color:var(--accent-text);color:var(--surface)}.riser-resize-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 12px;font-size:var(--fs-label);font-weight:600;cursor:pointer;background:var(--accent-text);color:var(--surface);border:1px solid var(--accent-text);border-radius:var(--radius-control)}.riser-resize-toggle:hover{filter:brightness(1.08)}.riser-resize-toggle[aria-pressed=true]{background:var(--surface);color:var(--accent-text)}#param-construction .construction-block{display:flex;flex-direction:column;gap:2px;margin-top:8px}#param-construction .dim-row{max-width:none}.construction-image-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.construction-image-btn{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 10px;font-size:var(--fs-label);cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:var(--radius-control);box-shadow:var(--btn-face-shadow)}.construction-image-btn:hover{background:var(--btn-face-hover-bg)}.construction-derived{margin:8px 0 0;font-size:var(--fs-caption);color:var(--text-muted);font-variant-numeric:tabular-nums;line-height:1.5}.construction-warning{align-self:flex-start;margin-top:6px;padding:2px 10px;border-radius:999px;font-size:var(--fs-caption);font-weight:700;background:#fff3cd;color:#7a5b00}#riser-handles,#led-handles{position:fixed;top:0;left:0;width:calc(100% - var(--rightbar-w));height:100%;z-index:1;pointer-events:none;touch-action:none}.riser-handle{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;padding:0;border:0;background:none;display:grid;place-items:center;pointer-events:auto;touch-action:none}.riser-handle[hidden]{display:none}.riser-handle:after{content:"";width:14px;height:14px;box-sizing:border-box;background:var(--surface);border:2px solid var(--accent-text);box-shadow:0 1px 3px #00000059}.riser-handle-edge:after{border-radius:50%}.riser-handle-corner:after{border-radius:2px;background:var(--accent-text)}.riser-handle-height{cursor:ns-resize}.riser-handle-height:after{width:22px;height:26px;border:0;border-radius:0;box-shadow:none;background:var(--accent-text);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 26'%3E%3Cpath d='M11 1 L20 11 H14 V21 H8 V11 H2 Z'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 26'%3E%3Cpath d='M11 1 L20 11 H14 V21 H8 V11 H2 Z'/%3E%3C/svg%3E") center / contain no-repeat}.riser-handle-dock{cursor:pointer}.riser-handle-dock:after{content:"+";width:24px;height:24px;border-radius:50%;color:var(--accent-text);font:700 17px/19px system-ui,sans-serif;text-align:center}.riser-handle:hover:after,.riser-handle-active:after{transform:scale(1.18)}.riser-handle:focus-visible{outline:2px solid var(--accent-text);outline-offset:-8px}.riser-bar{position:absolute;left:12px;top:calc(var(--topbar-h) + 10px);display:flex;align-items:center;gap:8px;pointer-events:none}.riser-done-floating{position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 8px #00000040}.riser-done{min-height:34px;padding:6px 12px;font-size:var(--fs-label);font-weight:600;white-space:nowrap;cursor:pointer;pointer-events:auto;background:var(--surface);color:var(--accent-text);border:1px solid var(--accent-text);border-radius:var(--radius-control);box-shadow:0 1px 4px #00000040}.riser-readout{white-space:nowrap;padding:6px 10px;font-size:var(--fs-body);font-weight:650;font-variant-numeric:tabular-nums;color:var(--surface);background:var(--accent-text);border-radius:var(--radius-panel);box-shadow:0 1px 4px #00000040;pointer-events:none}@media (prefers-reduced-motion: reduce){.riser-handle:hover:after,.riser-handle-active:after{transform:none}}#param-stage-edit{display:flex;flex-direction:column;gap:8px;margin-top:8px}#param-stage-edit.hidden{display:none}#stage-anchor{position:fixed;top:0;left:0;width:calc(100% - var(--rightbar-w));height:100%;z-index:1;pointer-events:none;touch-action:none}.anchor-pin{position:absolute;width:26px;height:26px;margin:-13px 0 0 -13px;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--accent-text);border:1px solid var(--accent-text);box-shadow:0 1px 4px #00000040;pointer-events:none}.anchor-pin[hidden]{display:none}.anchor-pin svg{width:16px;height:16px}.led-media-block{display:flex;flex-direction:column;gap:4px;margin-top:4px}.led-media-block input[type=url]{width:100%;box-sizing:border-box}.led-media-admin{display:flex;flex-direction:column;gap:4px}.led-media-admin.construction-image-row{flex-direction:row;margin-top:0}.led-media-block .construction-derived{margin-top:2px;min-height:1.5em;white-space:normal}.offer-overlay .offer-answer-mark{display:inline-flex}.ov-mark{all:unset;display:inline-flex;padding:2px;border-radius:6px;color:var(--text-muted);box-sizing:border-box}button.ov-mark{cursor:pointer}button.ov-mark:hover{color:var(--accent-text)}button.ov-mark:focus-visible{outline:2px solid var(--accent-text)}.ov-mark--ok{color:#14602a}.ov-mark--warn{color:#7a5b00}.ov-mark--no{color:#8a1c22}.ov-mark--open{color:var(--text-muted);opacity:.4}.ov-mark--some{color:var(--text-muted)}.ov-gear-heading .ov-mark--some{color:#7a5b00}.ov-summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto}.ov-summary-part{display:inline-flex;align-items:baseline;gap:5px;padding:4px 10px;border-radius:999px;font-size:12px;line-height:1.3;white-space:nowrap}.ov-summary-part b{font-size:15px;font-weight:700}.ov-summary-part--ok{background:#d8f5da;color:#14602a}.ov-summary-part--warn{background:#fff3cd;color:#7a5b00}.ov-summary-part--no{background:#fbdadb;color:#8a1c22}.ov-summary-part--open{background:var(--surface-2);color:var(--text-muted)}@media (max-width: 640px){.ov-summary{margin-left:0;width:100%}}.ov-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 14px}.ov-toolbar .ov-btn{font-weight:600;color:var(--accent-text);border-color:var(--accent-text);background:var(--surface)}.ov-sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;padding:6px 12px;background:var(--surface-2);text-transform:uppercase;letter-spacing:.06em;font-size:var(--fs-caption);color:var(--text-muted)}.ov-sec-head.is-open{background:color-mix(in srgb,var(--accent-text) 9%,var(--surface))}.ov-sec-toggle{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:baseline;gap:6px;max-width:100%;padding:4px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:13px;font-weight:600;overflow-wrap:anywhere}.ov-sec-toggle:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.ov-sec-arrow{width:10px;font-size:11px;opacity:.7}.ov-sec-end{display:inline-flex;align-items:center;gap:8px}.ov-sec-count{white-space:nowrap}.ov-gear-heading th{padding:0}.ov-list-section>h2{padding:0;margin:0;border:1px solid var(--border);border-bottom:0;border-radius:8px 8px 0 0;overflow:hidden}.ov-list-section.is-shut>h2{border-bottom:1px solid var(--border);border-radius:8px}.ov-list-section.is-shut>table{display:none}.ov-item-name{all:unset;box-sizing:border-box;display:inline-flex;align-items:baseline;gap:6px;max-width:100%;padding:3px 10px;border:1px solid transparent;border-radius:6px;font-weight:500;overflow-wrap:anywhere}button.ov-item-name{cursor:pointer}button.ov-item-name:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.ov-item-name--open{border-color:var(--border);background:var(--surface-2)}.ov-item-name--ok{background:#d8f5da;color:#14602a}.ov-item-name--warn{background:#fff3cd;color:#7a5b00}.ov-item-name--no{background:#fbdadb;color:#8a1c22}.ov-item-name--some{background:#fff3cd;color:#7a5b00}.ov-item-arrow{width:10px;font-size:11px;opacity:.7}.ov-item-tag{font-size:12px;font-weight:600;white-space:nowrap}.ov-need{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;text-align:right}.ov-need-cap{display:block;font-size:11px;color:var(--text-muted);white-space:nowrap}.ov-gear-detail-head>td{padding-left:28px;background:var(--surface-2);color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.ov-gear-piece>td{background:var(--surface-2);font-size:13px;border-bottom:1px dotted var(--border)}.ov-gear-piece>td:first-child{padding-left:28px}.ov-gear-piece>td:nth-child(3){text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-muted)}.ov-piece-ch{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--text-muted)}.ov-kit-toggle{all:unset;cursor:pointer;color:var(--accent-text);text-decoration:underline;text-underline-offset:2px}.ov-kit-toggle:focus-visible{outline:2px solid var(--accent-text)}.ov-gear-kit>td{display:grid;gap:2px;padding:2px 10px 6px 40px;background:var(--surface-2);color:var(--text-muted);font-size:13px}.ov-kit-me{color:var(--text);font-weight:500}.ov-gear-blockhead>th{padding:6px 12px;background:var(--surface-2);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);text-align:left}.ov-gear-patchlink>th{padding:8px 12px;background:var(--surface-2);text-transform:none;letter-spacing:0}.ov-patchlink{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.ov-patch-btn{font:inherit;font-weight:600;color:var(--accent-text);background:var(--surface);border:1px solid var(--accent-text);border-radius:6px;padding:6px 12px;cursor:pointer}.ov-patch-btn:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.ov-patch-hint{font-size:12px;font-weight:400;color:var(--text-muted)}.ov-plan{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.ov-plan-sheet{background:#fff;padding:8px;overflow-x:auto;cursor:zoom-in}.ov-plan-sheet svg{display:block;max-width:100%;max-height:70vh;margin:0 auto;height:auto}@media (orientation: landscape) and (max-height: 520px){.ov-plan-sheet svg{max-height:62vh}}.ov-plan-io.on{background:var(--accent-text);border-color:var(--accent-text);color:#fff}.ov-plan-full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;background:#fff}.ov-plan-full-bar{display:flex;gap:8px;justify-content:flex-end;padding:8px 12px;border-bottom:1px solid var(--border);background:#fff}.ov-plan-full-scroll{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}.ov-plan-full-scroll svg{display:block;height:auto}@media (max-width: 640px),(orientation: landscape) and (max-height: 520px){.ov-table-gear .ov-gear-piece{grid-template-columns:minmax(0,1fr) 44px}.ov-table-gear .ov-gear-piece>td:nth-child(2){grid-column:1 / -1;order:3;padding-left:28px}.ov-table-gear .ov-gear-piece>td:nth-child(3){order:2}.ov-table-gear .ov-gear-piece>td:nth-child(4){display:none}.ov-table-gear .ov-gear-detail-head,.ov-table-gear .ov-gear-kit,.ov-table-gear .ov-gear-patchlink{grid-template-columns:minmax(0,1fr)}.ov-table-gear .ov-need{white-space:normal}.ov-sec-head{padding:6px 8px}.ov-sec-count{font-size:11px}}.stereo-link-controls{display:flex;flex-wrap:wrap;gap:6px}.stereo-link-controls button:disabled{opacity:.45;cursor:not-allowed}.stereo-link-controls button.active{outline:2px solid var(--accent-text);outline-offset:-2px}.stereo-link-controls .pick-several-btn{display:none}@media (pointer: coarse),(hover: none){.stereo-link-controls .pick-several-btn{display:flex}}.list-scroll>table.edit-list tbody tr.pair-first>td,.list-scroll>table.edit-list tbody tr.pair-second>td{background-image:linear-gradient(color-mix(in srgb,var(--accent-text) 7%,transparent),color-mix(in srgb,var(--accent-text) 7%,transparent))}.list-scroll>table.edit-list tbody tr.pair-first>td{border-bottom-color:transparent}.list-scroll>table.edit-list tbody tr.pair-first>td:first-child,.list-scroll>table.edit-list tbody tr.pair-second>td:first-child{box-shadow:inset 3px 0 0 0 var(--accent-text)}.list-footer{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;box-sizing:border-box;width:100%;min-width:0;container-type:inline-size}@container (max-width: 330px){.stereo-link-controls button>span{display:none}}@media (pointer: coarse),(hover: none){@container (max-width: 470px){.stereo-link-controls button>span{display:none}}}.list-footer>.stereo-link-controls{flex-wrap:nowrap}.list-footer button{flex:0 0 auto;white-space:nowrap}.list-footer>.selection-count-badge{display:block;flex:0 1 auto;min-width:0;margin:2px 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-footer>.selection-count-badge.hidden{display:none}.list-scroll>table.edit-list tbody tr.pair-first>td.ch-cell{position:relative;overflow:visible}.pair-mark{position:absolute;z-index:1;top:calc(50% + .45em);height:calc(100% - .9em);width:13px;margin-left:calc(var(--digits, 1) * .3em);transform:translate(-50%);color:var(--accent-text);pointer-events:none}.pair-mark>svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.4px;vector-effect:non-scaling-stroke}.pair-mark>svg rect{vector-effect:non-scaling-stroke}.model-picker-list{position:fixed;z-index:1000;min-width:260px;max-width:min(420px,90vw);max-height:300px;overflow-y:auto;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-panel);box-shadow:0 6px 18px #0000002e}.model-picker-list.hidden{display:none}.model-picker-option{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-height:40px;padding:6px 10px;cursor:pointer;border-bottom:1px solid var(--border)}.model-picker-option:hover,.model-picker-option.active{background:var(--surface-hover)}.model-picker-name{font-size:var(--fs-body);color:var(--text)}.model-picker-meta{font-size:var(--fs-caption);color:var(--text-muted)}.model-picker-note{padding:8px 10px;font-size:var(--fs-caption);color:var(--text-muted)}.model-picker-more{min-height:44px;display:flex;align-items:center;padding:6px 10px;font-size:var(--fs-body);color:var(--accent-text);cursor:pointer;border-top:1px solid var(--border)}.model-picker-more:hover{background:var(--surface-hover)}.model-picker-keep{padding:8px 10px;min-height:40px;box-sizing:border-box;display:flex;align-items:center;border-top:1px solid var(--border);font-size:var(--fs-caption);color:var(--text-muted);cursor:pointer}.model-picker-keep:hover{background:var(--surface-hover)}.gear-not-in-catalog{display:block;font-size:var(--fs-caption);color:var(--text-muted);font-style:italic}.model-thumb{flex:none;width:28px;height:28px;border-radius:4px;object-fit:contain;background:var(--surface-hover)}.model-thumb-placeholder{display:inline-block;background:var(--text-muted);opacity:.55;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='12' rx='2'/%3E%3Ccircle cx='8' cy='12' r='2.2'/%3E%3Cpath d='M13 10h5M13 14h5'/%3E%3C/svg%3E") center / 80% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='12' rx='2'/%3E%3Ccircle cx='8' cy='12' r='2.2'/%3E%3Cpath d='M13 10h5M13 14h5'/%3E%3C/svg%3E") center / 80% no-repeat}.model-picker-option{flex-wrap:nowrap;align-items:center}.model-picker-text{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;flex:1;min-width:0}.gear-name-box{display:flex;align-items:center;gap:6px;min-width:0}.gear-name-box .model-thumb{width:22px;height:22px}.gear-name-box .gear-name-input{min-width:0;flex:1}.ov-guest-email{margin:0 0 12px}.ov-guest-email .ov-comment-label{margin-top:0}.ov-guest-email-row{display:flex;gap:10px;flex-wrap:wrap}.ov-guest-email-input{flex:1 1 220px;min-width:0;box-sizing:border-box;border:1px solid var(--border);border-radius:6px;padding:8px 10px;font:inherit}.ov-guest-email-hint{margin:6px 0 0;font-size:var(--fs-label);color:var(--text-muted)}.ov-guest-email-sent{margin:8px 0 0;font-weight:600}.set-password-card{margin:12px 0;padding:12px 14px;border:1px solid var(--accent-text);border-radius:6px;background:var(--surface-2)}.set-password-title{margin:0 0 6px;font-size:var(--fs-body)}.set-password-hint{margin:0 0 10px;font-size:var(--fs-label);color:var(--text-muted)}.set-password-label{display:block;margin:0 0 4px;font-size:var(--fs-label);color:var(--text-muted)}.set-password-row{display:flex;gap:10px;flex-wrap:wrap}.set-password-input{flex:1 1 220px;min-width:0;box-sizing:border-box;border:1px solid var(--border);border-radius:6px;padding:8px 10px;font:inherit}.set-password-message{margin:8px 0 0;font-weight:600}.set-password-message.error{color:var(--danger-text)}.catalog-book{display:inline-flex;align-items:center;justify-content:center;flex:none;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:none;color:var(--accent-text);cursor:pointer}.tab-section .gear-name-box button.catalog-book{min-width:0;margin:0;padding:0;border:none;background:none;color:var(--accent-text)}.catalog-book svg{width:14px;height:14px;flex:none}.tab-section .gear-name-box button.catalog-book:hover{background:var(--surface-2)}.catalog-card{position:absolute;z-index:60;width:300px;max-width:calc(100vw - 16px);box-sizing:border-box;padding:14px 16px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 6px 22px #141e3229;color:var(--text)}.catalog-card-close{position:absolute;top:6px;right:8px;padding:2px 6px;border:none;background:none;color:var(--text-muted);font-size:16px;cursor:pointer}.catalog-card-head{display:flex;align-items:center;gap:12px;margin:0 0 8px}.model-thumb.catalog-card-picture{width:56px;height:56px;flex:none}.catalog-card-maker{font-size:var(--fs-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.catalog-card-model{margin:2px 24px 0 0;font-size:17px;font-weight:650}.catalog-card-description{margin:0 0 10px;line-height:1.4}.catalog-card-facts{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0 0 12px;font-size:var(--fs-label)}.catalog-card-facts dt{color:var(--text-muted)}.catalog-card-facts dd{margin:0}.catalog-card-foot{padding-top:10px;border-top:1px solid var(--border)}.catalog-card-site{color:var(--accent-text);font-weight:600;text-decoration:none}.ov-where{margin:14px 0 0;padding:10px 12px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.ov-where-title{margin:0 0 8px;font-size:var(--fs-label);font-weight:600;color:var(--text)}.ov-where-sub{margin:8px 0 4px;font-size:var(--fs-caption);color:var(--text-muted)}.ov-where-kinds{display:flex;gap:4px;margin:0 0 8px;border-bottom:1px solid var(--border)}.ov-where-kind{flex:1 1 0;min-width:0;min-height:44px;padding:6px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--text-muted);font:inherit;font-size:var(--fs-label);font-weight:600;line-height:1.2;cursor:pointer}.ov-where-kind:hover{color:var(--text)}.ov-where-kind.is-on{color:var(--accent-text);border-bottom-color:var(--accent-text)}.ov-where-pick-hint{margin:0 0 6px;font-size:var(--fs-caption);color:var(--text-muted)}.ov-where-picked-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}.ov-where-picked{margin:0;font-size:var(--fs-body);font-weight:600;color:var(--text)}.ov-where-clear{min-height:44px;margin-left:auto;padding:6px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-panel);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-label);cursor:pointer}.ov-where-clear:hover{background:var(--surface-hover)}.ov-cal{width:100%;max-width:440px;margin:0 auto}.ov-cal-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.ov-cal-title{flex:1 1 auto;margin:0;text-align:center;font-size:var(--fs-heading);font-weight:600;color:var(--text);text-transform:capitalize}.ov-cal-nav{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:44px;height:44px;border:1px solid var(--border-strong);border-radius:var(--radius-panel);background:var(--surface);color:var(--text);cursor:pointer}.ov-cal-nav:hover{background:var(--surface-hover)}.ov-cal-weekdays,.ov-cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.ov-cal-wd{padding:4px 0;text-align:center;font-size:var(--fs-caption);color:var(--text-muted)}.ov-cal-grid{display:grid;gap:2px}.ov-cal-day{box-sizing:border-box;min-width:0;min-height:44px;padding:0;border:1px solid transparent;border-radius:var(--radius-panel);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-body);cursor:pointer}.ov-cal-day:hover{background:var(--surface-hover)}.ov-cal-day.is-outside{color:var(--text-muted);opacity:.45}.ov-cal-day.is-past{color:var(--text-muted);opacity:.6}.ov-cal-day.is-today{border-color:var(--accent-text);font-weight:700}.ov-cal-day.is-range-in{background:color-mix(in srgb,var(--accent-text) 16%,var(--surface))}.ov-cal-day.is-range-out{text-decoration:line-through;opacity:.4}.ov-cal-day.is-selected{background:var(--accent-text);border-color:var(--accent-text);color:#fff;font-weight:700;opacity:1}.ov-cal-day:focus-visible,.ov-cal-nav:focus-visible,.ov-where-kind:focus-visible,.ov-where-clear:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.ov-where-panel{margin-top:8px}.ov-where-row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end;margin-top:8px}.ov-where-panel>.ov-where-row:first-child{margin-top:0}.ov-where-field{display:flex;flex-direction:column;gap:3px;position:relative;min-width:0}.ov-where-venue-field{flex:2 1 220px}.ov-where-city-field{flex:1 1 140px}.ov-where-field-label{font-size:var(--fs-caption);color:var(--text-muted)}.ov-where-input{box-sizing:border-box;min-width:0;border:1px solid var(--border);border-radius:6px;padding:7px 9px;font:inherit;background:var(--surface)}.ov-where-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ov-where-chip{min-height:44px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--text);padding:4px 14px;font:inherit;font-size:var(--fs-caption);cursor:pointer}.ov-where-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.ov-where-wd{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--border-strong);border-radius:var(--radius-panel);background:var(--surface);color:var(--text-muted);font-size:var(--fs-label);cursor:pointer}.ov-where-wd-box{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.ov-where-wd:not(:has(.ov-where-wd-box:checked)) span{text-decoration:line-through}.ov-where-wd:has(.ov-where-wd-box:checked){border-color:var(--accent-text);background:color-mix(in srgb,var(--accent-text) 14%,var(--surface));color:var(--accent-text);font-weight:600}.ov-where-wd:has(.ov-where-wd-box:focus-visible){outline:2px solid var(--accent-text);outline-offset:1px}.ov-where-count{margin:8px 0 0;font-size:var(--fs-label);color:var(--text-muted)}.ov-where-dates{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.ov-where-date{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);padding:0 0 0 12px;font-size:var(--fs-label)}.ov-where-date-remove{min-width:44px;min-height:44px;border:0;background:transparent;color:var(--text-muted);font-size:1.1rem;line-height:1;padding:0 6px;cursor:pointer}.ov-where-suggest{position:absolute;top:100%;left:0;right:0;z-index:5;margin:2px 0 0;padding:0;list-style:none;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface);box-shadow:0 4px 14px #00000026}.ov-where-suggest-item{display:block;width:100%;text-align:left;border:0;background:transparent;padding:8px 10px;font:inherit;cursor:pointer}.ov-where-suggest-item:hover{background:var(--surface-hover)}.ov-where-hint{margin:10px 0 0;font-size:var(--fs-caption);color:var(--text-muted)}.ov-where-error{margin:8px 0 0;padding:6px 10px;border-radius:6px;background:#fbdadb;color:#8a1c22;font-size:var(--fs-label)}.ov-send-window{display:flex;flex-direction:column;box-sizing:border-box;width:min(560px,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:hidden;padding:14px 14px 12px}.ov-send-window h3{margin:0 36px 8px 0}.ov-send-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.ov-send-summary{padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.ov-send-line,.ov-send-counts,.ov-send-comment,.ov-send-linked{margin:0;overflow-wrap:anywhere}.ov-send-line+.ov-send-line,.ov-send-counts{margin-top:4px}.ov-send-counts{display:flex;flex-wrap:wrap;gap:4px 12px}.ov-send-count--ok b{color:var(--ok, #2e7d32)}.ov-send-count--substitute b{color:var(--warn, #b26a00)}.ov-send-count--na b{color:var(--danger, #c0392b)}.ov-send-comment{margin-top:8px;padding:6px 10px;border-left:3px solid var(--border-strong);color:var(--text-muted);white-space:pre-wrap}.ov-send-ask{margin:12px 0 0;font-weight:600;color:var(--text)}.ov-send-linked{margin-top:8px;padding:8px 10px;border-left:3px solid var(--accent);background:var(--surface-2);font-weight:600;color:var(--text)}.ov-send-where .ov-where{margin-top:8px}.ov-send-window .ov-where.is-not-set .ov-where-kinds,.ov-send-window .ov-where.is-not-set .ov-where-panel,.ov-send-window .ov-where.is-not-set .ov-where-row,.ov-send-window .ov-where.is-not-set .ov-where-hint{opacity:.5}.ov-send-or{margin:10px 0 0;text-align:center;font-size:var(--fs-caption);color:var(--text-muted)}.ov-send-notset{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:48px;margin-top:8px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-weight:600;cursor:pointer}.ov-send-notset.is-on{background:var(--btn-active-bg);color:var(--btn-active-text)}.ov-send-notset-note{margin:6px 0 0;font-size:var(--fs-caption);color:var(--text-muted)}.ov-send-need{margin:8px 0 0;font-size:var(--fs-caption);color:var(--text-muted)}.ov-send-window .ov-send-buttons{flex:0 0 auto;margin-top:10px}.ov-send-window .ov-send-buttons button{min-height:48px;font-size:var(--fs-body, 15px)}.ov-send-window .panel-close-btn{width:44px;height:44px;top:4px;right:4px}.ov-send-window .ov-where-chip{min-height:44px}.ov-send-window .ov-where-input[type=text]{min-height:44px;font-size:16px}.ov-send-window .ov-where-date-remove{min-width:44px;min-height:44px}.ov-send-window .ov-where-suggest-item{min-height:44px}@media (max-width: 520px){.ov-send-window .ov-where-field{flex:1 1 100%}}@media (orientation: landscape) and (max-height: 520px){.ov-where{flex:1 1 100%;margin-top:0}}.mixing-host{position:sticky;left:0;box-sizing:border-box;width:100%;min-width:0}.mixing-host .mixing-line{display:flex;align-items:center;gap:8px;box-sizing:border-box;width:100%;min-height:34px;margin:0 0 6px;padding:4px 8px;overflow:hidden;text-align:left;white-space:nowrap;font-size:var(--fs-label);cursor:pointer;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-control)}.mixing-host .mixing-line:hover{background:var(--surface-hover)}.mixing-line-title{flex:none;font-weight:700}.mixing-line-need{flex:none;font-size:var(--fs-caption);color:var(--text-muted);font-variant-numeric:tabular-nums}.mixing-line-picks{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.mixing-line-picks.none{color:var(--text-muted);font-style:italic}.mixing-line-pen{flex:none;display:inline-flex;color:var(--text-muted)}.mixing-monitor-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;box-sizing:border-box;min-height:34px;margin:0 0 6px;padding:2px 8px;font-size:var(--fs-label);background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-control)}.mixing-chips{display:flex;flex-wrap:wrap;gap:4px}.mixing-host .mixing-chip,.mixing-dialog .mixing-chip{display:inline-flex;min-width:0;min-height:0;margin:0;padding:3px 10px;font-size:var(--fs-label);cursor:pointer;background:var(--btn-face-bg);color:var(--text);border:1px solid var(--btn-face-border);border-radius:999px;box-shadow:var(--btn-face-shadow)}.mixing-host .mixing-chip:hover,.mixing-dialog .mixing-chip:hover{background:var(--btn-face-hover-bg)}.mixing-host .mixing-chip[aria-pressed=true],.mixing-dialog .mixing-chip[aria-pressed=true]{background:var(--accent-text);border-color:var(--accent-text);color:var(--surface)}.mixing-line:focus-visible,.mixing-chip:focus-visible,.mixing-brand:focus-visible,.mixing-back:focus-visible,.mixing-x:focus-visible,.mixing-pick button:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.mixing-dialog{display:flex;flex-direction:column;width:min(460px,calc(100vw - 32px));max-height:min(88vh,820px);max-height:min(88dvh,820px);padding:0;overflow:hidden;color:var(--text)}.mixing-dialog:focus{outline:none}.mixing-d-head{display:grid;gap:4px;padding:12px 14px 8px;border-bottom:1px solid var(--border)}.mixing-d-top{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.mixing-d-top h3{margin:0;font-size:var(--fs-heading)}.mixing-x{margin-left:auto;display:inline-flex;padding:4px;cursor:pointer;background:none;border:0;color:var(--text-muted)}.mixing-d-need{font-size:var(--fs-caption);color:var(--text-muted);font-variant-numeric:tabular-nums}.mixing-picks{display:flex;flex-wrap:wrap;gap:6px;min-height:24px}.mixing-pick{display:inline-flex;align-items:center;gap:4px;padding:1px 4px 1px 9px;font-size:var(--fs-label);border:1px solid var(--border-strong);border-radius:999px}.mixing-pick button{display:inline-flex;padding:3px;cursor:pointer;background:none;border:0;color:var(--text-muted)}.mixing-d-body{flex:1 1 auto;min-height:0;padding:10px 14px;overflow:auto}.mixing-d-body .hint{margin:0 0 8px}.mixing-brands{display:flex;flex-wrap:wrap;gap:6px}.mixing-brand,.mixing-back{padding:7px 11px;font-size:var(--fs-body);cursor:pointer;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-control)}.mixing-brand:hover,.mixing-back:hover{background:var(--surface-hover)}.mixing-brand.has{border-color:var(--accent-text);box-shadow:inset 0 0 0 1px var(--accent-text)}.mixing-count{margin-left:4px;font-size:var(--fs-caption);color:var(--text-muted);font-variant-numeric:tabular-nums}.mixing-bhead{display:flex;align-items:center;gap:10px;margin-bottom:6px}.mixing-bhead strong{font-size:var(--fs-heading)}.modal .mixing-row{display:flex;align-items:flex-start;gap:10px;margin:0;padding:7px 2px;cursor:pointer;color:var(--text);border-bottom:1px solid var(--border)}.mixing-row input{margin-top:3px}.mixing-row-name{font-size:var(--fs-body)}.mixing-row.any .mixing-row-name{font-weight:700}.mixing-row-meta{display:block;font-size:var(--fs-caption);color:var(--text-muted);font-variant-numeric:tabular-nums}.mixing-small{color:var(--accent-amber-text)}.mixing-tier{margin:10px 0 2px;font-size:var(--fs-caption);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.mixing-d-foot{display:flex;justify-content:flex-end;padding:10px 14px;border-top:1px solid var(--border)}.mixing-done{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;font-weight:700}.ov-show-banner{margin:0 0 10px;padding:8px 12px;border:1px solid var(--border);border-left:4px solid var(--accent, #3b82f6);border-radius:8px;background:var(--surface-2);color:var(--text);font-size:var(--fs-label);font-weight:600}.ov-show-banner.is-archived{border-left-color:var(--text-muted);color:var(--text-muted)}.publish-show-dialog{max-width:560px;width:calc(100vw - 32px);max-height:calc(100vh - 32px);overflow-y:auto}.publish-show-rider{margin:4px 0 0;color:var(--text-muted);font-size:var(--fs-caption)}.publish-show-status{margin:10px 0 0;font-size:var(--fs-label)}.publish-show-status.error{color:var(--danger, #c0392b)}.publish-show-result{margin-top:12px}.publish-show-url-row{display:flex;gap:8px;margin-top:4px}.publish-show-url-row input{flex:1;min-width:0}.ov-show-about{margin:-4px 0 10px;font-size:var(--fs-caption)}.ov-show-banner a{color:inherit;text-decoration:underline}.show-page{box-sizing:border-box;max-width:720px;margin:0 auto;padding:24px 16px 32px}.show-page-act{margin:0 0 8px;overflow-wrap:anywhere}.show-page-archive{margin:0 0 16px;padding:8px 12px;border:1px solid var(--border);border-left:4px solid var(--text-muted);border-radius:8px;background:var(--surface-2);color:var(--text-muted);font-weight:600}.show-page-facts{margin:0 0 20px;display:grid;gap:10px}.show-page-row{display:grid;grid-template-columns:7rem 1fr;gap:12px;align-items:baseline}.show-page-label{color:var(--text-muted);font-size:var(--fs-caption)}.show-page-value{margin:0;font-weight:600;overflow-wrap:anywhere}.show-page-actions{display:flex;flex-wrap:wrap;gap:10px}.repeat-show-group{margin:14px 0 0;padding:10px 12px;border:1px solid var(--border);border-radius:8px}.repeat-show-group.is-quiet{border-color:transparent;padding-left:0;color:var(--text-muted)}.repeat-show-legend{padding:0 6px;font-weight:600}.repeat-show-group.is-quiet .repeat-show-legend{padding-left:0;font-weight:400}.repeat-show-choice{display:flex;align-items:center;gap:8px;min-height:36px;cursor:pointer}.cabinet-page{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;background:var(--bg)}.cabinet-page #page-body{max-width:960px;margin:0 auto;width:100%;box-sizing:border-box}.shows-tabs{display:flex;gap:6px;margin:0 0 14px;border-bottom:1px solid var(--border)}.shows-tab{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:6px 14px;font-size:var(--fs-label);font-weight:600;color:var(--text-muted);background:transparent;border:0;border-bottom:3px solid transparent;cursor:pointer}.shows-tab.active{color:var(--accent-text);border-bottom-color:var(--accent-text)}.shows-list-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:start}.shows-list-layout>.mcal{grid-column:2;grid-row:1}.shows-list-main{grid-column:1;grid-row:1;min-width:0}.shows-table{width:100%;border-collapse:collapse;font-size:var(--fs-label)}.shows-table th{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text-muted);font-weight:600}.shows-table td{padding:8px 10px;border-bottom:1px solid var(--surface-2);overflow-wrap:anywhere;vertical-align:middle}.shows-row{cursor:pointer}.shows-row:hover,.shows-row:focus-visible{background:var(--surface-hover)}.shows-row--unread .shows-cell--date{font-weight:700}.shows-state{white-space:nowrap;border:1px solid var(--border);justify-self:start}@media (max-width: 899px){.shows-list-layout{grid-template-columns:minmax(0,1fr)}.shows-list-layout>.mcal,.shows-list-main{grid-column:1;grid-row:auto}}@media (max-width: 639px){.shows-table,.shows-table tbody,.shows-table tr,.shows-table td{display:block;width:100%;box-sizing:border-box}.shows-table thead{display:none}.shows-row{border:1px solid var(--border);border-radius:8px;margin:0 0 8px;padding:6px 4px;background:var(--surface-1, #fff)}.shows-table td{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:8px;border-bottom:0;padding:4px 8px}.shows-table td:before{content:attr(data-label);color:var(--text-muted);font-weight:600}}.mcal{border:1px solid var(--border);border-radius:8px;padding:8px;background:var(--surface-1, #fff);box-sizing:border-box;min-width:0}.mcal-fold{display:none}.mcal-head{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:4px;margin-bottom:6px}.mcal-nav,.mcal-title,.mcal-day,.mcal-all,.mcal-fold{font:inherit;color:inherit;background:transparent;border:0;cursor:pointer}.mcal-nav{min-height:32px;font-size:18px;border-radius:6px}.mcal-title{min-height:32px;font-weight:700;border-radius:6px;text-transform:capitalize}.mcal-title--on{background:var(--accent-text);color:#fff}.mcal-nav:hover,.mcal-title:hover:not(.mcal-title--on),.mcal-all:hover{background:var(--surface-hover)}.mcal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center}.mcal-wd{font-size:11px;color:var(--text-muted);padding:2px 0;text-transform:capitalize}.mcal-day{position:relative;min-height:32px;border-radius:6px;font-size:var(--fs-label)}.mcal-day--out{color:var(--text-muted);opacity:.55}.mcal-day--today{outline:2px solid var(--accent-text);outline-offset:-2px;font-weight:700}.mcal-day--candidate{background:var(--surface-2)}.mcal-day--show:after{content:"";position:absolute;left:50%;bottom:3px;width:7px;height:7px;margin-left:-3.5px;border-radius:50%;background:var(--text-muted)}.mcal-day--good:after{background:#14602a}.mcal-day--warn:after{background:#b88400}.mcal-day--on{background:var(--accent-text);color:#fff}.mcal-day--on:after{box-shadow:0 0 0 1.5px #fff}.mcal-all{display:block;width:100%;min-height:36px;margin-top:8px;font-weight:600;color:var(--accent-text);border:1px solid var(--accent-text);border-radius:6px}@media (max-width: 899px){.mcal-fold{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:40px;padding:0 6px;font-weight:700;text-transform:capitalize}.mcal-body{display:none;margin-top:6px}.mcal--open .mcal-body{display:block}}.shows-inbox-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.shows-inbox-item{display:flex;align-items:flex-start;gap:12px;width:100%;box-sizing:border-box;min-height:52px;padding:12px 14px;text-align:left;font:inherit;font-size:var(--fs-body);color:var(--text);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--border-strong);border-radius:8px;cursor:pointer}.shows-inbox-item:hover{background:var(--surface-hover)}.shows-inbox-new{flex:0 0 auto;align-self:center;padding:1px 8px;font-size:var(--fs-caption);font-weight:700;color:#fff;background:#b3261e;border-radius:10px}.shows-inbox-item--unread{background:#fff6f5;border-color:#b3261e}.shows-inbox-item--approval,.shows-inbox-item--new_offer{border-left-color:#14602a}.shows-inbox-item--reconfirm{border-left-color:#7a5b00}.shows-inbox-item--declined{border-left-color:#8a1c22}.shows-inbox-item>svg{flex:0 0 auto;margin-top:2px}.shows-inbox-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.shows-inbox-message{font-weight:600;overflow-wrap:anywhere}.shows-inbox-reason{color:var(--text-2);overflow-wrap:anywhere}.shows-inbox-when{color:var(--text-muted);font-size:var(--fs-caption)}.shows-inbox-open{flex:0 0 auto;align-self:center;color:var(--accent-text);font-size:var(--fs-label);font-weight:600}@media (max-width: 520px){.shows-inbox-open{display:none}}.shows-cal-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}@media (min-width: 900px){.shows-cal-layout{grid-template-columns:minmax(0,1fr) 240px}}.shows-cal-grid{min-width:0;padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:10px;--ec-bg-color: var(--surface);--ec-border-color: var(--border);--ec-text-color: var(--text);--ec-event-bg-color: #0c5c9e;--ec-event-text-color: #fff;--ec-today-bg-color: #e3f0fb;--ec-highlight-color: #e3f0fb;--ec-bg-event-color: #2c6b3f;--ec-bg-event-opacity: .18;--ec-button-bg-color: var(--surface-2);--ec-button-active-bg-color: #e3f0fb;--ec-button-active-border-color: #0c5c9e;font-size:var(--fs-label)}.shows-cal-grid .ec-toolbar{flex-wrap:wrap;gap:8px}.shows-cal-grid .ec-title{font-size:var(--fs-heading)}.shows-cal-grid button{min-height:34px;cursor:pointer}.shows-cal-grid .ec-event{cursor:pointer}.shows-cal-grid .show-ev--candidate{--ec-event-bg-color: #e3f0fb;--ec-event-text-color: #0c5c9e;background:#e3f0fb!important;color:#0c5c9e!important;border:1px dashed #0c5c9e}.shows-cal-grid .show-ev--window-label{background:transparent!important;color:#14602a!important;font-weight:700;border-left:3px solid #2c6b3f;border-radius:0}.shows-cal-waiting{padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.shows-cal-waiting-title{margin:0 0 4px;font-size:var(--fs-heading)}.shows-cal-waiting-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}.shows-cal-waiting-item{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;min-height:40px;padding:6px 10px;text-align:left;font:inherit;font-size:var(--fs-label);color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:6px;cursor:pointer}.shows-cal-waiting-item:hover{background:var(--surface-hover)}.shows-cal-waiting-name{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.shows-cal-sketch{flex:0 0 auto;padding:1px 8px;font-size:var(--fs-caption);font-weight:700;color:#7a5b00;background:#fff3cd;border-radius:999px}.show-detail-back{display:inline-flex;align-items:center;gap:6px;min-height:36px;margin:0 0 12px}.show-detail-head{margin:0 0 18px}.show-detail-title{margin:0 0 8px;overflow-wrap:anywhere}.show-detail-state{margin:0 0 10px}.show-detail-facts{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:8px 12px;margin:10px 0 0;align-items:baseline}.show-detail-change-when{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin:12px 0 0}.show-detail-change-slot:not(:empty){margin:12px 0 0;max-width:560px}.show-detail-when-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.show-detail-when-actions button{min-height:44px}.show-detail-section,.show-detail-sketch{margin:0 0 20px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.show-detail-sketch{border-left:4px solid #7a5b00}.show-detail-h2{margin:0 0 10px;font-size:var(--fs-heading)}.show-detail-acts{list-style:none;margin:0;padding:0;display:grid;gap:10px}.show-detail-act-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.show-detail-act-name{overflow-wrap:anywhere}.show-detail-act-rider{color:var(--text-muted);font-size:var(--fs-label)}.show-detail-newer{padding:1px 8px;font-size:var(--fs-caption);font-weight:700;color:#7a5b00;background:#fff3cd;border-radius:999px}.shows-cal-feed{margin-top:16px;padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.shows-cal-feed-title{margin:0 0 4px;font-size:var(--fs-heading)}.shows-cal-feed-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.shows-cal-feed-actions button{display:inline-flex;align-items:center;gap:6px;min-height:40px}.show-detail-link,.show-detail-link .publish-show-result{margin-top:8px}.show-detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}.show-detail-back,.show-detail-link-btn,.show-detail-actions button,.show-detail-sketch button,.show-offer-btn,.show-offer-send,.show-offer-cancel{display:inline-flex;align-items:center;gap:6px;min-height:40px}.show-offers-sort{display:flex;align-items:center;gap:8px;margin:0 0 10px}.show-offers-sort select{min-height:36px;max-width:100%;padding:4px 8px;font-size:var(--fs-label);background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-control)}.show-offers{list-style:none;margin:0;padding:0;display:grid;gap:10px}.show-offer{padding:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.show-offer-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px}.show-offer-supplier{font-weight:700;overflow-wrap:anywhere;min-width:0}.show-offer-facts{display:flex;flex-wrap:wrap;gap:6px 8px;margin:8px 0}.show-offer-match,.show-offer-missing,.show-offer-changed{padding:2px 10px;font-size:var(--fs-label);font-weight:700;border-radius:999px}.show-offer-match{color:#14602a;background:#d8f5da}.show-offer-missing{color:#8a1c22;background:#fbdadb}.show-offer-missing--none{color:var(--text-muted);background:var(--surface-3)}.show-offer-changed{color:#7a5b00;background:#fff3cd}.show-offer-actions{display:flex;flex-wrap:wrap;gap:8px}.show-offer-form{display:grid;gap:6px;margin-top:10px}.show-offer-form-label{font-size:var(--fs-label);font-weight:600}.show-offer-form-note{margin:0;color:var(--text-2)}.show-offer-text{width:100%;box-sizing:border-box;font:inherit;font-size:var(--fs-body);padding:6px 8px}.show-offer-form-buttons{display:flex;flex-wrap:wrap;gap:8px}.show-page-root{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;background:var(--bg)}.show-page-card{box-sizing:border-box;padding:20px 22px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.show-page-btn{display:inline-flex;align-items:center;gap:6px;min-height:40px}@media (max-width: 520px){.show-page{padding:16px 12px 24px}.show-page-card{padding:16px}.show-page-row,.show-detail-facts{grid-template-columns:1fr;gap:2px}}.show-offer-said-not-set,.ovr-said-not-set{margin:4px 0 0;font-size:var(--fs-label);color:var(--text-muted)}.catalog-card-choices{position:absolute;z-index:60;width:300px;max-width:calc(100vw - 16px);box-sizing:border-box;padding:10px 10px 8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 6px 22px #141e3229;color:var(--text)}.catalog-card-choices-head{padding:0 6px 8px;font-size:12px;font-weight:600;color:var(--muted)}.catalog-card-choice{display:flex;gap:8px;align-items:center;width:100%;padding:8px 6px;border:0;border-bottom:1px solid var(--border);border-radius:6px;background:none;text-align:left;color:inherit;cursor:pointer;font:inherit}.catalog-card-choice:last-child{border-bottom:0}.catalog-card-choice:hover,.catalog-card-choice:focus-visible{background:var(--surface-hover)}.catalog-card-choice.active{background:var(--surface-hover);box-shadow:inset 2px 0 0 var(--accent-text)}.public-viewer [hidden]{display:none!important}.public-viewer{--topbar-h: 44px;--bottom-stack-h: 0px;--rightbar-w: 44px;--pv-compact-h: 0px;box-sizing:border-box;padding-right:var(--rightbar-w)}.pv-bar{position:relative;flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:var(--topbar-h);padding:0 10px;background:#f5f6f9eb;border-bottom:1px solid var(--border);box-shadow:none;overflow:visible;z-index:30}.pv-folded{display:none!important}.pv-view-controls{display:contents}.pv-bar-brand{display:inline-flex;align-items:center;flex:none;padding:0;border:0}.pv-bar-sub{flex:none;font-size:var(--fs-caption);color:var(--text-muted);white-space:nowrap}.pv-bar-title{flex:1 1 8ch;min-width:7ch;margin:0;padding:0;border-left:0;font-size:var(--fs-heading);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv-sep{align-self:stretch;width:1px;margin:2px;background:var(--surface-hover)}.pv-zoom{display:inline-flex;gap:4px}.pv-extras{display:inline-flex;align-items:center;gap:6px}.pv-more{position:relative;margin-left:auto}.pv-more-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:40;display:grid;gap:4px;min-width:160px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);box-shadow:0 8px 24px #00000024}.pv-more-zoom{display:flex;gap:4px}.pv-extras-slot{display:grid;gap:6px;padding-top:4px;border-top:1px solid var(--border)}.pv-stage-wrap{bottom:var(--pv-compact-h)}.pv-schematic-wrap{cursor:grab}.pv-schematic-stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.pv-schematic-stage svg{width:100%;height:100%;max-width:none;max-height:none}.pv-compact{position:absolute;left:0;right:0;bottom:0;z-index:4;background:#fff;border-top:1px solid var(--border);touch-action:none;cursor:default;font-family:Helvetica Neue,Arial,sans-serif;font-size:13px}.pv-compact.pv-dragging{transition:none;-webkit-user-select:none;user-select:none}.pv-compact.pv-snap{transition:transform .18s ease}.pv-compact .sv-caption{font-size:1.05em;margin:.6em 0 .5em}#pv-compact-grid{padding:0 10px 10px}.sv-io th{text-align:left;font-weight:800;font-size:1em;padding:.1em .5em;color:#000;border:0}.pv-dock-tabs{display:contents}#pv-dock-body{flex:1 1 auto;min-height:0;overflow:auto;background:var(--surface)}.pv-pane>.pv-phead{display:none}.pv-tab-section{width:100%}.pv-rid{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px 12px;padding:12px}.pv-rid-l{font-size:var(--fs-label);color:var(--text-muted)}.pv-rid-v{font-size:var(--fs-body);overflow-wrap:anywhere}.pv-rid-empty{color:var(--text-muted)}.pv-rid .pv-logo{display:block;margin-bottom:6px}.pv-rid .pv-rider-text{max-width:none}table.pv-io{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px}table.pv-io td{padding:7px 12px;line-height:1.4;border-top:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;color:var(--text)}table.pv-io tr:first-child td{border-top:0}table.pv-io tbody tr{cursor:pointer}table.pv-io tbody tr:nth-child(2n) td{background:var(--surface-2)}table.pv-io tbody tr:hover td{background:var(--surface-hover)}table.pv-io tbody tr.selected-row td{background:color-mix(in srgb,var(--accent-text) 12%,var(--surface));font-weight:600}table.pv-io tbody tr.unconnected-row td{color:var(--text-muted);font-style:italic}table.pv-io td:nth-child(1){width:68px;text-align:left;padding-right:6px!important}table.pv-io td.ch-cell,table.pv-io td:nth-child(3){color:var(--text-muted)}.pv-io-note{font-size:.92em;opacity:.85}#pv-gear-panel .pv-gear-table{table-layout:fixed}#pv-gear-panel .pv-gear-table tr.gear-line-expandable{cursor:pointer}#pv-gear-panel .pv-gear-table tr.gear-line-expandable[aria-expanded=true] td{background:var(--surface-2)}#pv-gear-panel .pv-gear-table tr.gear-detail-row td{width:auto;min-width:0;max-width:none;padding:0 12px 8px;white-space:normal;background:var(--surface-2);cursor:default}.pv-gear-detail{display:grid;gap:2px;font-size:13px}.pv-gear-detail-lbl{margin-top:2px;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.pv-gear-unit{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;align-items:baseline;padding:3px 0;border-bottom:1px dotted var(--border)}.pv-gear-unit-q{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--text-muted);text-align:right;white-space:nowrap}.pv-planfull{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#fff;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px)}.pv-pfbar{display:flex;gap:8px;justify-content:flex-end;padding:8px 12px;border-bottom:1px solid #ddd;background:#fff}.pv-pfscroll{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}.pv-pfscroll svg{display:block;height:auto}@media (max-width: 640px){.public-viewer{display:block;overflow-x:hidden;overflow-y:auto;padding-right:0;-webkit-overflow-scrolling:touch}.pv-bar{position:sticky;top:0;padding:8px 10px;background:var(--surface)}.pv-bar-title{order:-2;flex:1 1 calc(100% - 52px);white-space:normal;min-width:0;font-size:var(--fs-heading)}.pv-more{order:-1;margin-left:0}.pv-body{position:static}.pv-stage-wrap{position:relative;inset:auto;bottom:auto;height:clamp(260px,56vh,520px);border-bottom:1px solid var(--border)}.public-viewer.pv-mode-schematic .pv-stage-wrap{height:auto}.public-viewer.pv-mode-schematic .pv-schematic-wrap{position:static;height:auto;cursor:zoom-in;touch-action:pan-y}.public-viewer.pv-mode-schematic .pv-schematic-stage{width:100%}.public-viewer.pv-mode-schematic .pv-schematic-stage svg{width:100%;height:auto}.pv-selected{position:fixed;left:12px;right:12px;bottom:12px;width:auto}.public-viewer #rightbar{position:static;display:block;z-index:auto}.public-viewer #rightbar-panel{display:block;width:auto!important;height:auto;background:none;border-left:0}.public-viewer #rightbar-header,.public-viewer #rightbar-rail{display:none!important}#pv-dock-body{overflow:visible;padding:0 10px 24px;background:none}.pv-pane{margin:10px 0;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:8px}.pv-pane>.pv-phead{display:flex;align-items:center;padding:8px 12px;background:#e9f0f7;border-bottom:1px solid var(--border)}.pv-pane.is-shut>.pv-phead{background:var(--surface-2);border-bottom:0}.pv-pane.is-shut>.pv-pbody{display:none}.pv-pill{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-muted);font:inherit;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.pv-tw{display:inline-block;width:10px;font-size:11px}table.pv-io td:nth-child(1){width:62px;padding-left:10px}.pv-rid{grid-template-columns:110px minmax(0,1fr)}}.pv-side{display:none}.public-viewer.pv-landscape{--topbar-h: calc(var(--fs-label) + 1.25rem);padding-right:0}.public-viewer.pv-landscape .pv-bar{min-height:var(--topbar-h);padding:0 6px;gap:4px}.public-viewer.pv-landscape .pv-bar .pv-tool-btn{padding-top:0;padding-bottom:0;height:calc(var(--topbar-h) - .5rem)}.public-viewer.pv-landscape #rightbar{display:none}.public-viewer.pv-landscape .pv-stage-wrap{right:var(--pv-side-w, 0px)}.public-viewer.pv-landscape .pv-stage-hint{display:none}.public-viewer.pv-landscape .pv-side{position:absolute;top:var(--topbar-h);right:0;bottom:0;width:var(--pv-side-w, 0px);z-index:5;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--chrome-panel-bg);border-left:1px solid var(--border);min-width:0}.public-viewer.pv-landscape .pv-side[hidden]{display:none!important}.pv-side-head{display:flex;justify-content:center;gap:4px;padding:4px 2px;border-bottom:1px solid var(--border)}.pv-side.pv-side-folded{grid-template-rows:auto}.pv-side.pv-side-folded .pv-side-head{flex-direction:column;align-items:center;border-bottom:0}.pv-side-body{min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;background:var(--surface)}.pv-side-body table.pv-io{font-size:var(--fs-caption)}.pv-side-body table.pv-io td{padding:3px 6px;line-height:1.25}.pv-side-body table.pv-io td:nth-child(1){width:5.2em}.pv-side-body table.pv-io td:nth-child(2){width:8.5em}.pv-side-body table.pv-io tbody tr{cursor:default}.pv-side-body #pv-gear-panel,.pv-side-body #pv-gear-panel table{font-size:var(--fs-caption)}.pv-side-body #pv-gear-panel td,.pv-side-body #pv-gear-panel th{padding:2px 6px;line-height:1.25}
