@import"https://fonts.googleapis.com/css2?family=Oswald:wght@600;700&family=Fira+Sans:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";/*!
* FilePond 4.32.12
* Licensed under MIT, https://opensource.org/licenses/MIT/
* Please visit https://pqina.nl/filepond/ for details.
*/.filepond--assistant{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--browser.filepond--browser{position:absolute;margin:0;padding:0;left:1em;top:1.75em;width:calc(100% - 2em);opacity:0;font-size:0}.filepond--data{position:absolute;width:0;height:0;padding:0;margin:0;border:none;visibility:hidden;pointer-events:none;contain:strict}.filepond--drip{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;opacity:.1;pointer-events:none;border-radius:.5em;background:#00000003}.filepond--drip-blob{-webkit-transform-origin:center center;transform-origin:center center;width:8em;height:8em;margin-left:-4em;margin-top:-4em;background:#292625;border-radius:50%}.filepond--drip-blob,.filepond--drop-label{position:absolute;top:0;left:0;will-change:transform,opacity}.filepond--drop-label{right:0;margin:0;color:#4f4f4f;display:flex;justify-content:center;align-items:center;height:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--drop-label.filepond--drop-label label{display:block;margin:0;padding:.5em}.filepond--drop-label label{cursor:default;font-size:.875em;font-weight:400;text-align:center;line-height:1.5}.filepond--label-action{text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto;-webkit-text-decoration-color:#a7a4a4;text-decoration-color:#a7a4a4;cursor:pointer}.filepond--root[data-disabled] .filepond--drop-label label{opacity:.5}.filepond--file-action-button.filepond--file-action-button{font-size:1em;width:1.625em;height:1.625em;font-family:inherit;line-height:inherit;margin:0;padding:0;border:none;outline:none;will-change:transform,opacity}.filepond--file-action-button.filepond--file-action-button span{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--file-action-button.filepond--file-action-button svg{width:100%;height:100%}.filepond--file-action-button.filepond--file-action-button:after{position:absolute;left:-.75em;right:-.75em;top:-.75em;bottom:-.75em;content:""}.filepond--file-action-button{cursor:auto;color:#fff;border-radius:50%;background-color:#00000080;background-image:none;box-shadow:0 0 #fff0;transition:box-shadow .25s ease-in}.filepond--file-action-button:focus,.filepond--file-action-button:hover{box-shadow:0 0 0 .125em #ffffffe6}.filepond--file-action-button[disabled]{color:#ffffff80;background-color:#00000040}.filepond--file-action-button[hidden]{display:none}.filepond--action-edit-item.filepond--action-edit-item{width:2em;height:2em;padding:.1875em}.filepond--action-edit-item.filepond--action-edit-item[data-align*=center]{margin-left:-.1875em}.filepond--action-edit-item.filepond--action-edit-item[data-align*=bottom]{margin-bottom:-.1875em}.filepond--action-edit-item-alt{border:none;line-height:inherit;background:transparent;font-family:inherit;color:inherit;outline:none;padding:0;margin:0 0 0 .25em;pointer-events:all;position:absolute}.filepond--action-edit-item-alt svg{width:1.3125em;height:1.3125em}.filepond--action-edit-item-alt span{font-size:0;opacity:0}.filepond--file-info{position:static;display:flex;flex-direction:column;align-items:flex-start;flex:1;margin:0 .5em 0 0;min-width:0;will-change:transform,opacity;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--file-info *{margin:0}.filepond--file-info .filepond--file-info-main{font-size:.75em;line-height:1.2;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:100%}.filepond--file-info .filepond--file-info-sub{font-size:.625em;opacity:.5;transition:opacity .25s ease-in-out;white-space:nowrap}.filepond--file-info .filepond--file-info-sub:empty{display:none}.filepond--file-status{position:static;display:flex;flex-direction:column;align-items:flex-end;flex-grow:0;flex-shrink:0;margin:0;min-width:2.25em;text-align:right;will-change:transform,opacity;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--file-status *{margin:0;white-space:nowrap}.filepond--file-status .filepond--file-status-main{font-size:.75em;line-height:1.2}.filepond--file-status .filepond--file-status-sub{font-size:.625em;opacity:.5;transition:opacity .25s ease-in-out}.filepond--file-wrapper.filepond--file-wrapper{border:none;margin:0;padding:0;min-width:0;height:100%}.filepond--file-wrapper.filepond--file-wrapper>legend{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--file{position:static;display:flex;height:100%;align-items:flex-start;padding:.5625em;color:#fff;border-radius:.5em}.filepond--file .filepond--file-status{margin-left:auto;margin-right:2.25em}.filepond--file .filepond--processing-complete-indicator{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:3}.filepond--file .filepond--file-action-button,.filepond--file .filepond--processing-complete-indicator,.filepond--file .filepond--progress-indicator{position:absolute}.filepond--file [data-align*=left]{left:.5625em}.filepond--file [data-align*=right]{right:.5625em}.filepond--file [data-align*=center]{left:calc(50% - .8125em)}.filepond--file [data-align*=bottom]{bottom:1.125em}.filepond--file [data-align=center]{top:calc(50% - .8125em)}.filepond--file .filepond--progress-indicator{margin-top:.1875em}.filepond--file .filepond--progress-indicator[data-align*=right]{margin-right:.1875em}.filepond--file .filepond--progress-indicator[data-align*=left]{margin-left:.1875em}[data-filepond-item-state*=error] .filepond--file-info,[data-filepond-item-state*=invalid] .filepond--file-info,[data-filepond-item-state=cancelled] .filepond--file-info{margin-right:2.25em}[data-filepond-item-state~=processing] .filepond--file-status-sub{opacity:0}[data-filepond-item-state~=processing] .filepond--action-abort-item-processing~.filepond--file-status .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-error] .filepond--file-status-sub{opacity:0}[data-filepond-item-state=processing-error] .filepond--action-retry-item-processing~.filepond--file-status .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-complete] .filepond--action-revert-item-processing svg{-webkit-animation:fall .5s linear .125s both;animation:fall .5s linear .125s both}[data-filepond-item-state=processing-complete] .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-complete] .filepond--file-info-sub,[data-filepond-item-state=processing-complete] .filepond--processing-complete-indicator:not([style*=hidden])~.filepond--file-status .filepond--file-status-sub{opacity:0}[data-filepond-item-state=processing-complete] .filepond--action-revert-item-processing~.filepond--file-info .filepond--file-info-sub{opacity:.5}[data-filepond-item-state*=error] .filepond--file-wrapper,[data-filepond-item-state*=error] .filepond--panel,[data-filepond-item-state*=invalid] .filepond--file-wrapper,[data-filepond-item-state*=invalid] .filepond--panel{-webkit-animation:shake .65s linear both;animation:shake .65s linear both}[data-filepond-item-state*=busy] .filepond--progress-indicator svg{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes shake{10%,90%{-webkit-transform:translateX(-.0625em);transform:translate(-.0625em)}20%,80%{-webkit-transform:translateX(.125em);transform:translate(.125em)}30%,50%,70%{-webkit-transform:translateX(-.25em);transform:translate(-.25em)}40%,60%{-webkit-transform:translateX(.25em);transform:translate(.25em)}}@keyframes shake{10%,90%{-webkit-transform:translateX(-.0625em);transform:translate(-.0625em)}20%,80%{-webkit-transform:translateX(.125em);transform:translate(.125em)}30%,50%,70%{-webkit-transform:translateX(-.25em);transform:translate(-.25em)}40%,60%{-webkit-transform:translateX(.25em);transform:translate(.25em)}}@-webkit-keyframes fall{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}70%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}to{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes fall{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}70%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}to{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.filepond--hopper[data-hopper-state=drag-over]>*{pointer-events:none}.filepond--hopper[data-hopper-state=drag-over]:after{content:"";position:absolute;left:0;top:0;right:0;bottom:0;z-index:100}.filepond--progress-indicator{z-index:103}.filepond--file-action-button{z-index:102}.filepond--file-status{z-index:101}.filepond--file-info{z-index:100}.filepond--item{position:absolute;top:0;left:0;right:0;z-index:1;padding:0;margin:.25em;will-change:transform,opacity;touch-action:auto}.filepond--item>.filepond--panel{z-index:-1}.filepond--item>.filepond--panel .filepond--panel-bottom{box-shadow:0 .0625em .125em -.0625em #00000040}.filepond--item>.filepond--file-wrapper,.filepond--item>.filepond--panel{transition:opacity .15s ease-out}.filepond--item[data-drag-state]{cursor:-webkit-grab;cursor:grab}.filepond--item[data-drag-state]>.filepond--panel{transition:box-shadow .125s ease-in-out;box-shadow:0 0 0 transparent}.filepond--item[data-drag-state=drag]{cursor:-webkit-grabbing;cursor:grabbing}.filepond--item[data-drag-state=drag]>.filepond--panel{box-shadow:0 .125em .3125em #00000053}.filepond--item[data-drag-state]:not([data-drag-state=idle]){z-index:2}.filepond--item-panel{background-color:#64605e}[data-filepond-item-state=processing-complete] .filepond--item-panel{background-color:#369763}[data-filepond-item-state*=error] .filepond--item-panel,[data-filepond-item-state*=invalid] .filepond--item-panel{background-color:#c44e47}.filepond--item-panel{border-radius:.5em;transition:background-color .25s}.filepond--list-scroller{position:absolute;top:0;left:0;right:0;margin:0;will-change:transform}.filepond--list-scroller[data-state=overflow] .filepond--list{bottom:0;right:0}.filepond--list-scroller[data-state=overflow]{overflow-y:scroll;overflow-x:hidden;-webkit-overflow-scrolling:touch;-webkit-mask:linear-gradient(180deg,#000 calc(100% - .5em),transparent);mask:linear-gradient(180deg,#000 calc(100% - .5em),transparent)}.filepond--list-scroller::-webkit-scrollbar{background:transparent}.filepond--list-scroller::-webkit-scrollbar:vertical{width:1em}.filepond--list-scroller::-webkit-scrollbar:horizontal{height:0}.filepond--list-scroller::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:99999px;border:.3125em solid transparent;background-clip:content-box}.filepond--list.filepond--list{position:absolute;top:0;margin:0;padding:0;list-style-type:none;will-change:transform}.filepond--list{left:.75em;right:.75em}.filepond--root[data-style-panel-layout~=integrated]{width:100%;height:100%;max-width:none;margin:0}.filepond--root[data-style-panel-layout~=circle] .filepond--panel-root,.filepond--root[data-style-panel-layout~=integrated] .filepond--panel-root{border-radius:0}.filepond--root[data-style-panel-layout~=circle] .filepond--panel-root>*,.filepond--root[data-style-panel-layout~=integrated] .filepond--panel-root>*{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--drop-label,.filepond--root[data-style-panel-layout~=integrated] .filepond--drop-label{bottom:0;height:auto;display:flex;justify-content:center;align-items:center;z-index:7}.filepond--root[data-style-panel-layout~=circle] .filepond--item-panel,.filepond--root[data-style-panel-layout~=integrated] .filepond--item-panel{display:none}.filepond--root[data-style-panel-layout~=compact] .filepond--list-scroller,.filepond--root[data-style-panel-layout~=integrated] .filepond--list-scroller{overflow:hidden;height:100%;margin-top:0;margin-bottom:0}.filepond--root[data-style-panel-layout~=compact] .filepond--list,.filepond--root[data-style-panel-layout~=integrated] .filepond--list{left:0;right:0;height:100%}.filepond--root[data-style-panel-layout~=compact] .filepond--item,.filepond--root[data-style-panel-layout~=integrated] .filepond--item{margin:0}.filepond--root[data-style-panel-layout~=compact] .filepond--file-wrapper,.filepond--root[data-style-panel-layout~=integrated] .filepond--file-wrapper{height:100%}.filepond--root[data-style-panel-layout~=compact] .filepond--drop-label,.filepond--root[data-style-panel-layout~=integrated] .filepond--drop-label{z-index:7}.filepond--root[data-style-panel-layout~=circle]{border-radius:99999rem;overflow:hidden}.filepond--root[data-style-panel-layout~=circle]>.filepond--panel{border-radius:inherit}.filepond--root[data-style-panel-layout~=circle]>.filepond--panel>*{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--file-info,.filepond--root[data-style-panel-layout~=circle] .filepond--file-status{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--action-edit-item{opacity:1!important;visibility:visible!important}@media not all and (min-resolution:.001dpcm){@supports (-webkit-appearance:none) and (stroke-color:transparent){.filepond--root[data-style-panel-layout~=circle]{will-change:transform}}}.filepond--panel-root{border-radius:.5em;background-color:#f1f0ef}.filepond--panel{position:absolute;left:0;top:0;right:0;margin:0;height:100%!important;pointer-events:none}.filepond-panel:not([data-scalable=false]){height:auto!important}.filepond--panel[data-scalable=false]>div{display:none}.filepond--panel[data-scalable=true]{-webkit-transform-style:preserve-3d;transform-style:preserve-3d;background-color:transparent!important;border:none!important}.filepond--panel-bottom,.filepond--panel-center,.filepond--panel-top{position:absolute;left:0;top:0;right:0;margin:0;padding:0}.filepond--panel-bottom,.filepond--panel-top{height:.5em}.filepond--panel-top{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;border-bottom:none!important}.filepond--panel-top:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-1px;background-color:inherit}.filepond--panel-bottom,.filepond--panel-center{will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:translate3d(0,.5em,0);transform:translate3d(0,.5em,0)}.filepond--panel-bottom{border-top-left-radius:0!important;border-top-right-radius:0!important;border-top:none!important}.filepond--panel-bottom:before{content:"";position:absolute;height:2px;left:0;right:0;top:-1px;background-color:inherit}.filepond--panel-center{height:100px!important;border-top:none!important;border-bottom:none!important;border-radius:0!important}.filepond--panel-center:not([style]){visibility:hidden}.filepond--progress-indicator{position:static;width:1.25em;height:1.25em;color:#fff;margin:0;pointer-events:none;will-change:transform,opacity}.filepond--progress-indicator svg{width:100%;height:100%;vertical-align:top;transform-box:fill-box}.filepond--progress-indicator path{fill:none;stroke:currentColor}.filepond--list-scroller{z-index:6}.filepond--drop-label{z-index:5}.filepond--drip{z-index:3}.filepond--root>.filepond--panel{z-index:2}.filepond--browser{z-index:1}.filepond--root{box-sizing:border-box;position:relative;margin-bottom:1em;font-size:1rem;line-height:normal;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-weight:450;text-align:left;text-rendering:optimizeLegibility;direction:ltr;contain:layout style size}.filepond--root *{box-sizing:inherit;line-height:inherit}.filepond--root :not(text){font-size:inherit}.filepond--root[data-disabled]{pointer-events:none}.filepond--root[data-disabled] .filepond--list-scroller{pointer-events:all}.filepond--root[data-disabled] .filepond--list{pointer-events:none}.filepond--root .filepond--drop-label{min-height:4.75em}.filepond--root .filepond--list-scroller{margin-top:1em;margin-bottom:1em}.filepond--root .filepond--credits{position:absolute;right:0;opacity:.4;line-height:.85;font-size:11px;color:inherit;text-decoration:none;z-index:3;bottom:-14px}.filepond--root .filepond--credits[style]{top:0;bottom:auto;margin-top:14px}/*!
* FilePondPluginImagePreview 4.6.12
* Licensed under MIT, https://opensource.org/licenses/MIT/
* Please visit https://pqina.nl/filepond/ for details.
*/.filepond--image-preview-markup{position:absolute;left:0;top:0}.filepond--image-preview-wrapper{z-index:2}.filepond--image-preview-overlay{display:block;position:absolute;left:0;top:0;width:100%;min-height:5rem;max-height:7rem;margin:0;opacity:0;z-index:2;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--image-preview-overlay svg{width:100%;height:auto;color:inherit;max-height:inherit}.filepond--image-preview-overlay-idle{mix-blend-mode:multiply;color:#282828d9}.filepond--image-preview-overlay-success{mix-blend-mode:normal;color:#369763}.filepond--image-preview-overlay-failure{mix-blend-mode:normal;color:#c44e47}@supports (-webkit-marquee-repetition:infinite) and ((-o-object-fit:fill) or (object-fit:fill)){.filepond--image-preview-overlay-idle{mix-blend-mode:normal}}.filepond--image-preview-wrapper{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;left:0;top:0;right:0;height:100%;margin:0;border-radius:.45em;overflow:hidden;background:#00000003}.filepond--image-preview{position:absolute;left:0;top:0;z-index:1;display:flex;align-items:center;height:100%;width:100%;pointer-events:none;background:#222;will-change:transform,opacity}.filepond--image-clip{position:relative;overflow:hidden;margin:0 auto}.filepond--image-clip[data-transparency-indicator=grid] canvas,.filepond--image-clip[data-transparency-indicator=grid] img{background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' fill='%23eee'%3E%3Cpath d='M0 0h50v50H0M50 50h50v50H50'/%3E%3C/svg%3E");background-size:1.25em 1.25em}.filepond--image-bitmap,.filepond--image-vector{position:absolute;left:0;top:0;will-change:transform}.filepond--root[data-style-panel-layout~=integrated] .filepond--image-preview-wrapper{border-radius:0}.filepond--root[data-style-panel-layout~=integrated] .filepond--image-preview{height:100%;display:flex;justify-content:center;align-items:center}.filepond--root[data-style-panel-layout~=circle] .filepond--image-preview-wrapper{border-radius:99999rem}.filepond--root[data-style-panel-layout~=circle] .filepond--image-preview-overlay{top:auto;bottom:0;-webkit-transform:scaleY(-1);transform:scaleY(-1)}.filepond--root[data-style-panel-layout~=circle] .filepond--file .filepond--file-action-button[data-align*=bottom]:not([data-align*=center]){margin-bottom:.325em}.filepond--root[data-style-panel-layout~=circle] .filepond--file [data-align*=left]{left:calc(50% - 3em)}.filepond--root[data-style-panel-layout~=circle] .filepond--file [data-align*=right]{right:calc(50% - 3em)}.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=left],.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=right]{margin-bottom:.5125em}.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=center]{margin-top:0;margin-bottom:.1875em;margin-left:.1875em}:root{color-scheme:light;font-family:Fira Sans,Segoe UI,sans-serif;color:#111827;background:#eef0f5;--bg: #eef0f5;--bg-panel: #ffffff;--bg-card: #f5f7fb;--bg-hover: #f0f2f7;--bg-selected: #fff7ed;--border: #dde1eb;--border-soft: #e8eaf1;--border-strong: #c4cad8;--text: #111827;--text-muted: #566070;--text-faint: #99a0b2;--accent: #b85f10;--accent-text: #b85f10;--accent-soft: rgba(184, 95, 16, .08);--accent-dim: rgba(184, 95, 16, .18);--code: #1565a8;--code-soft: rgba(21, 101, 168, .07);--ok: #166534;--ok-soft: rgba(22, 101, 52, .08);--ok-border: rgba(22, 101, 52, .2);--warn: #92400e;--warn-soft: rgba(146, 64, 14, .08);--warn-border: rgba(146, 64, 14, .2);--danger: #991b1b;--danger-soft: rgba(153, 27, 27, .07);--danger-border: rgba(153, 27, 27, .2);--sidebar: #17202e;--sidebar-text: #9aacbe;--sidebar-muted: #4a5a6e}*{box-sizing:border-box}body{margin:0;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0}button,input,select,textarea{font:inherit}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.login-panel{width:min(360px,100%);display:grid;gap:18px;padding:36px;background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 24px #11182714}.login-brand{display:flex;align-items:center;gap:12px;padding-bottom:4px}.login-brand-text strong{display:block;font-family:Oswald,sans-serif;font-size:26px;font-weight:700;color:var(--text);letter-spacing:.02em;line-height:1}.login-brand-text span{display:block;font-size:12px;color:var(--text-muted);margin-top:3px}.login-panel label{display:grid;gap:7px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.login-panel input{height:44px;border:1px solid var(--border);border-radius:8px;padding:0 14px;background:var(--bg-card);color:var(--text);font-size:15px;font-weight:400;text-transform:none;letter-spacing:0;transition:border-color .15s,box-shadow .15s}.login-panel input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.login-btn{height:44px;border:0;border-radius:8px;background:var(--accent);color:#fff;font-size:15px;font-weight:600;cursor:pointer;margin-top:4px;transition:opacity .15s}.login-btn:hover:not(:disabled){opacity:.88}.login-btn:disabled{opacity:.55;cursor:wait}.login-error{margin:0;font-size:13px;color:var(--danger)}.shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr;transition:grid-template-columns .17s ease}.shell.sidebar-collapsed{grid-template-columns:58px 1fr}.sidebar{background:var(--sidebar);display:flex;flex-direction:column;gap:4px;padding:12px 8px;position:sticky;top:0;height:100vh;overflow:hidden}.brand-lockup{display:flex;align-items:center;gap:10px;padding:6px 8px 12px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:4px}.brand-text strong{display:block;font-family:Oswald,sans-serif;font-size:19px;font-weight:700;color:#fff;letter-spacing:.02em;line-height:1.1}.brand-text small{display:block;font-size:10px;font-weight:500;color:var(--sidebar-muted);letter-spacing:.06em;text-transform:uppercase}.collapse-button{width:30px;height:30px;display:grid;place-items:center;margin-left:auto;flex-shrink:0;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--sidebar-muted);background:transparent;cursor:pointer;transition:all .12s}.collapse-button:hover{color:#fff;background:#ffffff14}.sidebar-collapsed .sidebar{align-items:center;padding-inline:6px}.sidebar-collapsed .sidebar-label,.sidebar-collapsed .brand-logo{display:none}.sidebar-collapsed .brand-lockup{width:42px;justify-content:center;padding-inline:0}.sidebar-collapsed .collapse-button{margin-left:0}.sidebar-collapsed .user-chip,.sidebar-collapsed .nav button,.sidebar-collapsed .upload,.sidebar-collapsed .ghost-button{width:42px;justify-content:center;padding-inline:0}.user-chip{display:flex;align-items:center;gap:9px;padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff0a;min-width:0;margin-bottom:2px}.user-avatar{width:28px;height:28px;flex-shrink:0;border-radius:6px;background:#b85f104d;border:1px solid rgba(184,95,16,.5);color:#f9a84d;display:grid;place-items:center;font-size:13px;font-weight:700}.user-info{min-width:0;flex:1}.user-email{display:block;font-size:12px;font-weight:600;color:var(--sidebar-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{display:block;font-size:11px;color:var(--sidebar-muted)}.nav{display:grid;gap:2px}.nav button,.upload,.ghost-button{width:100%;min-height:38px;display:flex;align-items:center;gap:10px;padding:0 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--sidebar-text);font-size:13px;font-weight:500;cursor:pointer;text-align:left;transition:all .12s}.nav button:hover{color:#fff;background:#ffffff0f}.nav button.active{color:#f9a84d;background:#b85f1026;border-color:#b85f1040;box-shadow:inset 3px 0 #b85f10}.sidebar-divider{height:1px;background:#ffffff12;margin:6px 2px}.upload{border-color:#ffffff14}.upload:hover{color:#fff;border-color:#ffffff26;background:#ffffff0d}.upload input{display:none}.ghost-button{border-color:#ffffff14}.ghost-button:hover{color:#fff;border-color:#ffffff26;background:#ffffff0d}.logout-button{margin-top:auto;color:var(--sidebar-muted);border-color:transparent}.logout-button:hover{color:#fc8181;background:#dc26261f;border-color:transparent}.workspace{padding:16px 20px;display:grid;gap:10px;align-content:start;min-width:0}.topbar{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.searchbar{height:48px;display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;padding:0 8px 0 16px;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;color:var(--text-faint);transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 4px #1118270d}.searchbar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);color:var(--accent)}.searchbar input{border:0;outline:0;min-width:0;background:transparent;color:var(--text);font-size:15px}.searchbar input::placeholder{color:var(--text-faint)}.searchbar button{cursor:pointer;border:0}.search-submit{height:34px;padding:0 16px;border-radius:7px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;transition:opacity .12s}.search-submit:hover{opacity:.88}.clear-search{width:30px;height:30px;display:grid;place-items:center;border-radius:5px;background:var(--bg-card);color:var(--text-muted);transition:background .12s}.clear-search:hover{background:var(--bg-hover)}.status-strip{display:flex;gap:6px;align-items:center}.status-pill{height:34px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--border);border-radius:7px;background:var(--bg-panel);font-size:12px;color:var(--text-muted);white-space:nowrap}.command-panel{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:stretch}.summary-grid{display:flex;gap:6px}.summary-card{display:grid;gap:1px;padding:9px 14px;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;min-width:88px}.summary-card strong{font-size:19px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.1}.summary-card span{font-size:11px;color:var(--text-muted);white-space:nowrap}.quick-filters{display:flex;gap:5px;align-items:center;flex-wrap:wrap;padding:7px;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px}.quick-filters button{height:28px;padding:0 11px;border:1px solid transparent;border-radius:5px;font-size:12px;font-weight:500;color:var(--text-muted);background:transparent;cursor:pointer;white-space:nowrap;transition:all .1s}.quick-filters button:hover{color:var(--text);background:var(--bg-hover)}.quick-filters button.active{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-dim);font-weight:600}.filter-toggle{color:var(--text)!important;background:var(--bg-card)!important;border-color:var(--border-strong)!important;display:inline-flex!important;align-items:center;gap:6px}.filter-badge{min-width:17px;height:17px;display:inline-grid;place-items:center;border-radius:99px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;padding:0 4px}.filter-panel{display:grid;gap:12px;padding:14px;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;animation:slideDown .15s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.filter-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.filter-panel-head h2{font-size:13px;font-weight:600;color:var(--text)}.filter-panel-head span{font-size:12px;color:var(--text-muted)}.filter-block{display:grid;gap:8px;min-width:0;padding:10px;border:1px solid var(--border-soft);border-radius:8px;background:var(--bg-card)}.filter-block--primary{background:#f9fafb;border-color:var(--border)}.filter-block-head{display:flex;justify-content:space-between;align-items:center;gap:12px;min-width:0}.filter-block-head>div{display:grid;gap:2px;min-width:0}.filter-block-head strong{font-size:12px;font-weight:700;color:var(--text)}.filter-block-head span{overflow:hidden;color:var(--text-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.category-strip{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.category-strip button{min-height:30px;display:inline-flex;align-items:center;gap:5px;flex-shrink:0;max-width:260px;padding:5px 11px;border:1px solid var(--border);border-radius:5px;font-size:12px;font-weight:500;color:var(--text-muted);background:var(--bg-card);cursor:pointer;overflow:hidden;text-overflow:ellipsis;transition:all .1s}.category-strip button:hover{color:var(--text);border-color:var(--border-strong);background:var(--bg-hover)}.category-strip button.active{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-dim);font-weight:600}.category-strip button span{font-size:10px;opacity:.65;color:inherit}.category-strip--catalog button{color:var(--text);background:var(--bg-panel)}.filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:8px}.notice{display:flex;gap:10px;align-items:center;padding:10px 14px;background:var(--warn-soft);border:1px solid var(--warn-border);border-radius:7px;font-size:13px;color:var(--warn)}.group-band{display:grid;gap:10px}.variant-group{position:relative;display:grid;grid-template-columns:minmax(210px,.26fr) minmax(0,.74fr);gap:4px 18px;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:14px;overflow:hidden}.variant-group:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--code)}.variant-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.variant-heading-copy{display:grid;gap:2px;min-width:0}.variant-eyebrow{color:var(--text-faint);font-size:9px;font-weight:700;letter-spacing:.09em;line-height:1.2;text-transform:uppercase}.variant-heading strong{font-family:JetBrains Mono,monospace;font-size:15px;font-weight:500;color:var(--code);overflow-wrap:anywhere}.variant-count{flex-shrink:0;padding:2px 7px;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-muted);font-size:10px;font-weight:600;white-space:nowrap}.variant-explanation{grid-column:1;align-self:start;max-width:230px;margin:5px 0 0;color:var(--text-muted);font-size:11px;line-height:1.45}.variant-list{grid-column:2;grid-row:1 / span 2;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;min-width:0}.variant-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-card);cursor:pointer;text-align:left;transition:border-color .12s,background .12s,transform .12s}.variant-card:hover{border-color:var(--code);background:var(--code-soft);transform:translateY(-1px)}.variant-card:focus-visible{border-color:var(--code);outline:3px solid var(--code-soft)}.variant-name{grid-column:1 / -1;color:var(--text);font-size:12.5px;font-weight:600;line-height:1.35}.variant-code{display:flex;align-items:baseline;gap:6px;min-width:0;color:var(--text-faint);font-size:9px;text-transform:uppercase}.variant-code strong{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis}.variant-meta{grid-column:1;display:flex;flex-wrap:wrap;gap:3px 10px;min-width:0;color:var(--text-muted);font-size:10.5px}.variant-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.variant-availability{grid-column:2;grid-row:2 / span 2;align-self:end;display:grid;justify-items:end;gap:1px;font-variant-numeric:tabular-nums;white-space:nowrap}.variant-availability strong{font-size:10.5px}.variant-availability span{color:var(--text-muted);font-size:10px}.variant-availability.is-available strong{color:var(--ok)}.variant-availability.is-unavailable strong{color:var(--text-faint)}.content-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}.table-panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #1118270a}.panel-head{padding:12px 18px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--bg-card)}.panel-head h1{font-size:14px;font-weight:600;color:var(--text)}.panel-subtitle{font-size:12px;color:var(--text-muted)}.product-table{display:grid}.table-empty{min-height:100px;display:grid;place-items:center;font-size:13px;color:var(--text-faint);padding:24px}.row{display:grid;grid-template-columns:88px minmax(0,1fr) 132px;column-gap:12px;row-gap:6px;align-items:center;min-height:58px;padding:7px 18px;border:0;border-bottom:1px solid var(--border-soft);background:transparent;text-align:left;cursor:pointer;transition:background .1s}.row:last-child{border-bottom:0}.row:hover{background:var(--bg-hover)}.row.selected{background:var(--bg-selected);box-shadow:inset 3px 0 0 var(--accent)}.row span{min-width:0}.row-code{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;color:var(--code);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-field-wrap{position:relative;display:inline-flex;align-items:center;min-width:0;max-width:100%;width:fit-content}.row-code-wrap,.product-article-wrap{width:100%}.stock-row b.copy-field-wrap,.photo-tile strong.copy-field-wrap{display:inline-flex}.copy-field{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:4px;cursor:copy;transition:color .1s,background .1s,box-shadow .1s}.copy-field:hover,.copy-field:focus-visible{color:var(--accent-text);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.copy-hint{position:absolute;left:calc(100% + 6px);top:50%;z-index:20;transform:translateY(-50%);padding:2px 6px;border:1px solid var(--ok-border);border-radius:999px;background:#f0fdf4;color:var(--ok);font-size:10px;font-weight:700;line-height:1.2;white-space:nowrap;box-shadow:0 4px 12px #1118271a;pointer-events:none}.product-cell{display:grid;gap:2px;width:100%;min-width:0}.product-article{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;color:var(--code);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-name{font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-tags{display:flex;gap:3px;margin-top:2px;overflow:hidden}.ptag{min-width:0;max-width:100%;font-size:10px;font-weight:500;color:var(--text-muted);border:1px solid var(--border);border-radius:3px;padding:0 5px;height:15px;display:inline-flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;background:var(--bg-card)}.ptag.category-tag{color:var(--code);border-color:var(--accent-dim);background:var(--accent-soft)}.ptag.muted-tag{color:var(--text-faint);border-color:var(--border-soft);background:transparent}.row-side{display:grid;gap:4px;justify-items:end;justify-self:end;width:max-content;max-width:132px;min-width:0;padding-left:12px;border-left:1px solid var(--border-soft)}.row-stock{display:grid;gap:1px;justify-items:end;max-width:100%;min-width:0}.row-stock-qty{display:inline-flex;align-items:center;min-height:18px;max-width:100%;padding:1px 6px;border:1px solid var(--border);border-radius:999px;font-size:9.5px;font-weight:700;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-stock-lbl{padding-left:2px;font-size:10px;color:var(--text-faint);white-space:nowrap}.row-stock.is-available .row-stock-qty,.stock-status.is-available b{color:var(--ok);border-color:var(--ok-border);background:var(--ok-soft)}.row-stock.is-unavailable .row-stock-qty,.stock-status.is-unavailable b{color:var(--danger);border-color:var(--danger-border);background:var(--danger-soft)}.row-meta{max-width:118px;overflow:hidden;color:var(--text-faint);font-size:10px;text-align:right;text-overflow:ellipsis;white-space:nowrap}.stock-table{display:grid}.stock-row{display:grid;grid-template-columns:108px minmax(180px,1fr) 90px minmax(140px,1fr);gap:12px;align-items:center;min-height:52px;padding:7px 18px;border:0;border-bottom:1px solid var(--border-soft);background:transparent;text-align:left;cursor:pointer;transition:background .1s}.stock-row:last-child{border-bottom:0}.stock-row:hover{background:var(--bg-hover)}.stock-head{background:var(--bg-card);cursor:default;font-size:10px;font-weight:700;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;min-height:36px}.stock-head:hover{background:var(--bg-card)}.stock-row b{display:block;font-size:13px;font-weight:600;color:var(--text)}.stock-row em{display:block;font-size:11px;color:var(--text-muted);font-style:normal}.stock-status b{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border:1px solid var(--border);border-radius:999px;line-height:1.1}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:10px;padding:14px}.photo-tile{display:grid;grid-template-rows:120px auto auto auto;gap:6px;padding:8px;border:1px solid var(--border);border-radius:7px;background:var(--bg-panel);cursor:pointer;text-align:left;transition:all .1s}.photo-tile:hover{border-color:var(--border-strong);box-shadow:0 2px 8px #11182712}.photo-preview{display:grid;place-items:center;border-radius:5px;overflow:hidden;background:var(--bg-card);color:var(--text-faint)}.photo-preview img{width:100%;height:100%;object-fit:cover}.photo-tile strong{font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-tile span{font-size:11px;color:var(--text-muted);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-tile em{font-size:11px;color:var(--text-faint);font-style:normal}.detail-panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 1px 4px #1118270a;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.product-modal-overlay{z-index:980;padding:16px;align-items:stretch;justify-content:center;background:#0f172a94}.product-modal-panel{position:relative;top:auto;width:min(1480px,100%);max-height:none;height:calc(100vh - 32px);border-radius:10px;box-shadow:0 18px 70px #0f172a52}.product-modal-panel .detail-header{position:sticky;top:0;z-index:5;padding:14px 18px 12px}.product-modal-panel .detail-name{font-size:20px;line-height:1.2}.product-modal-panel .detail-code{font-size:12px}.detail-quick-facts{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.quick-fact{min-height:24px;display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:2px 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-panel);color:var(--text-muted);font-size:11px;font-weight:600;line-height:1.2;white-space:nowrap}.quick-fact b{color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}.quick-fact.is-available{color:var(--ok);border-color:var(--ok-border);background:var(--ok-soft)}.quick-fact.is-unavailable{color:var(--danger);border-color:var(--danger-border);background:var(--danger-soft)}.product-modal-close{width:30px;height:30px;flex-shrink:0;border:1px solid var(--border);background:var(--bg-panel)}.product-modal-panel .detail-metrics{grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 20px}.product-modal-panel .metric-card{min-height:68px;align-content:center}.product-modal-panel .metric-val{font-size:26px}.product-modal-panel .detail-tab-content{padding:16px 18px}.product-modal-panel .detail-main-content{grid-template-columns:minmax(420px,.85fr) minmax(420px,1.15fr);align-items:start}.product-modal-panel .detail-work-content{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));align-items:start}.product-modal-panel .editor-form{grid-column:1 / -1}.product-modal-panel .data-section,.product-modal-panel .onec-section{min-width:0}.product-modal-panel .detail-dl{grid-template-columns:150px minmax(0,1fr)}.product-modal-panel .panel-actions{flex-wrap:wrap;justify-content:flex-end}.detail-header{padding:14px 16px;border-bottom:1px solid var(--border);display:grid;gap:5px;background:var(--bg-card)}.detail-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.detail-name{font-size:14px;font-weight:600;color:var(--text);line-height:1.35;overflow-wrap:anywhere}.detail-code{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--code);display:flex;align-items:center;gap:6px}.panel-actions{display:flex;gap:6px;flex-shrink:0;padding-top:2px}.detail-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px 14px;border-bottom:1px solid var(--border)}.metric-card{display:grid;gap:2px;padding:8px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px}.metric-val{font-size:18px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;line-height:1}.metric-lbl{font-size:10px;color:var(--text-muted);margin-top:2px}.detail-tab-content{padding:14px;display:grid;gap:14px;border-bottom:1px solid var(--border)}.detail-tab-content:last-child{border-bottom:0}.detail-main-content{background:var(--bg-panel)}.detail-work-content{background:var(--bg-card)}.detail-dl{display:grid;grid-template-columns:120px 1fr;gap:9px;align-items:baseline}.detail-dt{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding-top:1px}.detail-dd{margin:0;font-size:13px;color:var(--text);overflow-wrap:anywhere}.detail-dd.mono{font-family:JetBrains Mono,monospace;font-size:11.5px;color:var(--code)}.category-path{color:var(--code);font-weight:500}.data-section{display:grid;gap:5px}.detail-work-content .data-section{padding:10px;border:1px solid var(--border);border-radius:7px;background:var(--bg-panel)}.onec-section{padding:10px;border:1px solid var(--border);border-radius:7px;background:var(--bg-card)}.data-section-title{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding-bottom:6px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:5px}.onec-grid{display:grid;grid-template-columns:minmax(130px,.45fr) minmax(0,1fr);gap:7px 10px;margin:0}.onec-grid dt{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.onec-grid dd{margin:0;min-width:0;color:var(--text);font-size:12px;overflow-wrap:anywhere}.history-modal{width:min(720px,94vw);max-height:82vh}.history-modal .modal-head span{display:block;margin-top:3px;max-width:560px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--text-muted)}.history-modal-body{display:grid;gap:12px;padding:14px;overflow-y:auto}.activity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.activity-chip{min-width:0;padding:7px;border:1px solid var(--border);border-radius:6px;background:var(--bg-panel)}.activity-chip span{display:block;font-size:16px;font-weight:700;color:var(--text);line-height:1.1}.activity-chip em{display:block;margin-top:2px;font-size:10px;font-style:normal;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.version-list{display:grid;gap:7px}.version-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-panel)}.version-main{min-width:0;display:grid;gap:4px}.version-title{display:flex;gap:7px;align-items:baseline;min-width:0}.version-title span{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--code)}.version-title strong{min-width:0;font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version-meta{font-size:11px;color:var(--text-muted)}.version-fields{display:flex;flex-wrap:wrap;gap:4px}.version-fields span{max-width:120px;padding:2px 6px;border-radius:999px;background:var(--bg-hover);color:var(--text-muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-item{font-size:12px;color:var(--text);padding:6px 9px;background:var(--bg-card);border:1px solid var(--border-soft);border-radius:5px;line-height:1.4}.data-item.mono{font-family:JetBrains Mono,monospace;font-size:11px}.data-link{display:block;font-size:11px;font-family:JetBrains Mono,monospace;color:var(--code);text-decoration:none;word-break:break-all;padding:5px 9px;background:var(--bg-card);border:1px solid var(--border-soft);border-radius:5px}.data-link:hover{color:var(--accent);border-color:var(--border)}.data-empty{font-size:12px;color:var(--text-faint);font-style:italic}.dim{opacity:.5}.dimension-editor{display:grid;gap:7px}.dimension-row{display:grid;grid-template-columns:minmax(96px,1fr) minmax(76px,.72fr) 52px 62px;gap:5px;align-items:center;min-width:0}.dimension-row--new{padding-top:7px;border-top:1px solid var(--border-soft)}.dimension-input{width:100%;min-width:0;height:28px;padding:0 7px;border:1px solid var(--border);border-radius:5px;background:var(--bg-card);color:var(--text);font-size:12px;outline:none}.dimension-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);background:var(--bg-panel)}.dimension-input:disabled{opacity:.6;cursor:wait}.dimension-actions{display:flex;gap:4px;align-items:center;justify-content:flex-end;min-width:0}.row-icon-btn{width:28px;height:28px;display:grid;place-items:center;flex-shrink:0;border:1px solid var(--border);border-radius:5px;background:var(--bg-panel);color:var(--text-muted);cursor:pointer;transition:all .1s}.dimension-add-btn{justify-self:end}.row-icon-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent-dim);background:var(--accent-soft)}.row-icon-btn:disabled{opacity:.38;cursor:default}.row-icon-danger:hover:not(:disabled){color:var(--danger);border-color:var(--danger-border);background:var(--danger-soft)}.editable-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.editable-row>span{flex:1;min-width:0}.row-delete-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-faint);cursor:pointer;transition:all .1s}.row-delete-btn:hover{border-color:var(--danger-border);background:var(--danger-soft);color:var(--danger)}.inline-add-form{display:flex;gap:6px;align-items:center;margin-top:4px}.app-add-form{flex-wrap:wrap}.app-add-form .suggest-wrap{flex:1;min-width:120px}.inline-input{flex:1;height:30px;padding:0 9px;border:1px solid var(--border);border-radius:6px;background:var(--bg-panel);font-size:12px;color:var(--text);outline:none;width:100%}.inline-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.inline-input:disabled{opacity:.6}.inline-error{margin:4px 0 0;font-size:11px;color:var(--danger)}.suggest-wrap{position:relative}.suggest-list{position:absolute;top:calc(100% + 3px);left:0;right:0;min-width:100%;z-index:200;background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 16px #0000001f;max-height:180px;overflow-y:auto;list-style:none;margin:0;padding:4px 0}.suggest-item{padding:6px 11px;font-size:12px;cursor:pointer;color:var(--text);overflow-wrap:anywhere;transition:background .08s}.suggest-item:hover{background:var(--bg-hover);color:var(--accent)}.stock-detail{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;padding:6px 9px;background:var(--bg-card);border:1px solid var(--border-soft);border-radius:5px}.stock-detail-wh{color:var(--text-muted)}.stock-detail-qty{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.editor-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:5px;font-size:10px;font-weight:700;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;min-width:0}.field input,.field select,.field textarea{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg-panel);color:var(--text);font-size:13px;font-weight:400;text-transform:none;letter-spacing:0;transition:border-color .12s}.field textarea{height:auto;padding:8px 10px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.field.full{grid-column:1 / -1}.toggle-field{grid-template-columns:auto 1fr;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text);text-transform:none;letter-spacing:0;cursor:pointer}.toggle-field input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent)}.form-error{grid-column:1 / -1;margin:0;padding:9px 12px;background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:6px;font-size:12px;color:var(--danger)}.editor-footer{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:7px}.small-button{height:30px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 12px;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:#fff;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .12s}.small-button:disabled{opacity:.55;cursor:wait}.small-button:hover:not(:disabled){opacity:.88}.small-button.quiet{background:var(--bg-panel);border-color:var(--border);color:var(--text-muted)}.small-button.quiet:hover:not(:disabled){opacity:1;color:var(--text);border-color:var(--border-strong);background:var(--bg-hover)}.code{font-family:JetBrains Mono,monospace;font-size:11.5px;color:var(--code)}.empty-state{min-height:380px;display:grid;place-items:center;align-content:center;gap:10px;text-align:center;padding:40px 28px;color:var(--text-faint)}.empty-state h2{font-size:15px;color:var(--text-muted)}.empty-state p{margin:0;font-size:12px;max-width:240px;line-height:1.55;color:var(--text-faint)}@media(max-width:1100px){.content-grid{grid-template-columns:1fr}.detail-panel{position:static;max-height:none}.product-modal-panel{height:calc(100vh - 24px)}.product-modal-panel .detail-main-content,.product-modal-panel .detail-work-content,.command-panel{grid-template-columns:1fr}.summary-grid{flex-wrap:wrap}}@media(max-width:1240px){.row{grid-template-columns:88px minmax(0,1fr)}.row-side{grid-column:2;grid-template-columns:auto auto;justify-content:start;justify-items:start;align-items:center;justify-self:start;max-width:100%;padding-left:0;border-left:0}.row-meta{max-width:180px;text-align:left}}@media(max-width:800px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;overflow-x:auto;padding:10px 14px}.row{grid-template-columns:1fr}.row-side{grid-column:auto;grid-template-columns:auto}.stock-row,.editor-form,.topbar{grid-template-columns:1fr}.filter-grid{grid-template-columns:1fr 1fr}.variant-group{grid-template-columns:1fr}.variant-explanation{grid-column:1;max-width:none}.variant-list{grid-column:1;grid-row:auto;grid-template-columns:1fr;margin-top:6px}.product-modal-overlay{padding:0}.product-modal-panel{width:100%;height:100vh;border-radius:0;border:0}.product-modal-panel .detail-header{padding:12px 14px}.product-modal-panel .detail-header-row{display:grid;gap:10px}.product-modal-panel .detail-name{font-size:17px}.product-modal-panel .detail-metrics,.product-modal-panel .detail-tab-content{padding-inline:14px}.product-modal-panel .detail-dl{grid-template-columns:1fr;gap:4px}.product-modal-panel .detail-dd{padding-bottom:8px}.dimension-row{grid-template-columns:minmax(0,1fr) 66px auto}.dimension-input--name{grid-column:1 / -1}}.image-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-bottom:12px}.product-modal-panel .image-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.image-tile{border:1.5px solid var(--border);border-radius:6px;overflow:hidden;background:var(--bg-panel);display:grid;position:relative;min-width:0;transition:border-color .14s ease,box-shadow .14s ease,opacity .14s ease,transform .14s ease}.image-tile--main{border-color:var(--accent)}.image-tile[draggable=true]{cursor:grab}.image-tile--dragging{opacity:.48;transform:scale(.985)}.image-tile--drag-over{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb29}.image-tile--reordering{pointer-events:none}.image-preview-button{display:block;position:relative;width:100%;padding:0;border:0;background:var(--bg-hover);cursor:zoom-in;overflow:hidden}.image-thumb{width:100%;aspect-ratio:1;object-fit:cover;display:block;background:var(--bg-hover);transition:transform .16s ease}.image-tile:hover .image-thumb{transform:scale(1.035)}.image-drag-handle{position:absolute;top:6px;left:6px;width:24px;height:24px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:5px;background:#1118279e;color:#fff;opacity:0;transform:translateY(-3px);transition:opacity .14s ease,transform .14s ease,background .12s ease;pointer-events:none}.image-tile:hover .image-drag-handle,.image-tile:focus-within .image-drag-handle,.image-tile--dragging .image-drag-handle{opacity:1;transform:translateY(0)}.image-tile-badges{position:absolute;left:6px;bottom:31px;display:flex;align-items:center;gap:4px;pointer-events:none}.image-main-badge{font-size:10px;color:#fff;font-weight:600;padding:2px 6px;border-radius:999px;background:#166534e0;border:1px solid rgba(255,255,255,.18)}.image-schema-badge{font-size:10px;color:#fff;font-weight:600;padding:2px 6px;border-radius:999px;background:#1e40afdb;border:1px solid rgba(255,255,255,.18)}.image-tile-actions{position:absolute;top:6px;right:6px;display:flex;gap:4px;opacity:0;transform:translateY(-3px);transition:opacity .14s ease,transform .14s ease}.image-tile:hover .image-tile-actions,.image-tile:focus-within .image-tile-actions{opacity:1;transform:translateY(0)}.image-action-btn{width:24px;height:24px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:5px;background:#111827bd;color:#fff;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.image-action-btn:hover{background:#111827eb;border-color:#ffffff6b}.image-action-danger:hover{background:#991b1beb;border-color:#fecaca80}.schema-btn-active{color:#bfdbfe!important;border-color:#93c5fd9e!important}.image-tile-meta{min-width:0;padding:6px 7px;background:var(--bg-panel);border-top:1px solid var(--border-soft)}.image-tile-meta span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;color:var(--text-muted)}.image-uploader{margin-top:8px}.product-image-pond{margin:0;font-family:inherit}.product-image-pond.filepond--root,.product-image-pond .filepond--root{margin-bottom:0;font-family:inherit}.product-image-pond .filepond--panel-root{background:var(--bg-card);border:1.5px dashed var(--border);border-radius:7px}.product-image-pond .filepond--drop-label{min-height:96px;color:var(--text-muted);font-size:12px;cursor:pointer}.product-image-pond .filepond--label-action{color:var(--accent);font-weight:700;text-decoration:none;border-bottom:1px solid var(--accent-dim)}.product-image-pond .filepond--item-panel{background:var(--sidebar)}.product-image-pond .filepond--file-action-button{background:#ffffff29;cursor:pointer}.product-image-pond .filepond--file-status,.product-image-pond .filepond--file-info{font-size:11px}.product-image-pond .filepond--image-preview-wrapper{border-radius:5px}.image-modal-overlay{background:#080c14c7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.image-modal{width:min(1080px,94vw);max-height:92vh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#0f1720;box-shadow:0 24px 80px #0000006b}.image-modal-head,.image-modal-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;color:#e5edf5;background:#0f1720f5}.image-modal-head{border-bottom:1px solid rgba(255,255,255,.08)}.image-modal-head .icon-button{color:#e5edf5bd}.image-modal-head .icon-button:hover{color:#fff;background:#ffffff14}.image-modal-head h3{margin:0;max-width:72vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700}.image-modal-head span,.image-modal-foot{font-size:12px;color:#e5edf5ad}.image-modal-body{min-height:300px;position:relative;display:grid;place-items:center;padding:18px;background:linear-gradient(45deg,rgba(255,255,255,.035) 25%,transparent 25%),linear-gradient(-45deg,rgba(255,255,255,.035) 25%,transparent 25%),#111827;background-size:24px 24px}.image-modal-body img{max-width:100%;max-height:calc(92vh - 118px);object-fit:contain;border-radius:6px;box-shadow:0 12px 50px #00000059}.image-modal-nav{position:absolute;top:50%;z-index:2;width:42px;height:54px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#0f1720b3;color:#fff;cursor:pointer;transform:translateY(-50%);transition:background .12s ease,border-color .12s ease}.image-modal-nav:hover{background:#0f1720eb;border-color:#ffffff52}.image-modal-nav--prev{left:14px}.image-modal-nav--next{right:14px}.image-modal-foot{border-top:1px solid rgba(255,255,255,.08)}.image-modal-foot>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-modal-tags{display:flex;align-items:center;gap:5px;flex-shrink:0}@media(hover:none){.image-tile-actions{opacity:1;transform:none}}.cat-tree{padding:12px 16px;flex:1}.cat-merge-panel{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--bg-panel);flex-wrap:wrap}.cat-merge-label{font-size:12px;color:var(--text-muted);font-weight:500}.cat-select{font-size:12px;padding:4px 8px;border:1px solid var(--border);border-radius:5px;background:var(--bg);color:var(--text);max-width:200px}.cat-select--sm{max-width:160px}.cat-node{margin-bottom:2px}.cat-node--root>.cat-node-row{background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;padding:7px 10px;margin-bottom:2px}.cat-node-row{display:flex;align-items:center;gap:8px;min-height:30px}.cat-icon{color:var(--text-faint);flex-shrink:0}.cat-name{font-size:13px;font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-count{font-size:11px;color:var(--text-faint);flex-shrink:0}.cat-actions{display:flex;gap:3px;flex-shrink:0}.cat-children{margin-left:22px;border-left:2px solid var(--border);padding-left:10px;margin-top:2px;margin-bottom:2px}.cat-node--child>.cat-node-row,.cat-node--grand>.cat-node-row{padding:5px 8px}.cat-indent{color:var(--text-faint);font-size:11px;flex-shrink:0}.cat-indent--deep{margin-left:8px}.cat-edit-input{flex:1;min-width:0}.field-label{display:block;font-size:12px;font-weight:500;color:var(--text-muted);margin-bottom:4px}.cat-picker-trigger{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:13px;text-align:left;cursor:pointer;transition:border-color .15s}.cat-picker-trigger:hover{border-color:var(--accent)}.cat-picker-trigger.compact{width:auto;min-width:150px;flex-shrink:0;background:var(--bg-panel)}.cat-picker-trigger-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-picker-clear{flex-shrink:0;opacity:.5;cursor:pointer}.cat-picker-clear:hover{opacity:1;color:var(--danger)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box{background:var(--bg-panel);border-radius:10px;box-shadow:0 8px 40px #00000038;display:flex;flex-direction:column;overflow:hidden}.cat-modal{width:480px;max-width:94vw;max-height:70vh}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px;border-bottom:1px solid var(--border)}.modal-head h3{font-size:15px;font-weight:600}.icon-button{display:flex;align-items:center;justify-content:center;padding:4px;border:none;background:none;color:var(--text-muted);cursor:pointer;border-radius:4px}.icon-button:hover{background:var(--bg-hover);color:var(--text)}.modal-search-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border-soft);color:var(--text-muted)}.modal-search-bar input{flex:1;border:none;background:none;outline:none;font-size:13px;color:var(--text)}.modal-tree-list{overflow-y:auto;flex:1;padding:6px 0}.cat-pick-row{display:flex;align-items:center;gap:7px;width:100%;padding:7px 14px;border:none;background:none;color:var(--text);font-size:13px;text-align:left;cursor:pointer;transition:background .1s}.cat-pick-row:hover{background:var(--bg-hover)}.cat-pick-all{color:var(--text-muted);font-weight:500;border-bottom:1px solid var(--border-soft);margin-bottom:4px}.cat-pick-selected{background:var(--accent-soft);color:var(--accent-text);font-weight:500}.cat-pick-selected:hover{background:var(--accent-dim)}.cat-expand-btn{flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-faint);font-size:10px;cursor:pointer;border-radius:3px;padding:0}.cat-expand-btn:hover{background:var(--border);color:var(--text)}.cat-leaf-indent{flex-shrink:0;width:18px}.cat-pick-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-pick-count{flex-shrink:0;font-size:11px;color:var(--text-faint);background:var(--bg-card);padding:1px 6px;border-radius:10px}.cat-search-bar{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--border-soft);color:var(--text-muted)}.cat-search-bar input{flex:1;border:none;background:none;outline:none;font-size:13px;color:var(--text)}.cat-checkbox{flex-shrink:0;width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.cat-section{overflow:clip;display:flex;flex-direction:column}.cat-merge-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 20px;background:var(--sidebar);color:#fff;border-radius:10px;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 24px #00000059;z-index:200;white-space:nowrap}.cat-merge-bar-label{flex:1;font-size:13px;display:flex;align-items:center;gap:6px}.cat-merge-bar-hint{font-size:11px;opacity:.6}.merge-bar-enter-active,.merge-bar-leave-active{transition:transform .2s ease,opacity .2s ease}.merge-bar-enter-from,.merge-bar-leave-to{transform:translateY(100%);opacity:0}.access-layout{display:grid;grid-template-columns:minmax(540px,1.15fr) minmax(360px,.85fr);gap:10px;align-items:start}.access-panel{overflow:hidden}.access-body{display:grid;gap:12px;padding:14px}.access-create{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--bg-card)}.access-create .full{grid-column:1 / -1}.permission-picks{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.permission-picks button{min-height:28px;padding:5px 9px;border:1px solid var(--border);border-radius:5px;background:var(--bg-panel);color:var(--text-muted);font-size:11px;font-weight:600;cursor:pointer;transition:all .1s}.permission-picks button:hover{color:var(--text);border-color:var(--border-strong)}.permission-picks button.active{color:var(--accent);border-color:var(--accent-dim);background:var(--accent-soft)}.permission-picks button.inherited{color:var(--code);border-color:#1565a82e;background:var(--code-soft)}.full-access-pill{min-height:28px;display:inline-flex;align-items:center;padding:5px 9px;border:1px solid var(--ok-border);border-radius:5px;background:var(--ok-soft);color:var(--ok);font-size:11px;font-weight:700}.access-note{padding:8px 10px;border-radius:6px;font-size:12px;border:1px solid var(--border)}.ok-note{color:var(--ok);background:var(--ok-soft);border-color:var(--ok-border)}.danger-note{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-border)}.user-access-list{display:grid;gap:8px}.user-access-row{display:grid;grid-template-columns:minmax(190px,1fr) 150px 100px;gap:8px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:7px;background:var(--bg-panel)}.user-access-main{display:flex;align-items:center;gap:9px;min-width:0}.user-access-main strong,.user-access-main span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-access-main strong{font-size:13px;color:var(--text)}.user-access-main span{font-size:12px;color:var(--text-muted)}.user-access-row select{min-width:0;height:34px;border:1px solid var(--border);border-radius:6px;background:var(--bg-card);color:var(--text);padding:0 8px;font-size:12px}.active-switch{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted)}.active-switch input{accent-color:var(--accent)}.user-permissions{grid-column:1 / -1}.role-grid{display:grid;gap:10px;padding:14px}.role-card{display:grid;gap:9px;padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--bg-panel)}.role-card-head{display:flex;align-items:center;gap:8px;color:var(--accent)}.role-card-head strong{display:block;font-size:13px;color:var(--text)}.role-card-head span{display:block;font-family:JetBrains Mono,monospace;font-size:10px;color:var(--code)}.role-card p{margin:0;font-size:12px;color:var(--text-muted)}
