.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid black;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor-mark{background-color:#14ff1480;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}.cm-animate-fat-cursor{width:auto;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite;background-color:#7e7}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3,.cm-s-default .cm-type{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-s-default .cm-error,.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:#ff96004d}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;outline:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-scroll,.CodeMirror-sizer,.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}div.CodeMirror-dragcursors,.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:#ff06}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:none}.cm-s-hopscotch.CodeMirror{background:#322931;color:#d5d3d5}.cm-s-hopscotch div.CodeMirror-selected{background:#433b42!important}.cm-s-hopscotch .CodeMirror-gutters{background:#322931;border-right:0px}.cm-s-hopscotch .CodeMirror-linenumber{color:#797379}.cm-s-hopscotch .CodeMirror-cursor{border-left:1px solid #989498!important}.cm-s-hopscotch span.cm-comment{color:#b33508}.cm-s-hopscotch span.cm-atom,.cm-s-hopscotch span.cm-number{color:#c85e7c}.cm-s-hopscotch span.cm-property,.cm-s-hopscotch span.cm-attribute{color:#8fc13e}.cm-s-hopscotch span.cm-keyword{color:#dd464c}.cm-s-hopscotch span.cm-string{color:#fdcc59}.cm-s-hopscotch span.cm-variable{color:#8fc13e}.cm-s-hopscotch span.cm-variable-2{color:#1290bf}.cm-s-hopscotch span.cm-def{color:#fd8b19}.cm-s-hopscotch span.cm-error{background:#dd464c;color:#989498}.cm-s-hopscotch span.cm-bracket{color:#d5d3d5}.cm-s-hopscotch span.cm-tag{color:#dd464c}.cm-s-hopscotch span.cm-link{color:#c85e7c}.cm-s-hopscotch .CodeMirror-matchingbracket{text-decoration:underline;color:#fff!important}.cm-s-hopscotch .CodeMirror-activeline-background{background:#302020}.gjs-is__grab,.gjs-is__grab *{cursor:grab!important}.gjs-is__grabbing,.gjs-is__grabbing *{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;cursor:grabbing!important}:root{--gjs-main-color: #444;--gjs-primary-color: #444;--gjs-secondary-color: #ddd;--gjs-tertiary-color: #804f7b;--gjs-quaternary-color: #d278c9;--gjs-font-color: #ddd;--gjs-font-color-active: #f8f8f8;--gjs-main-dark-color: rgba(0, 0, 0, .2);--gjs-secondary-dark-color: rgba(0, 0, 0, .1);--gjs-main-light-color: rgba(255, 255, 255, .1);--gjs-secondary-light-color: rgba(255, 255, 255, .7);--gjs-soft-light-color: rgba(255, 255, 255, .015);--gjs-color-blue: #3b97e3;--gjs-color-red: #dd3636;--gjs-color-yellow: #ffca6f;--gjs-color-green: #62c462;--gjs-left-width: 15%;--gjs-color-highlight: #71b7f1;--gjs-color-warn: #ffca6f;--gjs-handle-margin: -5px;--gjs-light-border: rgba(255, 255, 255, .05);--gjs-arrow-color: rgba(255, 255, 255, .7);--gjs-dark-text-shadow: rgba(0, 0, 0, .2);--gjs-color-input-padding: 22px;--gjs-input-padding: 5px;--gjs-padding-elem-classmanager: 5px 6px;--gjs-upload-padding: 150px 10px;--gjs-animation-duration: .2s;--gjs-main-font: Helvetica, sans-serif;--gjs-font-size: .75rem;--gjs-placeholder-background-color: var(--gjs-color-green);--gjs-canvas-top: 40px;--gjs-flex-item-gap: 5px}.gjs-bg-main,.gjs-off-prv,.gjs-sm-colorp-c{background-color:var(--gjs-main-color)}.gjs-color-main,.gjs-off-prv,.gjs-sm-stack #gjs-sm-add{color:var(--gjs-font-color);fill:var(--gjs-font-color)}.gjs-color-active{color:var(--gjs-font-color-active);fill:var(--gjs-font-color-active)}.gjs-color-warn{color:var(--gjs-color-warn);fill:var(--gjs-color-warn)}.gjs-color-hl{color:var(--gjs-color-highlight);fill:var(--gjs-color-highlight)}.gjs-invis-invis,.gjs-clm-tags #gjs-clm-new,.gjs-no-app{background-color:#0000;border:none;color:inherit}.gjs-no-app{height:10px}.opac50{opacity:.5;filter:alpha(opacity=50)}.gjs-checker-bg,.gjs-field-colorp-c,.checker-bg,.gjs-sm-layer-preview{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.gjs-no-user-select,.gjs-grabbing,.gjs-grabbing *,.gjs-rte-toolbar,.gjs-layer-name{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.gjs-no-pointer-events,.gjs-resizer-c,.gjs-margin-v-el,.gjs-padding-v-el,.gjs-fixedmargin-v-el,.gjs-fixedpadding-v-el{pointer-events:none}.no-select,.gjs-clm-tags #gjs-clm-close,.gjs-com-no-select,.gjs-com-no-select img,.gjs-category-title,.gjs-layer-title,.gjs-block-category .gjs-title,.gjs-sm-sector-title,.gjs-trait-category .gjs-title{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.clear{clear:both}.gjs-category-open,.gjs-block-category.gjs-open,.gjs-sm-sector.gjs-sm-open,.gjs-trait-category.gjs-open{border-bottom:1px solid rgba(0,0,0,.25)}.gjs-category-title,.gjs-layer-title,.gjs-block-category .gjs-title,.gjs-sm-sector-title,.gjs-trait-category .gjs-title{font-weight:lighter;background-color:var(--gjs-secondary-dark-color);letter-spacing:1px;padding:9px 10px 9px 20px;border-bottom:1px solid rgba(0,0,0,.25);text-align:left;position:relative;cursor:pointer}.btn-cl,.gjs-am-close,.gjs-mdl-btn-close{opacity:.3;filter:alpha(opacity=30);font-size:25px;cursor:pointer}.btn-cl:hover,.gjs-am-close:hover,.gjs-mdl-btn-close:hover{opacity:.7;filter:alpha(opacity=70)}.gjs-traits-label{border-bottom:1px solid var(--gjs-main-dark-color);font-weight:lighter;margin-bottom:5px;padding:10px;text-align:left}.gjs-label-wrp{width:30%;min-width:30%}.gjs-field-wrp{flex-grow:1}.gjs-traits-c,.gjs-traits-cs,.gjs-trait-categories{display:flex;flex-direction:column}.gjs-trait-category{width:100%}.gjs-trait-category .gjs-caret-icon{margin-right:5px}.gjs-trt-header{font-weight:lighter;padding:10px}.gjs-trt-trait{display:flex;justify-content:flex-start;padding:5px 10px;font-weight:lighter;align-items:center;text-align:left;gap:5px}.gjs-trt-traits{font-size:var(--gjs-font-size)}.gjs-trt-trait .gjs-label{text-align:left;text-overflow:ellipsis;overflow:hidden}.gjs-guide-info{position:absolute}.gjs-guide-info__content{position:absolute;height:100%;display:flex;width:100%;padding:5px}.gjs-guide-info__line{position:relative;margin:auto}.gjs-guide-info__line:before,.gjs-guide-info__line:after{content:"";display:block;position:absolute;background-color:inherit}.gjs-guide-info__y{padding:0 5px}.gjs-guide-info__y .gjs-guide-info__content{justify-content:center}.gjs-guide-info__y .gjs-guide-info__line{width:100%;height:1px}.gjs-guide-info__y .gjs-guide-info__line:before,.gjs-guide-info__y .gjs-guide-info__line:after{width:1px;height:10px;top:0;bottom:0;left:0;margin:auto}.gjs-guide-info__y .gjs-guide-info__line:after{left:auto;right:0}.gjs-guide-info__x{padding:5px 0}.gjs-guide-info__x .gjs-guide-info__content{align-items:center}.gjs-guide-info__x .gjs-guide-info__line{height:100%;width:1px}.gjs-guide-info__x .gjs-guide-info__line:before,.gjs-guide-info__x .gjs-guide-info__line:after{width:10px;height:1px;left:0;right:0;top:0;margin:auto;transform:translate(-50%)}.gjs-guide-info__x .gjs-guide-info__line:after{top:auto;bottom:0}.gjs-badge{white-space:nowrap}.gjs-badge__icon{vertical-align:middle;display:inline-block;width:15px;height:15px}.gjs-badge__icon svg{fill:currentColor}.gjs-badge__name{display:inline-block;vertical-align:middle}.gjs-frame-wrapper{position:absolute;width:100%;height:100%;left:0;right:0;margin:auto}.gjs-frame-wrapper--anim{transition:width .35s ease,height .35s ease}.gjs-frame-wrapper__top{transform:translateY(-100%) translate(-50%);display:flex;padding:5px 0;position:absolute;width:100%;left:50%;top:0}.gjs-frame-wrapper__top-r{margin-left:auto}.gjs-frame-wrapper__left{position:absolute;left:0;transform:translate(-100%) translateY(-50%);height:100%;top:50%}.gjs-frame-wrapper__bottom{position:absolute;bottom:0;transform:translateY(100%) translate(-50%);width:100%;left:50%}.gjs-frame-wrapper__right{position:absolute;right:0;transform:translate(100%) translateY(-50%);height:100%;top:50%}.gjs-frame-wrapper__icon{width:24px;cursor:pointer}.gjs-frame-wrapper__icon>svg{fill:currentColor}.gjs-padding-v-top,.gjs-fixedpadding-v-top{width:100%;top:0;left:0}.gjs-padding-v-right,.gjs-fixedpadding-v-right{right:0}.gjs-padding-v-bottom,.gjs-fixedpadding-v-bottom{width:100%;left:0;bottom:0}.gjs-padding-v-left,.gjs-fixedpadding-v-left{left:0}.gjs-cv-canvas{box-sizing:border-box;width:calc(100% - var(--gjs-left-width));height:calc(100% - var(--gjs-canvas-top));bottom:0;overflow:hidden;z-index:1;position:absolute;left:0;top:var(--gjs-canvas-top)}.gjs-cv-canvas-bg{background-color:#00000026}.gjs-cv-canvas.gjs-cui{width:100%;height:100%;top:0}.gjs-cv-canvas.gjs-is__grab .gjs-cv-canvas__frames,.gjs-cv-canvas.gjs-is__grabbing .gjs-cv-canvas__frames{pointer-events:none}.gjs-cv-canvas__frames{position:absolute;top:0;left:0;width:100%;height:100%}.gjs-cv-canvas__spots{position:absolute;pointer-events:none;z-index:1}.gjs-cv-canvas .gjs-ghost{display:none;pointer-events:none;background-color:#5b5b5b;border:2px dashed #ccc;position:absolute;z-index:10;opacity:.55;filter:alpha(opacity=55)}.gjs-cv-canvas .gjs-highlighter,.gjs-cv-canvas .gjs-highlighter-sel{position:absolute;outline:1px solid var(--gjs-color-blue);outline-offset:-1px;pointer-events:none;width:100%;height:100%}.gjs-cv-canvas .gjs-highlighter-warning{outline:3px solid var(--gjs-color-yellow)}.gjs-cv-canvas .gjs-highlighter-sel{outline:2px solid var(--gjs-color-blue);outline-offset:-2px}.gjs-cv-canvas #gjs-tools,.gjs-cv-canvas .gjs-tools{width:100%;height:100%;position:absolute;top:0;left:0;outline:none;z-index:1}.gjs-cv-canvas #gjs-tools{z-index:2}.gjs-cv-canvas *{box-sizing:border-box}.gjs-frame{outline:medium none;height:100%;width:100%;border:none;margin:auto;display:block;transition:width .35s ease,height .35s ease;position:absolute;top:0;bottom:0;left:0;right:0}.gjs-toolbar{position:absolute;background-color:var(--gjs-color-blue);white-space:nowrap;color:#fff;z-index:10;top:0;left:0}.gjs-toolbar-item{width:26px;padding:5px;cursor:pointer;display:inline-block}.gjs-toolbar-item svg{fill:currentColor;vertical-align:middle}.gjs-resizer-c{position:absolute;left:0;top:0;width:100%;height:100%;z-index:9}.gjs-margin-v-el,.gjs-padding-v-el,.gjs-fixedmargin-v-el,.gjs-fixedpadding-v-el{opacity:.1;filter:alpha(opacity=10);position:absolute;background-color:#ff0}.gjs-fixedmargin-v-el,.gjs-fixedpadding-v-el{opacity:.2;filter:alpha(opacity=20)}.gjs-padding-v-el,.gjs-fixedpadding-v-el{background-color:navy}.gjs-resizer-h{pointer-events:all;position:absolute;border:3px solid var(--gjs-color-blue);width:10px;height:10px;background-color:#fff;margin:var(--gjs-handle-margin)}.gjs-resizer-h-tl{top:0;left:0;cursor:nwse-resize}.gjs-resizer-h-tr{top:0;right:0;cursor:nesw-resize}.gjs-resizer-h-tc{top:0;margin:var(--gjs-handle-margin) auto;left:0;right:0;cursor:ns-resize}.gjs-resizer-h-cl{left:0;margin:auto var(--gjs-handle-margin);top:0;bottom:0;cursor:ew-resize}.gjs-resizer-h-cr{margin:auto var(--gjs-handle-margin);top:0;bottom:0;right:0;cursor:ew-resize}.gjs-resizer-h-bl{bottom:0;left:0;cursor:nesw-resize}.gjs-resizer-h-bc{bottom:0;margin:var(--gjs-handle-margin) auto;left:0;right:0;cursor:ns-resize}.gjs-resizer-h-br{bottom:0;right:0;cursor:nwse-resize}.gjs-pn-panel .gjs-resizer-h{background-color:#0003;border:none;opacity:0;transition:opacity .25s}.gjs-pn-panel .gjs-resizer-h:hover{opacity:1}.gjs-pn-panel .gjs-resizer-h-tc,.gjs-pn-panel .gjs-resizer-h-bc{margin:0 auto;width:100%}.gjs-pn-panel .gjs-resizer-h-cr,.gjs-pn-panel .gjs-resizer-h-cl{margin:auto 0;height:100%}.gjs-resizing .gjs-highlighter,.gjs-resizing .gjs-badge{display:none!important}.gjs-resizing-tl *{cursor:nwse-resize!important}.gjs-resizing-tr *{cursor:nesw-resize!important}.gjs-resizing-tc *{cursor:ns-resize!important}.gjs-resizing-cl *,.gjs-resizing-cr *{cursor:ew-resize!important}.gjs-resizing-bl *{cursor:nesw-resize!important}.gjs-resizing-bc *{cursor:ns-resize!important}.gjs-resizing-br *{cursor:nwse-resize!important}.no-dots,.ui-resizable-handle{border:none!important;margin:0!important;outline:none!important}.gjs-com-dashed *{outline:1px dashed #888;outline-offset:-2px;box-sizing:border-box}.gjs-com-badge,.gjs-badge{pointer-events:none;background-color:var(--gjs-color-blue);color:#fff;padding:2px 5px;position:absolute;z-index:1;font-size:12px;outline:none;display:none}.gjs-badge-warning{background-color:var(--gjs-color-yellow)}.gjs-placeholder,.gjs-com-placeholder{position:absolute;z-index:10;pointer-events:none;display:none}.gjs-placeholder{border-style:solid!important;outline:none;box-sizing:border-box;transition:top var(--gjs-animation-duration),left var(--gjs-animation-duration),width var(--gjs-animation-duration),height var(--gjs-animation-duration)}.gjs-placeholder.horizontal,.gjs-com-placeholder.horizontal{border-color:rgba(0,0,0,0) var(--gjs-placeholder-background-color);border-width:3px 5px;margin:-3px 0 0}.gjs-placeholder.vertical,.gjs-com-placeholder.vertical{border-color:var(--gjs-placeholder-background-color) rgba(0,0,0,0);border-width:5px 3px;margin:0 0 0 -3px}.gjs-placeholder-int,.gjs-com-placeholder-int{background-color:var(--gjs-placeholder-background-color);box-shadow:0 0 3px #0003;height:100%;width:100%;pointer-events:none;padding:1.5px;outline:none}.gjs-pn-panel{display:inline-block;position:absolute;box-sizing:border-box;text-align:center;padding:5px;z-index:3}.gjs-pn-panel .icon-undo,.gjs-pn-panel .icon-redo{font-size:20px;height:30px;width:25px}.gjs-pn-commands{width:calc(100% - var(--gjs-left-width));left:0;top:0;box-shadow:0 0 5px var(--gjs-main-dark-color)}.gjs-pn-options{right:var(--gjs-left-width);top:0}.gjs-pn-views{border-bottom:2px solid var(--gjs-main-dark-color);right:0;width:var(--gjs-left-width);z-index:4}.gjs-pn-views-container{height:100%;padding:42px 0 0;right:0;width:var(--gjs-left-width);overflow:auto;box-shadow:0 0 5px var(--gjs-main-dark-color)}.gjs-pn-buttons{align-items:center;display:flex;justify-content:space-between}.gjs-pn-btn{box-sizing:border-box;min-height:30px;min-width:30px;line-height:21px;background-color:#0000;border:none;font-size:18px;margin-right:5px;border-radius:2px;padding:4px;position:relative;cursor:pointer}.gjs-pn-btn.gjs-pn-active{background-color:#00000026;box-shadow:0 0 3px #00000040 inset}.gjs-pn-btn svg{fill:currentColor}.gjs-label{line-height:18px}.gjs-fields{display:flex}.gjs-select{padding:0;width:100%}.gjs-select select{padding-right:10px}.gjs-select:-moz-focusring,.gjs-select select:-moz-focusring{color:#0000;text-shadow:0 0 0 var(--gjs-secondary-light-color)}.gjs-input:focus,.gjs-button:focus,.gjs-btn-prim:focus,.gjs-select:focus,.gjs-select select:focus{outline:none}.gjs-field input,.gjs-field select,.gjs-field textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;border:none;background-color:#0000;box-sizing:border-box;width:100%;position:relative;padding:var(--gjs-input-padding);z-index:1}.gjs-field input:focus,.gjs-field select:focus,.gjs-field textarea:focus{outline:none}.gjs-field input[type=number]{-moz-appearance:textfield}.gjs-field input[type=number]::-webkit-outer-spin-button,.gjs-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.gjs-field-range{flex:9 1 auto}.gjs-field-integer input{padding-right:30px}.gjs-select option,.gjs-field-select option,.gjs-clm-select option,.gjs-sm-select option,.gjs-fields option,.gjs-sm-unit option{background-color:var(--gjs-main-color);color:var(--gjs-font-color)}.gjs-field{background-color:var(--gjs-main-dark-color);border:none;box-shadow:none;border-radius:2px;box-sizing:border-box;padding:0;position:relative}.gjs-field textarea{resize:vertical}.gjs-field .gjs-sel-arrow{height:100%;width:9px;position:absolute;right:0;top:0;z-index:0}.gjs-field .gjs-d-s-arrow{bottom:0;top:0;margin:auto;right:var(--gjs-input-padding);border-top:4px solid var(--gjs-arrow-color);position:absolute;height:0;width:0;border-left:3px solid rgba(0,0,0,0);border-right:4px solid rgba(0,0,0,0);cursor:pointer}.gjs-field-arrows{position:absolute;cursor:ns-resize;margin:auto;height:20px;width:9px;z-index:10;bottom:0;right:calc(var(--gjs-input-padding) - 2px);top:0}.gjs-field-color,.gjs-field-radio{width:100%}.gjs-field-color input{padding-right:var(--gjs-color-input-padding);box-sizing:border-box}.gjs-field-colorp{border-left:1px solid var(--gjs-main-dark-color);box-sizing:border-box;height:100%;padding:2px;position:absolute;right:0;top:0;width:var(--gjs-color-input-padding);z-index:10}.gjs-field-colorp .gjs-checker-bg,.gjs-field-colorp .gjs-field-colorp-c{height:100%;width:100%;border-radius:1px}.gjs-field-colorp-c{height:100%;position:relative;width:100%}.gjs-field-color-picker{background-color:var(--gjs-font-color);cursor:pointer;height:100%;width:100%;box-shadow:0 0 1px var(--gjs-main-dark-color);border-radius:1px;position:absolute;top:0}.gjs-field-checkbox{padding:0;width:17px;height:17px;display:block;cursor:pointer}.gjs-field-checkbox input{display:none}.gjs-field-checkbox input:checked+.gjs-chk-icon{border-color:#ffffff80;border-width:0 2px 2px 0;border-style:solid}.gjs-radio-item{flex:1 1 auto;text-align:center;border-left:1px solid var(--gjs-dark-text-shadow)}.gjs-radio-item:first-child{border:none}.gjs-radio-item:hover{background:var(--gjs-main-dark-color)}.gjs-radio-item input{display:none}.gjs-radio-item input:checked+.gjs-radio-item-label{background-color:#fff3}.gjs-radio-items{display:flex}.gjs-radio-item-label{cursor:pointer;display:block;padding:var(--gjs-input-padding)}.gjs-field-units{position:absolute;margin:auto;right:10px;bottom:0;top:0}.gjs-field-unit{position:absolute;right:10px;top:3px;font-size:10px;color:var(--gjs-arrow-color);cursor:pointer}.gjs-input-unit{text-align:center}.gjs-field-arrow-u,.gjs-field-arrow-d{position:absolute;height:0;width:0;border-left:3px solid rgba(0,0,0,0);border-right:4px solid rgba(0,0,0,0);border-top:4px solid var(--gjs-arrow-color);bottom:4px;cursor:pointer}.gjs-field-arrow-u{border-bottom:4px solid var(--gjs-arrow-color);border-top:none;top:4px}.gjs-field-select{padding:0}.gjs-field-range{background-color:#0000;border:none;box-shadow:none;padding:0}.gjs-field-range input{margin:0;height:100%}.gjs-field-range input:focus{outline:none}.gjs-field-range input::-webkit-slider-thumb{-webkit-appearance:none;margin-top:-4px;height:10px;width:10px;border:1px solid var(--gjs-main-dark-color);border-radius:100%;background-color:var(--gjs-font-color);cursor:pointer}.gjs-field-range input::-moz-range-thumb{height:10px;width:10px;border:1px solid var(--gjs-main-dark-color);border-radius:100%;background-color:var(--gjs-font-color);cursor:pointer}.gjs-field-range input::-ms-thumb{height:10px;width:10px;border:1px solid var(--gjs-main-dark-color);border-radius:100%;background-color:var(--gjs-font-color);cursor:pointer}.gjs-field-range input::-moz-range-track{background-color:var(--gjs-main-dark-color);border-radius:1px;margin-top:3px;height:3px}.gjs-field-range input::-webkit-slider-runnable-track{background-color:var(--gjs-main-dark-color);border-radius:1px;margin-top:3px;height:3px}.gjs-field-range input::-ms-track{background-color:var(--gjs-main-dark-color);border-radius:1px;margin-top:3px;height:3px}.gjs-btn-prim{color:inherit;background-color:var(--gjs-main-light-color);border-radius:2px;padding:3px 6px;padding:var(--gjs-input-padding);cursor:pointer;border:none}.gjs-btn-prim:active{background-color:var(--gjs-main-light-color)}.gjs-btn--full{width:100%}.gjs-chk-icon{-ms-transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);transform:rotate(45deg);box-sizing:border-box;display:block;height:14px;margin:0 5px;width:6px}.gjs-add-trasp{background:none;border:none;color:var(--gjs-font-color);cursor:pointer;font-size:1em;border-radius:2px;opacity:.75;filter:alpha(opacity=75)}.gjs-add-trasp:hover{opacity:1;filter:alpha(opacity=100)}.gjs-add-trasp:active{background-color:#0003}.gjs-devices-c{display:flex;align-items:center;padding:2px 3px 3px}.gjs-devices-c .gjs-device-label{flex-grow:2;text-align:left;margin-right:10px}.gjs-devices-c .gjs-select{flex-grow:20}.gjs-devices-c .gjs-add-trasp{flex-grow:1;margin-left:5px}.gjs-sm-clear{cursor:pointer;width:14px;min-width:14px;height:14px;margin-left:3px}.gjs-sm-header{font-weight:lighter;padding:10px}.gjs-sm-sector{clear:both;font-weight:lighter;text-align:left}.gjs-sm-sector-title{display:flex;align-items:center}.gjs-sm-sector-caret{width:17px;height:17px;min-width:17px;transform:rotate(-90deg)}.gjs-sm-sector-label{margin-left:5px}.gjs-sm-sector.gjs-sm-open .gjs-sm-sector-caret{transform:none}.gjs-sm-properties{font-size:var(--gjs-font-size);padding:10px 5px;display:flex;flex-wrap:wrap;align-items:flex-end;box-sizing:border-box;width:100%}.gjs-sm-label{margin:5px 5px 3px 0;display:flex;align-items:center}.gjs-sm-close-btn,.gjs-sm-preview-file-close{display:block;font-size:23px;position:absolute;cursor:pointer;right:5px;top:0;opacity:.7;filter:alpha(opacity=70)}.gjs-sm-close-btn:hover,.gjs-sm-preview-file-close:hover{opacity:.9;filter:alpha(opacity=90)}.gjs-sm-field,.gjs-clm-field,.gjs-clm-select{width:100%;position:relative}.gjs-sm-field input,.gjs-clm-field input,.gjs-clm-select input,.gjs-sm-field select,.gjs-clm-field select,.gjs-clm-select select{background-color:#0000;color:#ffffffb3;border:none;width:100%}.gjs-sm-field input,.gjs-clm-field input,.gjs-clm-select input{box-sizing:border-box}.gjs-sm-field select,.gjs-clm-field select,.gjs-clm-select select{position:relative;z-index:1;-webkit-appearance:none;-moz-appearance:none;appearance:none}.gjs-sm-field select::-ms-expand,.gjs-clm-field select::-ms-expand,.gjs-clm-select select::-ms-expand{display:none}.gjs-sm-field select:-moz-focusring,.gjs-clm-field select:-moz-focusring,.gjs-clm-select select:-moz-focusring{color:#0000;text-shadow:0 0 0 var(--gjs-secondary-light-color)}.gjs-sm-field input:focus,.gjs-clm-field input:focus,.gjs-clm-select input:focus,.gjs-sm-field select:focus,.gjs-clm-field select:focus,.gjs-clm-select select:focus{outline:none}.gjs-sm-field .gjs-sm-unit,.gjs-clm-field .gjs-sm-unit,.gjs-clm-select .gjs-sm-unit{position:absolute;right:10px;top:3px;font-size:10px;color:var(--gjs-secondary-light-color);cursor:pointer}.gjs-sm-field .gjs-clm-sel-arrow,.gjs-clm-field .gjs-clm-sel-arrow,.gjs-clm-select .gjs-clm-sel-arrow,.gjs-sm-field .gjs-sm-int-arrows,.gjs-clm-field .gjs-sm-int-arrows,.gjs-clm-select .gjs-sm-int-arrows,.gjs-sm-field .gjs-sm-sel-arrow,.gjs-clm-field .gjs-sm-sel-arrow,.gjs-clm-select .gjs-sm-sel-arrow{height:100%;width:9px;position:absolute;right:0;top:0;cursor:ns-resize}.gjs-sm-field .gjs-sm-sel-arrow,.gjs-clm-field .gjs-sm-sel-arrow,.gjs-clm-select .gjs-sm-sel-arrow{cursor:pointer}.gjs-sm-field .gjs-clm-d-s-arrow,.gjs-clm-field .gjs-clm-d-s-arrow,.gjs-clm-select .gjs-clm-d-s-arrow,.gjs-sm-field .gjs-sm-d-arrow,.gjs-clm-field .gjs-sm-d-arrow,.gjs-clm-select .gjs-sm-d-arrow,.gjs-sm-field .gjs-sm-d-s-arrow,.gjs-clm-field .gjs-sm-d-s-arrow,.gjs-clm-select .gjs-sm-d-s-arrow,.gjs-sm-field .gjs-sm-u-arrow,.gjs-clm-field .gjs-sm-u-arrow,.gjs-clm-select .gjs-sm-u-arrow{position:absolute;height:0;width:0;border-left:3px solid rgba(0,0,0,0);border-right:4px solid rgba(0,0,0,0);cursor:pointer}.gjs-sm-field .gjs-sm-u-arrow,.gjs-clm-field .gjs-sm-u-arrow,.gjs-clm-select .gjs-sm-u-arrow{border-bottom:4px solid var(--gjs-secondary-light-color);top:4px}.gjs-sm-field .gjs-clm-d-s-arrow,.gjs-clm-field .gjs-clm-d-s-arrow,.gjs-clm-select .gjs-clm-d-s-arrow,.gjs-sm-field .gjs-sm-d-arrow,.gjs-clm-field .gjs-sm-d-arrow,.gjs-clm-select .gjs-sm-d-arrow,.gjs-sm-field .gjs-sm-d-s-arrow,.gjs-clm-field .gjs-sm-d-s-arrow,.gjs-clm-select .gjs-sm-d-s-arrow{border-top:4px solid var(--gjs-secondary-light-color);bottom:4px}.gjs-sm-field .gjs-clm-d-s-arrow,.gjs-clm-field .gjs-clm-d-s-arrow,.gjs-clm-select .gjs-clm-d-s-arrow,.gjs-sm-field .gjs-sm-d-s-arrow,.gjs-clm-field .gjs-sm-d-s-arrow,.gjs-clm-select .gjs-sm-d-s-arrow{bottom:7px}.gjs-sm-field.gjs-sm-color,.gjs-sm-color.gjs-clm-field,.gjs-sm-field.gjs-sm-input,.gjs-sm-input.gjs-clm-field,.gjs-sm-field.gjs-sm-integer,.gjs-sm-integer.gjs-clm-field,.gjs-sm-field.gjs-sm-list,.gjs-sm-list.gjs-clm-field,.gjs-sm-field.gjs-sm-select,.gjs-sm-select.gjs-clm-field,.gjs-clm-select{background-color:var(--gjs-main-dark-color);border:1px solid rgba(0,0,0,.1);box-shadow:1px 1px 0 var(--gjs-main-light-color);color:var(--gjs-secondary-light-color);border-radius:2px;box-sizing:border-box;padding:0 5px}.gjs-sm-field.gjs-sm-composite,.gjs-sm-composite.gjs-clm-field,.gjs-sm-composite.gjs-clm-select{border-radius:2px}.gjs-sm-field.gjs-sm-select,.gjs-sm-select.gjs-clm-field,.gjs-clm-select{padding:0}.gjs-sm-field.gjs-sm-select select,.gjs-sm-select.gjs-clm-field select,.gjs-clm-select select{height:20px}.gjs-sm-field.gjs-sm-select option,.gjs-sm-select.gjs-clm-field option,.gjs-clm-select option{padding:3px 0}.gjs-sm-field.gjs-sm-composite,.gjs-sm-composite.gjs-clm-field,.gjs-sm-composite.gjs-clm-select{background-color:var(--gjs-secondary-dark-color);border:1px solid rgba(0,0,0,.25)}.gjs-sm-field.gjs-sm-list,.gjs-sm-list.gjs-clm-field,.gjs-sm-list.gjs-clm-select{width:auto;padding:0;overflow:hidden;float:left}.gjs-sm-field.gjs-sm-list input,.gjs-sm-list.gjs-clm-field input,.gjs-sm-list.gjs-clm-select input{display:none}.gjs-sm-field.gjs-sm-list label,.gjs-sm-list.gjs-clm-field label,.gjs-sm-list.gjs-clm-select label{cursor:pointer;padding:5px;display:block}.gjs-sm-field.gjs-sm-list .gjs-sm-radio:checked+label,.gjs-sm-list.gjs-clm-field .gjs-sm-radio:checked+label,.gjs-sm-list.gjs-clm-select .gjs-sm-radio:checked+label{background-color:#fff3}.gjs-sm-field.gjs-sm-list .gjs-sm-icon,.gjs-sm-list.gjs-clm-field .gjs-sm-icon,.gjs-sm-list.gjs-clm-select .gjs-sm-icon{background-repeat:no-repeat;background-position:center;text-shadow:none;line-height:normal}.gjs-sm-field.gjs-sm-integer select,.gjs-sm-integer.gjs-clm-field select,.gjs-sm-integer.gjs-clm-select select{width:auto;padding:0}.gjs-sm-list .gjs-sm-el{float:left;border-left:1px solid var(--gjs-main-dark-color)}.gjs-sm-list .gjs-sm-el:first-child{border:none}.gjs-sm-list .gjs-sm-el:hover{background:var(--gjs-main-dark-color)}.gjs-sm-slider .gjs-field-integer{flex:1 1 65px}.gjs-sm-property{box-sizing:border-box;float:left;width:50%;margin-bottom:5px;padding:0 5px}.gjs-sm-property--full,.gjs-sm-property.gjs-sm-composite,.gjs-sm-property.gjs-sm-file,.gjs-sm-property.gjs-sm-list,.gjs-sm-property.gjs-sm-stack,.gjs-sm-property.gjs-sm-slider,.gjs-sm-property.gjs-sm-color{width:100%}.gjs-sm-property .gjs-sm-btn{background-color:color-mix(in srgb,var(--gjs-main-dark-color),white 13%);border-radius:2px;box-shadow:1px 1px color-mix(in srgb,var(--gjs-main-dark-color),white 2%),1px 1px color-mix(in srgb,var(--gjs-main-dark-color),white 17%) inset;padding:5px;position:relative;text-align:center;height:auto;width:100%;cursor:pointer;color:var(--gjs-font-color);box-sizing:border-box;text-shadow:-1px -1px 0 var(--gjs-main-dark-color);border:none;opacity:.85;filter:alpha(opacity=85)}.gjs-sm-property .gjs-sm-btn-c{box-sizing:border-box;float:left;width:100%}.gjs-sm-property__text-shadow .gjs-sm-layer-preview-cnt:after{color:#000;content:"T";font-weight:900;line-height:17px;padding:0 4px}.gjs-sm-preview-file{background-color:var(--gjs-light-border);border-radius:2px;margin-top:5px;position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--gjs-light-border),black 1%);padding:3px 20px}.gjs-sm-preview-file-cnt{background-size:auto 100%;background-repeat:no-repeat;background-position:center center;height:50px}.gjs-sm-preview-file-close{top:-5px;width:14px;height:14px}.gjs-sm-layers{margin-top:5px;padding:1px 3px;min-height:30px}.gjs-sm-layer{background-color:#ffffff0e;border-radius:2px;margin:2px 0;padding:7px;position:relative}.gjs-sm-layer.gjs-sm-active{background-color:#ffffff1f}.gjs-sm-layer .gjs-sm-label-wrp{display:flex;align-items:center}.gjs-sm-layer #gjs-sm-move{height:14px;width:14px;min-width:14px;cursor:grab}.gjs-sm-layer #gjs-sm-label{flex-grow:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0 5px}.gjs-sm-layer-preview{height:15px;width:15px;min-width:15px;margin-right:5px;border-radius:2px}.gjs-sm-layer-preview-cnt{border-radius:2px;background-color:#fff;height:100%;width:100%;background-size:cover!important}.gjs-sm-layer #gjs-sm-close-layer{display:block;cursor:pointer;height:14px;width:14px;min-width:14px;opacity:.5;filter:alpha(opacity=50)}.gjs-sm-layer #gjs-sm-close-layer:hover{opacity:.8;filter:alpha(opacity=80)}.gjs-sm-stack .gjs-sm-properties{padding:5px 0 0}.gjs-sm-property__border-radius .gjs-sm-property__border-bottom-right-radius{order:4}.gjs-sm-stack #gjs-sm-add{background:none;border:none;cursor:pointer;outline:none;position:absolute;right:0;top:-17px;opacity:.75;padding:0;width:18px;height:18px}.gjs-sm-stack #gjs-sm-add:hover{opacity:1;filter:alpha(opacity=100)}.gjs-sm-colorp-c{height:100%;width:20px;position:absolute;right:0;top:0;box-sizing:border-box;border-radius:2px;padding:2px}.gjs-sm-colorp-c .gjs-field-colorp-c,.gjs-sm-colorp-c .gjs-checker-bg{height:100%;width:100%;border-radius:1px}.gjs-sm-color-picker{background-color:var(--gjs-font-color);cursor:pointer;height:16px;width:100%;margin-top:-16px;box-shadow:0 0 1px var(--gjs-main-dark-color);border-radius:1px}.gjs-sm-btn-upload #gjs-sm-upload{left:0;top:0;position:absolute;width:100%;opacity:0;cursor:pointer}.gjs-sm-btn-upload #gjs-sm-label{padding:2px 0}.gjs-sm-layer>#gjs-sm-move{opacity:.7;filter:alpha(opacity=70);cursor:move;font-size:12px;float:left;margin:0 5px 0 0}.gjs-sm-layer>#gjs-sm-move:hover{opacity:.9;filter:alpha(opacity=90)}.gjs-blocks-c{display:flex;flex-wrap:wrap;justify-content:flex-start}.gjs-block-categories{display:flex;flex-direction:column}.gjs-block-category{width:100%}.gjs-block-category .gjs-caret-icon{margin-right:5px}.gjs-block{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;width:45%;min-width:45px;padding:1em;box-sizing:border-box;min-height:90px;cursor:all-scroll;font-size:11px;font-weight:lighter;text-align:center;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(0,0,0,.2);border-radius:3px;margin:10px 2.5% 5px;box-shadow:0 1px #00000026;transition:all .2s ease 0s;transition-property:box-shadow,color}.gjs-block:hover{box-shadow:0 3px 4px #00000026}.gjs-block svg{fill:currentColor}.gjs-block__media{margin-bottom:10px;pointer-events:none}.gjs-block-svg{width:54px;fill:currentColor}.gjs-block-svg-path{fill:currentColor}.gjs-block.fa{font-size:2em;line-height:2em;padding:11px}.gjs-block-label{line-height:normal;font-size:.65rem;font-weight:400;font-family:Helvetica,sans-serif;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.gjs-block.gjs-bdrag{width:auto;padding:0}.gjs-selected-parent{border:1px solid var(--gjs-color-yellow)}.gjs-opac50{opacity:.5;filter:alpha(opacity=50)}.gjs-layer{font-weight:lighter;text-align:left;position:relative;font-size:var(--gjs-font-size);display:grid}.gjs-layer-item{display:flex;align-items:center;justify-content:space-between;padding:5px 10px;border-bottom:1px solid var(--gjs-main-dark-color);background-color:var(--gjs-secondary-dark-color);gap:var(--gjs-flex-item-gap);cursor:pointer}.gjs-layer-item-left,.gjs-layer-item-right{display:flex;align-items:center;gap:var(--gjs-flex-item-gap)}.gjs-layer-item-left{width:100%}.gjs-layer-hidden{opacity:.55;filter:alpha(opacity=55)}.gjs-layer-vis{box-sizing:content-box;cursor:pointer;z-index:1}.gjs-layer-vis-on,.gjs-layer-vis-off{display:flex;width:13px;height:13px}.gjs-layer-vis-off,.gjs-layer-vis.gjs-layer-off .gjs-layer-vis-on{display:none}.gjs-layer-vis.gjs-layer-off .gjs-layer-vis-off{display:flex}.gjs-layer-caret{width:15px;height:15px;cursor:pointer;box-sizing:content-box;transform:rotate(90deg);display:flex;opacity:.7;filter:alpha(opacity=70)}.gjs-layer-caret:hover{opacity:1;filter:alpha(opacity=100)}.gjs-layer.open>.gjs-layer-item .gjs-layer-caret{transform:rotate(180deg)}.gjs-layer-title{padding:0;display:flex;align-items:center;background-color:#0000!important;border-bottom:none}.gjs-layer-title-inn{align-items:center;position:relative;display:flex;gap:var(--gjs-flex-item-gap)}.gjs-layer-title-c{width:100%}.gjs-layer__icon{display:block;width:100%;max-width:15px;max-height:15px;padding-left:5px}.gjs-layer__icon svg{fill:currentColor}.gjs-layer-name{display:inline-block;box-sizing:content-box;overflow:hidden;white-space:nowrap;max-width:170px;height:auto}.gjs-layer-name--no-edit{text-overflow:ellipsis}.gjs-layer>.gjs-layer-children{display:none}.gjs-layer.open>.gjs-layer-children{display:block}.gjs-layer-no-chld>.gjs-layer-title-inn>.gjs-layer-caret{visibility:hidden}.gjs-layer-move{display:flex;width:13px;height:13px;box-sizing:content-box;cursor:move}.gjs-layer.gjs-hovered .gjs-layer-item{background-color:var(--gjs-soft-light-color)}.gjs-layer.gjs-selected .gjs-layer-item{background-color:var(--gjs-main-light-color)}.gjs-layers{position:relative;height:100%}.gjs-layers #gjs-placeholder{width:100%;position:absolute}.gjs-layers #gjs-placeholder #gjs-plh-int{height:100%;padding:1px}.gjs-layers #gjs-placeholder #gjs-plh-int.gjs-insert{background-color:var(--gjs-color-green)}#gjs-clm-add-tag,.gjs-clm-tags-btn{background-color:#ffffff26;border-radius:2px;padding:3px;margin-right:3px;border:1px solid rgba(0,0,0,.15);width:24px;height:24px;box-sizing:border-box;cursor:pointer}.gjs-clm-tags-btn svg{fill:currentColor;display:block}.gjs-clm-header{display:flex;align-items:center;margin:7px 0}.gjs-clm-header-status{flex-shrink:1;margin-left:auto}.gjs-clm-tag{display:flex;overflow:hidden;align-items:center;border-radius:3px;margin:0 3px 3px 0;padding:5px;cursor:default}.gjs-clm-tag-status,.gjs-clm-tag-close{width:12px;height:12px;flex-shrink:1}.gjs-clm-tag-status svg,.gjs-clm-tag-close svg{vertical-align:middle;fill:currentColor}.gjs-clm-sels-info{margin:7px 0;text-align:left}.gjs-clm-sel-id{font-size:.9em;opacity:.5;filter:alpha(opacity=50)}.gjs-clm-label-sel{float:left;padding-right:5px}.gjs-clm-tags{font-size:var(--gjs-font-size);padding:10px 5px}.gjs-clm-tags #gjs-clm-sel{padding:7px 0;float:left}.gjs-clm-tags #gjs-clm-sel{font-style:italic;margin-left:5px}.gjs-clm-tags #gjs-clm-tags-field{clear:both;padding:5px;margin-bottom:5px;display:flex;flex-wrap:wrap}.gjs-clm-tags #gjs-clm-tags-c{display:flex;flex-wrap:wrap;vertical-align:top;overflow:hidden}.gjs-clm-tags #gjs-clm-new{color:var(--gjs-font-color);padding:var(--gjs-padding-elem-classmanager);display:none}.gjs-clm-tags #gjs-clm-close{opacity:.85;filter:alpha(opacity=85);font-size:20px;line-height:0;cursor:pointer;color:#ffffffe6}.gjs-clm-tags #gjs-clm-close:hover{opacity:1;filter:alpha(opacity=100)}.gjs-clm-tags #gjs-clm-checkbox{color:#ffffffe6;vertical-align:middle;cursor:pointer;font-size:9px}.gjs-clm-tags #gjs-clm-tag-label{flex-grow:1;text-overflow:ellipsis;overflow:hidden;padding:0 3px;cursor:text}.gjs-mdl-container{font-family:var(--gjs-main-font);overflow-y:auto;position:fixed;background-color:#00000080;display:flex;top:0;left:0;right:0;bottom:0;z-index:100}.gjs-mdl-dialog{text-shadow:-1px -1px 0 rgba(0,0,0,.05);animation:gjs-slide-down .215s;margin:auto;max-width:850px;width:90%;border-radius:3px;font-weight:lighter;position:relative;z-index:2}.gjs-mdl-title{font-size:1rem}.gjs-mdl-btn-close{position:absolute;right:15px;top:5px}.gjs-mdl-active .gjs-mdl-dialog{animation:gjs-mdl-slide-down .216s}.gjs-mdl-header,.gjs-mdl-content{padding:10px 15px;clear:both}.gjs-mdl-header{position:relative;border-bottom:1px solid var(--gjs-main-dark-color);padding:15px 15px 7px}.gjs-export-dl:after{content:"";clear:both;display:block;margin-bottom:10px}.gjs-dropzone{display:none;opacity:0;position:absolute;top:0;left:0;z-index:11;width:100%;height:100%;transition:opacity .25s;pointer-events:none}.gjs-dropzone-active .gjs-dropzone{display:block;opacity:1}.gjs-am-assets{height:290px;overflow:auto;clear:both;display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start}.gjs-am-assets-header{padding:5px}.gjs-am-add-asset .gjs-am-add-field{width:70%;float:left}.gjs-am-add-asset button{width:25%;float:right}.gjs-am-preview-cont{position:relative;height:70px;width:30%;background-color:var(--gjs-main-color);border-radius:2px;float:left;overflow:hidden}.gjs-am-preview{position:absolute;background-position:center center;background-size:cover;background-repeat:no-repeat;height:100%;width:100%;z-index:1}.gjs-am-preview-bg{opacity:.5;filter:alpha(opacity=50);position:absolute;height:100%;width:100%;z-index:0}.gjs-am-dimensions{opacity:.5;filter:alpha(opacity=50);font-size:10px}.gjs-am-meta{width:70%;float:left;font-size:12px;padding:5px 0 0 5px;box-sizing:border-box}.gjs-am-meta>div{margin-bottom:5px}.gjs-am-close{cursor:pointer;position:absolute;right:5px;top:0;display:none}.gjs-am-asset{border-bottom:1px solid color-mix(in srgb,var(--gjs-main-dark-color),black 3%);padding:5px;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.gjs-am-asset:hover .gjs-am-close{display:block}.gjs-am-highlight{background-color:var(--gjs-main-light-color)}.gjs-am-assets-cont{background-color:var(--gjs-secondary-dark-color);border-radius:3px;box-sizing:border-box;padding:10px;width:45%;float:right;height:325px;overflow:hidden}.gjs-am-file-uploader{width:55%;float:left}.gjs-am-file-uploader>form{background-color:var(--gjs-secondary-dark-color);border:2px dashed;border-radius:3px;position:relative;text-align:center;margin-bottom:15px}.gjs-am-file-uploader>form.gjs-am-hover{border:2px solid var(--gjs-color-green);color:color-mix(in srgb,var(--gjs-color-green),white 5%)}.gjs-am-file-uploader>form.gjs-am-disabled{border-color:red}.gjs-am-file-uploader>form #gjs-am-uploadFile{opacity:0;filter:alpha(opacity=0);padding:var(--gjs-upload-padding);width:100%;box-sizing:border-box}.gjs-am-file-uploader #gjs-am-title{position:absolute;padding:var(--gjs-upload-padding);width:100%}.gjs-cm-editor-c{float:left;box-sizing:border-box;width:50%}.gjs-cm-editor-c .CodeMirror{height:450px}.gjs-cm-editor{font-size:12px}.gjs-cm-editor#gjs-cm-htmlmixed{padding-right:10px;border-right:1px solid var(--gjs-main-dark-color)}.gjs-cm-editor#gjs-cm-htmlmixed #gjs-cm-title{color:#a97d44}.gjs-cm-editor#gjs-cm-css{padding-left:10px}.gjs-cm-editor#gjs-cm-css #gjs-cm-title{color:#ddca7e}.gjs-cm-editor #gjs-cm-title{background-color:var(--gjs-main-dark-color);font-size:12px;padding:5px 10px 3px;text-align:right}.gjs-rte-toolbar{position:absolute;z-index:10}.gjs-rte-toolbar-ui{border:1px solid var(--gjs-main-dark-color);border-radius:3px}.gjs-rte-actionbar{display:flex}.gjs-rte-action{display:flex;align-items:center;justify-content:center;padding:5px;width:25px;border-right:1px solid var(--gjs-main-dark-color);text-align:center;cursor:pointer;outline:none}.gjs-rte-action:last-child{border-right:none}.gjs-rte-action:hover,.gjs-rte-active{background-color:var(--gjs-main-light-color)}.gjs-rte-disabled{color:var(--gjs-main-light-color);cursor:not-allowed}.gjs-rte-disabled:hover{background-color:unset}.sp-container{position:absolute;top:0;left:0;display:inline-block;z-index:9999994;overflow:hidden}.sp-container.sp-flat{position:relative}.sp-container,.sp-container *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.sp-top{position:relative;width:100%;display:inline-block}.sp-top-inner{position:absolute;top:0;left:0;bottom:0;right:0}.sp-color{position:absolute;top:0;left:0;bottom:0;right:20%}.sp-hue{position:absolute;top:0;right:0;bottom:0;left:84%;height:100%}.sp-clear-enabled .sp-hue{top:33px;height:77.5%}.sp-fill{padding-top:80%}.sp-sat,.sp-val{position:absolute;top:0;left:0;right:0;bottom:0}.sp-alpha-enabled .sp-top{margin-bottom:18px}.sp-alpha-enabled .sp-alpha{display:block}.sp-alpha-handle{position:absolute;top:-4px;bottom:-4px;width:6px;left:50%;cursor:pointer;border:1px solid #000;background:#fff;opacity:.8}.sp-alpha{display:none;position:absolute;bottom:-14px;right:0;left:0;height:8px}.sp-alpha-inner{border:solid 1px #333}.sp-clear{display:none}.sp-clear.sp-clear-display{background-position:center}.sp-clear-enabled .sp-clear{display:block;position:absolute;top:0;right:0;bottom:0;left:84%;height:28px}.sp-container,.sp-replacer,.sp-preview,.sp-dragger,.sp-slider,.sp-alpha,.sp-clear,.sp-alpha-handle,.sp-container.sp-dragging .sp-input,.sp-container button{-webkit-user-select:none;-moz-user-select:-moz-none;-o-user-select:none;user-select:none}.sp-container.sp-input-disabled .sp-input-container,.sp-container.sp-buttons-disabled .sp-button-container,.sp-container.sp-palette-buttons-disabled .sp-palette-button-container,.sp-palette-only .sp-picker-container,.sp-palette-disabled .sp-palette-container,.sp-initial-disabled .sp-initial{display:none}.sp-sat{background-image:-webkit-gradient(linear,0 0,100% 0,from(#fff),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-moz-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-o-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-ms-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:linear-gradient(to right,#fff,#cc9a8100);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";filter:progid:DXImageTransform.Microsoft.gradient(GradientType = 1,startColorstr="#FFFFFFFF",endColorstr="#00CC9A81")}.sp-val{background-image:-webkit-gradient(linear,0 100%,0 0,from(#000000),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(bottom,#000000,rgba(204,154,129,0));background-image:-moz-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-o-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-ms-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:linear-gradient(to top,#000,#cc9a8100);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00CC9A81",endColorstr="#FF000000")}.sp-hue{background:-moz-linear-gradient(top,#ff0000 0%,#ffff00 17%,#00ff00 33%,#00ffff 50%,#0000ff 67%,#ff00ff 83%,#ff0000 100%);background:-ms-linear-gradient(top,#ff0000 0%,#ffff00 17%,#00ff00 33%,#00ffff 50%,#0000ff 67%,#ff00ff 83%,#ff0000 100%);background:-o-linear-gradient(top,#ff0000 0%,#ffff00 17%,#00ff00 33%,#00ffff 50%,#0000ff 67%,#ff00ff 83%,#ff0000 100%);background:-webkit-gradient(linear,left top,left bottom,from(#ff0000),color-stop(.17,#ffff00),color-stop(.33,#00ff00),color-stop(.5,#00ffff),color-stop(.67,#0000ff),color-stop(.83,#ff00ff),to(#ff0000));background:-webkit-linear-gradient(top,#ff0000 0%,#ffff00 17%,#00ff00 33%,#00ffff 50%,#0000ff 67%,#ff00ff 83%,#ff0000 100%);background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.sp-1{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff0000",endColorstr="#ffff00")}.sp-2{height:16%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffff00",endColorstr="#00ff00")}.sp-3{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00ff00",endColorstr="#00ffff")}.sp-4{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00ffff",endColorstr="#0000ff")}.sp-5{height:16%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#0000ff",endColorstr="#ff00ff")}.sp-6{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff00ff",endColorstr="#ff0000")}.sp-hidden{display:none!important}.sp-cf:before,.sp-cf:after{content:"";display:table}.sp-cf:after{clear:both}@media (max-device-width: 480px){.sp-color{right:40%}.sp-hue{left:63%}.sp-fill{padding-top:60%}}.sp-dragger{border-radius:5px;height:5px;width:5px;border:1px solid #fff;background:#000;cursor:pointer;position:absolute;top:0;left:0}.sp-slider{position:absolute;top:0;cursor:pointer;height:3px;left:-1px;right:-1px;border:1px solid #000;background:#fff;opacity:.8}.sp-container{border-radius:0;background-color:#ececec;border:solid 1px #f0c49b;padding:0}.sp-container,.sp-container button,.sp-container input,.sp-color,.sp-hue,.sp-clear{font: 12px Lucida Grande,Lucida Sans Unicode,Lucida Sans,Geneva,Verdana,sans-serif;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.sp-top{margin-bottom:3px}.sp-color,.sp-hue,.sp-clear{border:solid 1px #666}.sp-input-container{float:right;width:100px;margin-bottom:4px}.sp-initial-disabled .sp-input-container{width:100%}.sp-input{font-size:12px!important;border:1px inset;padding:4px 5px;margin:0;width:100%;background:#0000;border-radius:3px;color:#222}.sp-input:focus{border:1px solid orange}.sp-input.sp-validation-error{border:1px solid red;background:#fdd}.sp-picker-container,.sp-palette-container{float:left;position:relative;padding:10px 10px 300px;margin-bottom:-290px}.sp-picker-container{width:172px;border-left:solid 1px #fff}.sp-palette-container{border-right:solid 1px #ccc}.sp-palette-only .sp-palette-container{border:0}.sp-palette .sp-thumb-el{display:block;position:relative;float:left;width:24px;height:15px;margin:3px;cursor:pointer;border:solid 2px rgba(0,0,0,0)}.sp-palette .sp-thumb-el:hover,.sp-palette .sp-thumb-el.sp-thumb-active{border-color:orange}.sp-thumb-el{position:relative}.sp-initial{float:left;border:solid 1px #333}.sp-initial span{width:30px;height:25px;border:none;display:block;float:left;margin:0}.sp-initial .sp-clear-display{background-position:center}.sp-palette-button-container,.sp-button-container{float:right}.sp-replacer{margin:0;overflow:hidden;cursor:pointer;padding:4px;display:inline-block;border:solid 1px #91765d;background:#eee;color:#333;vertical-align:middle}.sp-replacer:hover,.sp-replacer.sp-active{border-color:#f0c49b;color:#111}.sp-replacer.sp-disabled{cursor:default;border-color:silver;color:silver}.sp-dd{padding:2px 0;height:16px;line-height:16px;float:left;font-size:10px}.sp-preview{position:relative;width:25px;height:20px;border:solid 1px #222;margin-right:5px;float:left;z-index:0}.sp-palette{max-width:220px}.sp-palette .sp-thumb-el{width:16px;height:16px;margin:2px 1px;border:solid 1px #d0d0d0}.sp-container{padding-bottom:0}.sp-container button{background-color:#eee;background-image:-webkit-linear-gradient(top,#eeeeee,#cccccc);background-image:-moz-linear-gradient(top,#eeeeee,#cccccc);background-image:-ms-linear-gradient(top,#eeeeee,#cccccc);background-image:-o-linear-gradient(top,#eeeeee,#cccccc);background-image:linear-gradient(to bottom,#eee,#ccc);border:1px solid #ccc;border-bottom:1px solid #bbb;border-radius:3px;color:#333;font-size:14px;line-height:1;padding:5px 4px;text-align:center;text-shadow:0 1px 0 #eee;vertical-align:middle}.sp-container button:hover{background-color:#ddd;background-image:-webkit-linear-gradient(top,#dddddd,#bbbbbb);background-image:-moz-linear-gradient(top,#dddddd,#bbbbbb);background-image:-ms-linear-gradient(top,#dddddd,#bbbbbb);background-image:-o-linear-gradient(top,#dddddd,#bbbbbb);background-image:linear-gradient(to bottom,#ddd,#bbb);border:1px solid #bbb;border-bottom:1px solid #999;cursor:pointer;text-shadow:0 1px 0 #ddd}.sp-container button:active{border:1px solid #aaa;border-bottom:1px solid #888;-webkit-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-moz-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-ms-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-o-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;box-shadow:inset 0 0 5px 2px #aaa,0 1px #eee}.sp-cancel{font-size:11px;color:#d93f3f!important;margin:0 5px 0 0;padding:2px;vertical-align:middle;text-decoration:none}.sp-cancel:hover{color:#d93f3f!important;text-decoration:underline}.sp-palette span:hover,.sp-palette span.sp-thumb-active{border-color:#000}.sp-preview,.sp-alpha,.sp-thumb-el{position:relative;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.sp-preview-inner,.sp-alpha-inner,.sp-thumb-inner{display:block;position:absolute;top:0;left:0;bottom:0;right:0}.sp-palette .sp-thumb-inner{background-position:50% 50%;background-repeat:no-repeat}.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=)}.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=)}.sp-clear-display{background-repeat:no-repeat;background-position:center;background-image:url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==)}.gjs-editor-sp{border:1px solid var(--gjs-main-dark-color);box-shadow:0 0 7px var(--gjs-main-dark-color);border-radius:3px}.gjs-editor-sp .sp-hue,.gjs-editor-sp .sp-slider{cursor:row-resize}.gjs-editor-sp .sp-color,.gjs-editor-sp .sp-dragger{cursor:crosshair}.gjs-editor-sp .sp-alpha-inner,.gjs-editor-sp .sp-alpha-handle{cursor:col-resize}.gjs-editor-sp .sp-hue{left:90%}.gjs-editor-sp .sp-color{right:15%}.gjs-editor-sp .sp-picker-container{border:none}.gjs-editor-sp .colpick_dark .colpick_color{outline:1px solid var(--gjs-main-dark-color)}.gjs-editor-sp .sp-cancel,.gjs-editor-sp .sp-cancel:hover{bottom:-8px;color:#777!important;font-size:25px;left:0;position:absolute;text-decoration:none}.gjs-editor-sp .sp-alpha-handle{background-color:#ccc;border:1px solid #555;width:4px}.gjs-editor-sp .sp-color,.gjs-editor-sp .sp-hue{border:1px solid #333}.gjs-editor-sp .sp-slider{background-color:#ccc;border:1px solid #555;height:3px;left:-4px;width:22px}.gjs-editor-sp .sp-dragger{background:#0000;box-shadow:0 0 0 1px #111}.gjs-editor-sp .sp-button-container{float:none;width:100%;position:relative;text-align:right}.gjs-editor-sp .sp-button-container .sp-choose,.gjs-editor-sp .sp-button-container .sp-choose:hover,.gjs-editor-sp .sp-button-container .sp-choose:active{background:var(--gjs-main-dark-color);border-color:var(--gjs-main-dark-color);color:var(--gjs-font-color);text-shadow:none;box-shadow:none;padding:3px 5px}.gjs-editor-sp .sp-palette-container{border:none;float:none;margin:0;padding:5px 10px 0}.gjs-editor-sp .sp-palette .sp-thumb-el,.gjs-editor-sp .sp-palette .sp-thumb-el:hover{border:1px solid rgba(0,0,0,.9)}.gjs-editor-sp .sp-palette .sp-thumb-el:hover,.gjs-editor-sp .sp-palette .sp-thumb-el.sp-thumb-active{border-color:#000000e6}.gjs-one-bg{background-color:var(--gjs-primary-color)}.gjs-one-color,.gjs-one-color-h:hover{color:var(--gjs-primary-color)}.gjs-two-bg{background-color:var(--gjs-secondary-color)}.gjs-two-color,.gjs-two-color-h:hover{color:var(--gjs-secondary-color)}.gjs-three-bg{background-color:var(--gjs-tertiary-color)}.gjs-three-color,.gjs-three-color-h:hover{color:var(--gjs-tertiary-color)}.gjs-four-bg{background-color:var(--gjs-quaternary-color)}.gjs-four-color,.gjs-four-color-h:hover{color:var(--gjs-quaternary-color)}.gjs-danger-bg{background-color:var(--gjs-color-red)}.gjs-danger-color,.gjs-danger-color-h:hover{color:var(--gjs-color-red)}.gjs-bdrag{pointer-events:none!important;position:absolute!important;z-index:10!important;width:auto}.gjs-drag-helper{background-color:var(--gjs-color-blue)!important;pointer-events:none!important;position:absolute!important;z-index:10!important;transform:scale(.3)!important;transform-origin:top left!important;-webkit-transform-origin:top left!important;margin:15px!important;transition:none!important;outline:none!important}.gjs-grabbing,.gjs-grabbing *{cursor:grabbing!important;cursor:-webkit-grabbing!important}.gjs-grabbing{overflow:hidden}.gjs-off-prv{position:relative;z-index:10;padding:5px;cursor:pointer}.gjs-editor-cont ::-webkit-scrollbar-track{background:var(--gjs-secondary-dark-color)}.gjs-editor-cont ::-webkit-scrollbar-thumb{background-color:#fff3}.gjs-editor-cont ::-webkit-scrollbar{width:8px}.gjs-no-touch-actions{touch-action:none}.gjs-disabled{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;opacity:.5;filter:alpha(opacity=50)}.gjs-editor{font-family:var(--gjs-main-font);font-size:var(--gjs-font-size);position:relative;box-sizing:border-box;height:100%}.gjs-freezed{opacity:.5;filter:alpha(opacity=50);pointer-events:none}.gjs-hidden{display:none}@keyframes gjs-slide-down{0%{transform:translateY(-3rem);opacity:0}to{transform:translate(0);opacity:1}}@keyframes gjs-slide-up{0%{transform:translate(0);opacity:1}to{transform:translateY(-3rem);opacity:0}}.cm-s-hopscotch span.cm-error{color:#fff}/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.notice-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10100;overflow:hidden;background:#000;--notice-in-delay: 3s}.notice-overlay.closing{animation:notice-out .45s ease forwards}@keyframes notice-out{0%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}.notice-stars{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;opacity:.5;background-image:radial-gradient(1.4px 1.4px at 18% 26%,#fff 50%,transparent 51%),radial-gradient(1.2px 1.2px at 72% 12%,#cfe4ff 50%,transparent 51%),radial-gradient(1.8px 1.8px at 44% 68%,#fff 50%,transparent 51%),radial-gradient(1.1px 1.1px at 88% 54%,#9fc4ff 50%,transparent 51%),radial-gradient(1.3px 1.3px at 8% 82%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 60% 88%,#e8f1ff 50%,transparent 51%);background-size:340px 340px,460px 460px,580px 580px,700px 700px,820px 820px,940px 940px;animation:notice-drift 140s linear infinite}@keyframes notice-drift{0%{background-position:0 0,0 0,0 0,0 0,0 0,0 0}to{background-position:-340px 340px,-460px 460px,580px -580px,-700px 700px,820px -820px,940px 940px}}.notice-stage{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;overflow:hidden;perspective:950px;z-index:2}.notice-crawl{position:relative;top:var(--notice-start, 100%);width:100%;align-self:flex-start;--notice-tilt: 16deg;--notice-end-z: -800px;transform-origin:50% 100%;color:#feda4a;font-family:Michroma,Segoe UI,system-ui,sans-serif;font-size:clamp(18px,3vw,44px);font-weight:400;letter-spacing:.055em;line-height:155%;text-align:justify;animation:notice-crawl var(--notice-dur, 36s) linear var(--notice-in-delay, 3s) both}.notice-crawl.paused{animation-play-state:paused}@keyframes notice-crawl{0%{top:var(--notice-start, 100%);transform:rotateX(var(--notice-tilt, 14deg)) translateZ(0);opacity:0}1%{opacity:1}88%{opacity:1}to{top:var(--notice-end, -190%);transform:rotateX(calc(var(--notice-tilt, 14deg) + 10deg)) translateZ(var(--notice-end-z, -800px));opacity:0}}.notice-crawl-title{margin:0 0 .8em;font-size:124%;line-height:128%;text-align:center;text-transform:uppercase;letter-spacing:.06em}.notice-crawl-logo{width:fit-content;margin:0 auto .9em;font-family:ui-monospace,Cascadia Mono,Consolas,DejaVu Sans Mono,Liberation Mono,Menlo,monospace;font-size:min(2vw,30px);line-height:1.21;letter-spacing:0;white-space:pre;text-align:left;color:inherit}.notice-crawl p{margin:0 0 1.15em}.notice-fade{position:absolute;inset:0 0 auto 0;height:55%;z-index:3;pointer-events:none;background-image:linear-gradient(0deg,transparent,#000 75%)}.notice-ico{position:absolute;top:14px;z-index:5;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid rgba(254,218,74,.35);border-radius:50%;background:#0000008c;color:#feda4a;cursor:pointer}.notice-ico:hover{border-color:#feda4a;background:#000000bf}.notice-ico.close{right:14px}.notice-ico.edit{right:58px}.notice-editor-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10300;display:flex;align-items:center;justify-content:center;padding:16px;background:#000000b8}.notice-editor{position:relative;width:min(920px,100%);max-height:88dvh;overflow:auto;padding:22px;border:1px solid var(--border);border-radius:14px;background:var(--card);color:var(--text)}.notice-editor h2{margin:0 0 4px;padding-right:36px;font-size:17px}.notice-editor-close{position:absolute;top:14px;right:14px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--border);border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}.notice-editor-close:hover{border-color:var(--accent);color:var(--accent)}.notice-editor-hint{margin:0 0 16px;color:var(--muted);font-size:12.5px;line-height:18px}.notice-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.notice-editor-col{display:flex;flex-direction:column;gap:10px;min-width:0}.notice-editor-col-title{font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--accent)}.notice-field{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--muted)}.notice-field input,.notice-field textarea{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font:inherit;font-size:13px;line-height:19px;resize:vertical}.notice-field textarea{min-height:150px}.notice-field input:focus,.notice-field textarea:focus{outline:none;border-color:var(--accent)}.notice-editor-row{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:16px}.notice-editor-check{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text);cursor:pointer}.notice-editor-check input{accent-color:var(--accent)}.notice-editor-max{display:inline-flex;align-items:center;gap:8px;font-size:13px}.notice-editor-max input{width:68px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font:inherit}.notice-editor-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px}.notice-editor-actions button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:9px;padding:9px 16px;background:transparent;color:var(--text);font:inherit;font-size:13px;cursor:pointer}.notice-editor-actions button.primary{border-color:transparent;background:var(--accent);color:#05202b;font-weight:600}.notice-editor-actions button:disabled{opacity:.6;cursor:default}.notice-editor-actions button.danger{color:var(--error);border-color:#f8717180}.notice-editor-msg{margin-top:12px;font-size:12.5px}.notice-editor-msg.ok{color:var(--accent);font-weight:700}.notice-editor-msg.err{color:var(--error)}.settings-notice-label{font-weight:700}.settings-notice-edit{display:inline-flex;align-items:center;justify-content:center;gap:7px}.settings-notice-edit svg{flex:0 0 auto}@media (max-width: 720px){.notice-crawl{font-size:clamp(16px,4.4vw,26px);letter-spacing:.03em;text-align:left}.notice-editor-grid{grid-template-columns:1fr}.notice-editor{padding:18px 14px}}@media (prefers-reduced-motion: reduce){.notice-overlay.closing{animation-duration:1ms}.notice-stars{animation:none}.notice-stage{overflow-y:auto;perspective:none}.notice-crawl{top:0;animation:none;transform:none;margin:72px 0 96px}.notice-fade{display:none}}:root{color-scheme:dark;--bg: #0b1020;--card: #141b30;--accent: #2dd4bf;--accent-dim: #14b8a6;--text: #e6edf7;--muted: #8fa3c0;--error: #f87171;--border: #25314f}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:radial-gradient(1200px 600px at 20% -10%,#16224a 0%,var(--bg) 55%);color:var(--text)}.login-wrap{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:400px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:40px 36px;box-shadow:0 20px 60px #00000073}.login-logo{display:flex;justify-content:center;margin-bottom:6px}.login-logo img{display:block;width:100%;max-width:300px;height:auto}.login-sub{text-align:center;color:var(--muted);font-size:13px;margin-bottom:28px}.field{margin-bottom:16px}.field label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.field input{width:100%;padding:11px 14px;border-radius:8px;border:1px solid var(--border);background:#0d1428;color:var(--text);font-size:15px;outline:none;transition:border-color .15s}.field input:focus{border-color:var(--accent)}.field--user{position:relative}.login-users{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);background:var(--card);border:1px solid var(--border);border-radius:10px;padding:6px;box-shadow:0 18px 50px #0000008c;max-height:244px;overflow:auto}.login-users-title{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);padding:4px 8px 6px}.login-user{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;color:var(--text);font-size:13.5px;cursor:pointer;-webkit-user-select:none;user-select:none}.login-user.active,.login-user:hover{background:#2dd4bf24}.login-user-ico{display:inline-flex;color:var(--muted);flex:0 0 auto}.login-user.active .login-user-ico,.login-user:hover .login-user-ico{color:var(--accent)}.login-user-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-user-x{flex:0 0 auto;background:none;border:0;color:var(--muted);font-size:12px;line-height:1;padding:3px 5px;border-radius:5px;cursor:pointer;opacity:0;transition:opacity .12s,color .12s}.login-user:hover .login-user-x,.login-user.active .login-user-x,.login-user-x:focus-visible{opacity:1}.login-user-x:hover{color:var(--error);background:#f8717124}@media (hover: none){.login-user-x{opacity:.75}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0 1000px #0d1428 inset;box-shadow:0 0 0 1000px #0d1428 inset;caret-color:var(--text);transition:background-color 9999s ease-in-out 0s}.pw-wrap{position:relative;display:block}.pw-wrap input{padding-right:44px}.pw-eye{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:none;border:1px solid transparent;border-radius:7px;color:var(--muted);cursor:pointer;transition:color .15s,border-color .15s}.pw-eye:hover{color:var(--text);border-color:var(--border)}.pw-eye:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.pw-eye[aria-pressed=true]{color:var(--accent)}.btn{width:100%;padding:12px;border:0;border-radius:8px;background:var(--accent);color:#06231e;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s,transform .05s}.btn:hover{background:var(--accent-dim)}.btn:active{transform:scale(.99)}.btn:disabled{opacity:.6;cursor:wait}.remember{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-bottom:18px}.error-box{background:#f871711f;border:1px solid rgba(248,113,113,.4);color:var(--error);border-radius:8px;padding:10px 12px;font-size:13px;margin-bottom:16px}.session-box{background:#f59e0b24;border:1px solid rgba(245,158,11,.45);color:#fbbf24;border-radius:8px;padding:10px 12px;font-size:13px;margin-bottom:16px}.session-box .muted{margin-top:4px}.welcome{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--bg);z-index:10200;opacity:1;transition:opacity 2s ease;cursor:pointer}.welcome.fade-out{opacity:0}.welcome-logo{width:66.6667vw;height:66.6667vh;object-fit:contain;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.dash{position:relative;min-height:100%;padding:16px 24px 28px;max-width:1400px;margin:0 auto}.bg-logo{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:640px;max-width:92vw;height:auto;opacity:.1;z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none}.dash h2{font-size:24px;margin-bottom:6px}.dash p.muted{color:var(--muted)}.app-footer{margin-top:36px;padding-top:14px;border-top:1px solid var(--border);color:var(--muted);font-size:12px;text-align:center;opacity:.85;-webkit-user-select:text;user-select:text;cursor:text}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.dash-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px}.dash-card h3{font-size:15px;color:var(--muted);margin-bottom:8px}.dash-card .big{font-size:26px;font-weight:800;color:var(--accent)}.topbar{display:flex;flex-wrap:wrap;row-gap:6px;column-gap:10px;justify-content:space-between;align-items:center;margin-bottom:12px;position:relative}.topbar .brand{order:1}.topbar .nav{order:2}.topbar-right{order:3}.topbar.nav-row2 .nav{order:4;flex:1 0 100%}@font-face{font-family:Michroma;src:url(/fonts/Michroma-Regular.ttf) format("truetype");font-weight:400;font-display:swap}.topbar .brand{display:flex;align-items:center;gap:8px}.topbar .brand-shield{display:block;height:27px;width:auto}.brand-logo-btn{display:inline-flex;align-items:center;justify-content:center;padding:2px 3px;border:0;background:none;border-radius:8px;cursor:pointer;touch-action:manipulation}.brand-logo-btn:hover .brand-shield{filter:drop-shadow(0 0 7px rgba(45,212,191,.55))}.brand-logo-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topbar .brand-col{display:flex;flex-direction:column;justify-content:center;min-width:0}.topbar .brand-word{position:relative;display:inline-block;font-family:Michroma,Bahnschrift,system-ui,sans-serif;font-size:14.7px;font-weight:400;line-height:1;letter-spacing:.01em;white-space:nowrap;-webkit-text-stroke:.028em currentColor;background:linear-gradient(90deg,#0ba5f5,#14a7e0 30%,#1fb8c8 50%,#2fd0b4 65%);-webkit-background-clip:text;background-clip:text;color:transparent}.topbar .brand-word-net{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:#f4f7fb}.brand-tag{display:block;margin-top:3px;font-family:Michroma,Bahnschrift,system-ui,sans-serif;font-size:5.3px;line-height:1.15;letter-spacing:.06em;white-space:nowrap;color:#e8eff5;opacity:.92}.brand-nodes{position:absolute;left:0;bottom:0;width:100%;height:.68em;overflow:visible;pointer-events:none}.user-menu{display:flex;align-items:center}.user-btn,.logout-ico{display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:5px 8px;cursor:pointer}.user-btn:hover,.logout-ico:hover{color:var(--accent);border-color:var(--accent)}.logout-ico:hover{color:var(--error);border-color:var(--error)}.user-btn[aria-expanded=true]{color:var(--accent);border-color:var(--accent)}.user-panel{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;max-width:min(280px,calc(100vw - 20px));background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px;z-index:9996;box-shadow:0 12px 30px #00000073}.user-panel-name{display:flex;align-items:center;gap:8px;color:var(--text);font-size:15px;font-weight:700;overflow-wrap:anywhere}.user-panel-name svg{color:var(--accent);flex:0 0 auto}.user-panel-role{margin-top:6px;display:inline-block;font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:2px 8px}.user-panel-link{display:flex;align-items:center;gap:8px;margin-top:10px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;color:var(--muted);text-decoration:none;font-size:12.5px}.user-panel-link:hover,.user-panel-link.active{color:var(--accent);border-color:var(--accent)}.user-panel-link svg{flex:0 0 auto}.topbar-right{display:flex;align-items:center;gap:8px;min-width:0;margin-left:auto}.lang{position:relative;display:flex;align-items:center;gap:6px}.lang-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:5px 8px;cursor:pointer;font-size:12px;font-weight:700}.lang-toggle img{display:block;width:20px;height:auto;border-radius:2px;opacity:.2;transition:opacity .15s}.lang-toggle:hover img,.lang-toggle[aria-expanded=true] img{opacity:1}.lang-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:9996;width:340px;max-width:calc(100vw - 24px);max-height:70vh;overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px;box-shadow:0 18px 50px #00000080}.lang-panel-title{font-size:12px;color:var(--muted);margin-bottom:8px}.lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.lang-item{display:flex;align-items:center;gap:8px;background:none;border:0;color:var(--text);border-radius:6px;padding:6px 8px;cursor:pointer;font-size:13px;text-align:left}.lang-item img{display:block;width:20px;height:auto;border-radius:2px;flex:0 0 auto;opacity:.2;transition:opacity .15s}.lang-native{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lang-item:hover:not(:disabled){background:#2dd4bf1f}.lang-item:hover:not(:disabled) img,.lang-item.active img{opacity:1}.lang-item.active{color:var(--accent);font-weight:700}.lang-item:disabled{opacity:.4;cursor:not-allowed}.lang-badge{margin-left:auto;font-size:10px;color:var(--muted);white-space:nowrap}.lang-note{margin-top:8px;font-size:11px;color:var(--muted)}.settings{display:flex;align-items:center}.settings-toggle{display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:5px 8px;cursor:pointer}.settings-toggle:hover,.settings-toggle[aria-expanded=true]{color:var(--accent);border-color:var(--accent)}.settings-panel{position:absolute;top:calc(100% + 8px);right:0;min-width:248px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px;z-index:9996;box-shadow:0 12px 30px #00000073}.settings-panel-title{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted);margin-bottom:8px}.settings-row{display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;border-radius:8px;padding:7px 8px;cursor:pointer;text-align:left;font-family:inherit}.settings-row:hover{background:#2dd4bf14}.settings-row-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.settings-row-label{font-size:13.5px;color:var(--text)}.settings-row-desc{font-size:11px;color:var(--muted)}.settings-track{flex:0 0 auto;width:38px;height:21px;border-radius:11px;background:var(--border);position:relative;transition:background .18s}.settings-knob{position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:50%;background:var(--muted);transition:transform .18s,background .18s}.settings-row.on .settings-track{background:var(--accent-dim)}.settings-row.on .settings-knob{transform:translate(17px);background:#06231e}.settings-test{margin-top:8px;width:100%;background:none;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:7px 10px;cursor:pointer;font-size:12.5px;font-family:inherit}.settings-test:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.settings-test:disabled{opacity:.45;cursor:not-allowed}.nav{display:flex;align-items:center;flex:1 1 auto;min-width:0;margin-bottom:0}.nav-links{display:flex;flex-wrap:wrap;gap:3px;list-style:none}.nav-link{display:inline-block;padding:5px 8px;border:1px solid transparent;border-radius:8px;color:var(--text);text-decoration:none;font-size:13.5px;white-space:nowrap}.nav-link:hover{color:#fff;border-color:var(--border)}.nav-link.active{background:var(--accent);color:#06231e;font-weight:700}.nav-item{position:relative}.nav-caret{font-size:9px;line-height:1;opacity:.7;transition:transform .15s ease}.nav-parent{background:none;font-family:inherit;cursor:pointer;text-align:left}.nav-sub{display:none;margin:0;padding:0;list-style:none}@media (min-width: 721px){.nav-sub{position:fixed;left:0;top:0;z-index:9996;min-width:200px;padding:6px;background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 14px 30px #00000080}.nav-sub:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.nav-item.has-sub.sub-open>.nav-sub{display:block}.nav-item.has-sub.sub-open>.nav-link .nav-caret{transform:rotate(180deg)}.nav-sub li+li{margin-top:2px}.nav-sub .nav-link{display:block;width:100%;padding:8px 12px;font-size:13.5px;white-space:nowrap}}.nav-toggle{display:none;align-items:center;gap:7px;background:none;border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 12px;cursor:pointer;font-size:14px;flex:0 0 auto}.nav-toggle[aria-expanded=true]{color:var(--accent);border-color:var(--accent)}.nav-burger{font-size:15px;line-height:1}.page h2{font-size:22px;margin-bottom:8px}.page p.muted{color:var(--muted);font-size:14px;max-width:62ch}.soon{display:inline-block;margin-top:14px;padding:3px 10px;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font-size:11px;letter-spacing:1px;text-transform:uppercase}.login-wrap{position:relative}.login-lang{position:absolute;top:16px;right:16px;z-index:20}@media (max-width: 720px){.lang-grid{grid-template-columns:1fr}.topbar .brand{display:none}.nav-toggle{display:inline-flex;padding:5px 10px;font-size:13px}.topbar{flex-wrap:wrap;gap:8px;margin-bottom:8px}.topbar-right{margin-left:auto;gap:6px}.lang-toggle,.settings-toggle{padding:4px 7px}.user-btn,.logout-ico{padding:4px 6px}.bg-logo{width:380px}.login-lang{top:10px;right:10px}.topbar .nav{display:none;order:4;flex:1 0 100%;margin-bottom:0}.nav.open{display:block}.nav-links{display:none}.nav.open .nav-links{display:flex;flex-direction:column;gap:3px;width:100%;margin:0 0 8px;padding:7px;background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 26px #00000073}.nav.open .nav-links li{width:100%}.nav.open .nav-link{display:block;width:100%;padding:8px 12px}.nav.open .nav-item.has-sub>.nav-sub{margin-left:10px;padding-left:8px;border-left:1px solid var(--border)}.nav.open .nav-item.has-sub.sub-open>.nav-sub{display:block}.nav.open .nav-sub .nav-link{padding:7px 12px;font-size:13.5px}.dash{padding:10px 10px 20px}}@media (max-width: 420px){.login-wrap{padding:14px}.login-card{padding:26px 18px}.dash h2{font-size:20px}}.nav-link{display:inline-flex;align-items:center;gap:6px}.nav-ico{display:inline-flex;align-items:center;opacity:.95;flex:0 0 auto}.nav-link.active .nav-ico{opacity:1}.nav-ico-mask{display:block;width:16px;height:16px;flex:0 0 auto;background-color:currentColor;-webkit-mask-image:var(--nav-ico-url);mask-image:var(--nav-ico-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.nav-action{background:none;font-family:inherit;cursor:pointer}.nav-sub .nav-link{color:var(--muted)}.nav-sub .nav-link:hover{color:var(--text)}@media (prefers-color-scheme: light){.nav-link{color:#0b1020}.nav-link:hover{color:#000}.nav-sub .nav-link{color:#3a4a63}.nav-sub .nav-link:hover{color:#0b1020}.nav-link.active{color:#06231e}}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;color-scheme:dark;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2394a3b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:10px 6px;padding-right:24px}select:disabled{opacity:.55;cursor:not-allowed}select option,select optgroup{background-color:#0d1428;color:var(--text)}@media (prefers-color-scheme: light){select option,select optgroup{background-color:#0d1428;color:#e6edf7}}.upd-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100050;display:flex;align-items:flex-start;justify-content:center;padding:18px 12px;background:#04081273}.upd-card{display:flex;flex-wrap:wrap;align-items:center;gap:12px;max-width:min(620px,100%);padding:12px 14px;background:#111a30;color:var(--text);border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 50px #0000008c}.upd-spin{flex:0 0 auto;width:18px;height:18px;border-radius:50%;border:2px solid rgba(45,212,191,.25);border-top-color:var(--accent);animation:upd-spin .8s linear infinite}@keyframes upd-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.upd-spin{animation:none}}.upd-text{display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.35}.upd-text strong{font-size:14px}.upd-text span{color:var(--muted)}.upd-actions{display:flex;gap:8px;margin-left:auto}.upd-btn{font:inherit;font-size:13px;padding:6px 12px;border-radius:8px;cursor:pointer;border:1px solid var(--accent);background:var(--accent);color:#06231e}.upd-btn:hover{background:var(--accent-dim);border-color:var(--accent-dim)}.upd-btn.ghost{background:none;border-color:var(--border);color:var(--muted)}.upd-btn.ghost:hover{background:#ffffff0f;color:var(--text)}.upd-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topo-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 10px}.topo-select,.topo-name-input{background-color:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:8px;padding:9px 12px;font-size:14px;outline:none;transition:border-color .15s}.topo-select:focus,.topo-name-input:focus{border-color:var(--accent)}.topo-layout-select{max-width:200px;flex:0 0 auto}.topo-select{padding-right:30px}.topo-name-input{flex:1;min-width:150px}.btn-sm{width:auto;padding:9px 14px;font-size:13px}.btn-danger{background:transparent;border:1px solid var(--error);color:var(--error)}.btn-danger:hover:not(:disabled){background:#f871711f;color:var(--error)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.topo-main{display:grid;grid-template-columns:minmax(360px,480px) 1fr;gap:14px;align-items:start}.topo-left,.topo-right{min-width:0}.topo-works{position:absolute;right:16px;bottom:16px;z-index:6;font-size:13px;font-weight:800;letter-spacing:.02em;color:#22c55e;background:#22c55e24;border:1px solid rgba(34,197,94,.5);border-radius:999px;padding:3px 11px;pointer-events:none;-webkit-user-select:none;user-select:none}.topo-save-state{font-size:12px;color:var(--muted);min-width:70px}.topo-save-state.saved{color:#22c55e;font-size:18px;font-weight:800;min-width:20px}.topo-graph-controls{display:flex;flex-wrap:wrap;gap:10px 16px;margin-bottom:8px;align-items:center}.topo-slider{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.topo-slider input[type=range]{width:110px;accent-color:var(--accent)}.topo-slider-lbl{display:inline-flex;align-items:center;gap:4px;background:none;border:0;padding:0;margin:0;font:inherit;font-size:12px;line-height:1.2;color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:5px}.topo-slider-lbl:hover:not(:disabled){color:var(--accent)}.topo-slider-lbl:active:not(:disabled){transform:translateY(1px)}.topo-slider-lbl:disabled{cursor:not-allowed;opacity:.5}.topo-slider-lbl:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.topo-slider-lbl img{width:16px;height:12px;object-fit:contain}.topo-slider-val{min-width:38px;font-weight:700;color:var(--text);font-size:11px}.topo-check{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.topo-check input{accent-color:var(--accent);cursor:pointer}.topo-check:hover{color:var(--text)}.topo-tb-opts .topo-check{padding:0 2px}.topo-menu{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.topo-export{position:relative}.topo-export-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:40;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:6px;display:flex;flex-direction:column;gap:4px;box-shadow:0 8px 22px #00000080;min-width:190px}.topo-export-menu button{text-align:left;padding:6px 10px;font-size:12px;background:none;border:none;color:var(--text);border-radius:7px;cursor:pointer}.topo-export-menu button:hover{background:#60a5fa1f}.topo-menu .chip{padding:5px 12px;font-size:12px;border-radius:999px}.topo-menu-group{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;padding:4px 0 2px}.topo-graph{position:relative}.topo-minimap{position:absolute;right:10px;bottom:10px;z-index:25;cursor:grab;border-radius:8px;overflow:hidden;border:1px solid var(--border);box-shadow:0 4px 14px #0000008c;opacity:.9;-webkit-user-select:none;user-select:none;touch-action:none}.topo-minimap:active{cursor:grabbing}.topo-minimap:hover{opacity:1}.topo-rename-wrap{display:flex}.topo-rename-input{width:160px;padding:4px 6px;font-size:12px;background:#0d1428;color:var(--text);border:1px solid var(--accent);border-radius:6px;user-select:text;-webkit-user-select:text}.topo-editlink{position:absolute;top:12px;left:12px;z-index:30;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;box-shadow:0 8px 24px #00000080;min-width:250px}.topo-editlink h4{margin:0;font-size:13px}.topo-editlink-row{display:flex;align-items:center;gap:6px}.topo-editlink-row select{background-color:#0d1428;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px 22px 4px 6px;font-size:12px}.topo-editlink-side{font-weight:700;font-size:12px;width:18px}.topo-editlink-actions{display:flex;gap:8px}.topo-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#040812a8;display:flex;align-items:center;justify-content:center}.topo-modal{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px 16px;width:min(880px,94vw);max-height:86vh;overflow:auto;display:flex;flex-direction:column;gap:10px;box-shadow:0 18px 50px #0009}.topo-modal-head{display:flex;align-items:center;justify-content:space-between}.topo-modal-head h3{margin:0;font-size:15px}.topo-vlan-table{width:100%;border-collapse:collapse;font-size:12px}.topo-vlan-table th,.topo-vlan-table td{border:1px solid var(--border);padding:5px 8px;text-align:left}.topo-vlan-table th{background:#94a3b814}.topo-vlan-notes{list-style:none;margin:0 0 10px;padding:8px 10px;border:1px solid var(--border);border-left:3px solid #fbbf24;border-radius:8px;background:#fbbf240f;font-size:12.5px;color:var(--text);display:flex;flex-direction:column;gap:4px}.topo-vlan-member{display:inline-block;margin:1px 6px 1px 0;padding:1px 7px;background:#60a5fa1a;border-radius:999px;border:1px solid rgba(96,165,250,.3);font-size:11px}.topo-vlan-rsc summary{cursor:pointer;font-size:12px;color:var(--accent)}.topo-vlan-rsc pre{max-height:220px;overflow:auto;font-size:11px;line-height:1.45;background:#0a1022;border:1px solid var(--border);border-radius:8px;padding:10px;margin:8px 0 0;white-space:pre}.topo-modal-actions{display:flex;gap:8px;flex-wrap:wrap}.topo-vlan-result{font-size:12px;margin:0}.topo-vlan-empty{font-size:12.5px;margin:0;padding:8px 10px;border-radius:6px;color:var(--muted);background:#94a3b81a;border:1px solid var(--border)}.topo-vlan-error{color:var(--error)}.topo-help{width:min(740px,94vw)}.topo-help-body h4{margin:14px 0 6px;font-size:13px;color:var(--accent)}.topo-help-body h4:first-child{margin-top:0}.topo-help-body h4{display:flex;align-items:center;gap:8px}.topo-help-ico{width:15px;height:15px;flex:0 0 15px;object-fit:contain}.topo-help-glyph{width:15px;flex:0 0 15px;font-size:14px;line-height:1;text-align:center}.topo-help-zoom{display:flex;align-items:center;gap:2px;flex:none;margin-left:auto;margin-right:8px}.topo-help-zbtn,.topo-help-zpct{border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text);font-size:12.5px;font-weight:700;line-height:1.3;padding:1px 7px;cursor:pointer}.topo-help-zpct{min-width:54px;font-weight:600}.topo-help-zbtn:hover:not(:disabled),.topo-help-zpct:hover{color:var(--accent);border-color:var(--accent)}.topo-help-zbtn:disabled{opacity:.4;cursor:default}.topo-help-body{zoom:var(--help-zoom, 1);width:calc(100% / var(--help-zoom, 1))}.topo-help-body ol{margin:0;padding-left:20px;font-size:12.5px;line-height:1.65;color:var(--text)}.topo-help-body li{margin-bottom:4px}.topo-help-more{margin-top:14px;padding-top:10px;border-top:1px solid var(--border)}.topo-help-more h4{margin:0 0 6px}.topo-help-link{display:inline-block;font-size:12.5px;line-height:1.6;color:var(--accent);text-decoration:none;border-bottom:1px dashed rgba(56,189,248,.45)}.topo-help-link:hover,.topo-help-link:focus-visible{text-decoration:underline;border-bottom-color:transparent}.topo-slider-sep{width:1px;height:22px;background:var(--border)}.topo-slider-group{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.btn-reset{background:transparent;border:1px solid var(--border);color:var(--muted)}.btn-reset:hover{border-color:var(--accent);color:var(--text)}.topo-mode-toggle{display:inline-flex;gap:4px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:4px;margin:4px 0 12px}.topo-mode-toggle button{background:none;border:0;color:var(--muted);padding:8px 16px;border-radius:7px;cursor:pointer;font-size:14px;font-weight:600}.topo-mode-toggle button.active{background:var(--accent);color:#06231e}.topo-editor{display:grid;grid-template-columns:330px 1fr;gap:14px;align-items:start}.topo-links-panel,.topo-link-edit,.topo-quick{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px}.topo-quick{max-width:224px}.topo-panel-title{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.topo-link-list{list-style:none;display:flex;flex-direction:column;gap:4px;max-height:340px;overflow:auto}.topo-link-list li{display:flex;align-items:center;gap:4px;padding:4px;border-radius:8px;border:1px solid transparent}.topo-link-list li.active{border-color:var(--accent);background:#2dd4bf14}.topo-link-name{flex:1;display:flex;align-items:center;gap:6px;min-width:0;background:none;border:0;color:var(--text);cursor:pointer;font-size:13px;text-align:left;padding:4px 2px}.topo-link-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topo-link-badge{font-size:10px;color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:1px 5px;text-transform:uppercase;flex:0 0 auto}.topo-link-warn{font-size:10px;color:var(--error);flex:0 0 auto}.topo-icon-btn{background:none;border:1px solid var(--border);border-radius:6px;padding:3px 7px;cursor:pointer;font-size:12px;line-height:1.2;flex:0 0 auto}.topo-icon-btn:hover{border-color:var(--accent)}.topo-icon-btn.danger:hover{border-color:var(--error);color:var(--error)}.topo-add-row{display:flex;gap:6px;margin-top:8px}.topo-select{flex:0 0 auto}.topo-edit-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px}.topo-ok{color:var(--accent);font-size:12px;font-weight:700}.topo-warn{color:var(--error);font-size:12px;font-weight:700}.topo-type-chips{display:flex;gap:6px;margin:8px 0 12px;flex-wrap:wrap}.chip{padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:none;color:var(--muted);cursor:pointer;font-size:13px;font-weight:600}.chip:hover{color:var(--text);border-color:var(--accent)}.chip.active{background:var(--accent);color:#06231e;border-color:var(--accent)}.topo-type-big .chip{font-size:15px;padding:9px 20px}.topo-grid{display:flex;flex-direction:column;gap:6px;max-width:640px}.topo-router-row{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#0d1428;border:1px solid var(--border);border-radius:10px;flex-wrap:nowrap}.topo-router-name{display:flex;flex-direction:column;white-space:nowrap}.topo-router-id{font-weight:800;font-size:14px}.topo-router-full{font-size:10px;color:var(--muted)}.topo-ports{display:flex;flex-wrap:nowrap}.topo-grid-group{margin-top:4px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.topo-port{min-width:22px;padding:5px 2px;margin:2px;background:#101a33;border:1px solid var(--border);color:var(--text);border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;transition:border-color .12s,background .12s}.topo-port:hover{border-color:var(--accent)}.topo-port.busy{border-color:var(--error);color:var(--error);background:#f8717114}.topo-port.busy:hover{border-color:var(--error)}.topo-port.sel{background:var(--accent);border-color:var(--accent);color:#06231e}.topo-port.active{border-color:var(--accent);color:var(--accent);background:#2dd4bf26}.topo-hint{color:var(--muted);font-size:13px;margin:8px 0}.topo-hint.warn{color:var(--error)}.topo-muted{color:var(--muted);font-size:12px;margin-top:6px}.topo-hr{border:0;border-top:1px solid var(--border);margin:14px 0 10px}.topo-quick-links{list-style:none;display:flex;flex-direction:column;gap:4px;max-height:220px;overflow:auto;margin:8px 0 0;padding:0}.topo-quick-links li{display:flex;align-items:center;gap:6px;padding:3px 4px;border-radius:6px;font-size:13px}.topo-quick-links li:hover{background:#60a5fa14}.topo-quick-links .topo-link-label{flex:1;min-width:0}.topo-link-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.topo-list-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.topo-list-head .topo-panel-title{margin-bottom:0;min-width:0}.topo-vlan-toggle{flex:0 0 auto;min-width:24px;height:22px;padding:0 5px;font-size:12px;line-height:1;border-radius:6px;border:1px solid var(--border);background:#0d1428;color:var(--text);cursor:pointer}.topo-vlan-toggle:hover{border-color:var(--accent)}.topo-vlan-toggle.on{border-color:var(--accent);background:var(--accent);color:#06231e}.topo-vlan-wrap{margin-top:8px;overflow-x:auto}.topo-vlan-list{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11.5px}.topo-vlan-list th{text-align:left;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:2px 4px;border-bottom:1px solid var(--border)}.topo-vlan-list th:nth-child(1){width:46px}.topo-vlan-list th:nth-child(2){width:78px}.topo-vlan-list td{padding:3px 4px;vertical-align:top;border-bottom:1px solid rgba(37,49,79,.6);word-break:break-word}.topo-vlan-list tr:hover td{background:#60a5fa14}.topo-vlan-id{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.topo-vlan-id .topo-link-dot{width:8px;height:8px;display:inline-block;margin-right:4px}.topo-vlan-link{color:var(--text)}.topo-vlan-members{display:flex;flex-wrap:wrap;gap:3px}.topo-vlan-chip{font-size:10px;line-height:1.5;border:1px solid var(--border);border-radius:4px;padding:0 4px;color:var(--text);white-space:nowrap}.topo-intro{color:var(--text);font-size:13px;line-height:1.45;margin:2px 0 8px}.topo-intro+.topo-type-chips{margin-top:0}.topo-log{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:10px 12px}.topo-log-list{list-style:none;display:flex;flex-direction:column;gap:8px;max-height:460px;overflow:auto}.topo-log-list li{display:flex;flex-direction:column;gap:2px;border-bottom:1px dashed var(--border);padding:2px 0 7px}.topo-log-list li:last-child{border-bottom:0;padding-bottom:2px}.topo-log-meta{font-size:10.5px;color:var(--muted);letter-spacing:.2px;line-height:1.5}.topo-log-action{font-size:12.5px;color:var(--text)}.topo-log-topo{font-size:10.5px;color:var(--accent-dim);letter-spacing:.2px}.topo-quick-status{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.topo-graph-title{margin:2px 0 6px;font-size:16px}.topo-right>.topo-tb-wrap{margin-bottom:0}.topo-right>.topo-tb-wrap .topo-tb{border-radius:12px 12px 0 0}.topo-right>.topo-tb-wrap .topo-tb-opts{margin-top:0;padding:7px 9px;background:#0b1020eb;border:1px solid var(--border);border-top:0;border-bottom:0;border-radius:0}.topo-right .topo-graph-scroll{border-top:0;border-radius:0 0 12px 12px}.topo-graph-panel{position:relative;min-width:0}.topo-graph-scroll{overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:8px;height:min(65vh,720px);min-height:380px;scrollbar-gutter:stable}.topo-graph{display:block}.topo-canvas{display:block;width:100%;height:auto;touch-action:none}.topo-canvas{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.topo-title{display:flex;align-items:center;gap:10px}.topo-title-logo{height:24px;width:24px;display:block;flex:0 0 auto}.topo-popup-bg{fill:#0d1428;stroke:#25314f;stroke-width:1}.topo-popup-title{fill:var(--text);font-size:12px;font-weight:700}.topo-popup-hr{stroke:#25314f;stroke-width:1}.topo-popup-item{fill:#8fa3c0;font-size:11px;cursor:pointer;-webkit-user-select:none;user-select:none}.topo-popup-item:hover{fill:#2dd4bf}.topo-popup-item.busy,.topo-popup-item.busy:hover{fill:#f87171}.topo-popup-term{cursor:pointer}.topo-popup-term-txt{fill:#cbd5e1;font-size:11.5px;font-weight:600;-webkit-user-select:none;user-select:none}.topo-popup-term:hover .topo-popup-term-txt{fill:#2dd4bf}.topo-popup-term.denied{cursor:not-allowed}.topo-popup-term.denied .topo-popup-term-txt,.topo-popup-term.denied:hover .topo-popup-term-txt{fill:#5b6b85}.topo-popup-pw{cursor:pointer}.topo-popup-pw-bg{fill:#94a3b81f;stroke:#64748b;stroke-width:1;transition:fill .12s ease,stroke .12s ease}.topo-popup-pw-ico{fill:#cbd5e1;font-size:10px;font-weight:700;-webkit-user-select:none;user-select:none;pointer-events:none}.topo-popup-pw[data-topo=ctx-power-start] .topo-popup-pw-bg{stroke:#34d399}.topo-popup-pw[data-topo=ctx-power-start] .topo-popup-pw-ico{fill:#34d399}.topo-popup-pw[data-topo=ctx-power-stop] .topo-popup-pw-bg{stroke:#f87171}.topo-popup-pw[data-topo=ctx-power-stop] .topo-popup-pw-ico{fill:#f87171}.topo-popup-pw[data-topo=ctx-power-reboot] .topo-popup-pw-bg{stroke:#60a5fa}.topo-popup-pw[data-topo=ctx-power-reboot] .topo-popup-pw-ico{fill:#60a5fa}.topo-popup-pw:hover .topo-popup-pw-bg{fill:#94a3b859}.topo-popup-pw[data-topo=ctx-power-start]:hover .topo-popup-pw-bg{fill:#34d399}.topo-popup-pw[data-topo=ctx-power-stop]:hover .topo-popup-pw-bg{fill:#f87171}.topo-popup-pw[data-topo=ctx-power-reboot]:hover .topo-popup-pw-bg{fill:#60a5fa}.topo-popup-pw:hover .topo-popup-pw-ico{fill:#0d1428}.topo-popup-pw.off{cursor:not-allowed;opacity:.32}.topo-popup-pw.off:hover .topo-popup-pw-bg{fill:#94a3b81f}.topo-popup-pw.off:hover .topo-popup-pw-ico{fill:#cbd5e1}.topo-popup-pw.pending{animation:topo-pw-pulse .9s ease-in-out infinite}@keyframes topo-pw-pulse{0%,to{opacity:1}50%{opacity:.35}}.topo-popup-pw-n{pointer-events:none}.topo-popup-pw-nbg{fill:#0d1428;stroke:#64748b;stroke-width:.8}.topo-popup-pw-nt{fill:#e2e8f0;font-size:7px;font-weight:700;-webkit-user-select:none;user-select:none}.topo-popup-pw[data-topo=ctx-power-start] .topo-popup-pw-nbg{stroke:#34d399}.topo-popup-pw[data-topo=ctx-power-stop] .topo-popup-pw-nbg{stroke:#f87171}.topo-popup-pw[data-topo=ctx-power-reboot] .topo-popup-pw-nbg{stroke:#60a5fa}.topo-popup-pw.off .topo-popup-pw-n{opacity:.5}.topo-obj-pending{animation:topo-pw-pulse .9s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.topo-obj-pending{animation:none;opacity:.55}}.topo-popup-title-scroll{animation-name:topo-title-marquee;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes topo-title-marquee{0%,12%{transform:translate(0)}45%,55%{transform:translate(var(--topo-title-shift, 0))}88%,to{transform:translate(0)}}.topo-popup-del{cursor:pointer}.topo-popup-del-bg{fill:#f871711f;stroke:#f87171;stroke-width:1;transition:fill .12s ease}.topo-popup-del-x{stroke:#f87171;stroke-width:1.8;stroke-linecap:round;fill:none;pointer-events:none}.topo-popup-del:hover .topo-popup-del-bg{fill:#f87171}.topo-popup-del:hover .topo-popup-del-x{stroke:#0d1428}.topo-canvas-link{font-size:12px;font-weight:700;pointer-events:none}.topo-canvas-vlan{font-weight:700;paint-order:stroke;stroke:#050a16bf;stroke-width:2.6px;stroke-linejoin:round}.topo-canvas-port{font-size:10px;font-weight:700;pointer-events:none}.topo-edge{stroke:#3b4a6b;stroke-width:1.5}.topo-edge-back{stroke:#a78bfa;stroke-dasharray:5 4;opacity:.75}.topo-edge-back-label{fill:#a78bfa;font-size:11px}.topo-node-label{font-size:13px;font-weight:700}.topo-node-sub{font-size:9px;fill:#8fa3c0;letter-spacing:1px}.topo-port-label{font-size:10px;fill:#8fa3c0;font-weight:700}.topo-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:var(--card);border:1px solid var(--accent);color:var(--text);padding:10px 18px;border-radius:10px;font-size:13px;z-index:100;box-shadow:0 10px 30px #0006;display:flex;align-items:flex-start;gap:10px;max-width:min(92vw,720px);max-width:90vw;text-align:center}.topo-tb-wrap{margin:0 0 10px}.topo-tb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:7px 9px;background:#0b1020eb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border);border-radius:12px;position:relative;z-index:50}.topo-tb-opts{position:relative;z-index:49}.topo-tb-sep{width:1px;align-self:stretch;min-height:20px;background:var(--border);margin:0 2px;flex:0 0 auto}.topo-tb-grow{flex:1 1 auto}.topo-tb-btn{background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:8px;min-width:30px;height:30px;font-size:14px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 6px;flex:0 0 auto}.topo-tb-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.topo-tb-btn:disabled{opacity:.4;cursor:not-allowed}.topo-tb-btn.on{border-color:var(--accent);color:#06231e;background:var(--accent)}.topo-tb-btn.done{opacity:.55;cursor:default;color:#22c55e;border-color:#22c55e}.topo-tb-vlan{font-size:15px}.topo-tb-rocket{font-size:15px;line-height:1}.topo-tb-rocket:not(.on){color:var(--muted);border-color:var(--border);background:transparent;opacity:.5;filter:grayscale(1)}.topo-tb-rocket:not(.on):hover:not(:disabled){opacity:.8;color:var(--text);filter:grayscale(.6)}.topo-tb-rocket.on{border-color:var(--accent);background:#2dd4bf29}.topo-tb-rocket.on.done{border-color:#22c55e;background:#22c55e1f}.topo-tb-rocket.busy{animation:topo-rocket-pulse 1.1s ease-in-out infinite}@keyframes topo-rocket-pulse{0%,to{opacity:1}50%{opacity:.45}}.topo-tb-btn svg{display:block}.topo-tb-btn-wide{padding:0 9px}.topo-tb-btn-txt{font-size:11.5px;font-weight:600;white-space:nowrap}.topo-tb-add{gap:3px}.topo-tb-add-glyph{font-size:19px;line-height:1;font-weight:700;color:var(--accent)}.topo-tb-add .topo-tb-caret{font-size:10px;opacity:.8;color:var(--text)}.topo-tb-glyph{font-size:19px;line-height:1}.topo-tb-sign{flex:0 0 auto;margin-left:2px}.topo-tb-sign.plus{color:var(--accent)}.topo-tb-sign.minus{color:var(--error)}.topo-tb-item:disabled .topo-tb-sign,.topo-tb-item.off .topo-tb-sign{opacity:.5}.topo-tb-drop{position:relative;flex:0 0 auto}.topo-tb-caret{font-size:11px;opacity:.85}.topo-add-menu{min-width:296px}.topo-add-menu .topo-tb-item{white-space:nowrap}.topo-link-menu{min-width:296px}.topo-link-menu .topo-tb-item{white-space:nowrap}.topo-tb-portrow{display:flex;align-items:center;gap:4px;padding:5px 8px;border-radius:8px;cursor:default}.topo-tb-portrow-go{flex:1 1 auto;min-width:0;background:none;border:0;padding:0;font:inherit;color:var(--text);text-align:left;cursor:pointer;border-radius:6px}.topo-tb-portrow-go:hover:not(:disabled){color:var(--accent)}.topo-tb-portrow-go:disabled{opacity:.45;cursor:not-allowed}.topo-tb-stepper{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto;border:1px solid var(--border);border-radius:7px;padding:1px 2px;background:#0b1224}.topo-tb-step{width:18px;height:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;background:none;border:0;border-radius:5px;color:var(--muted);font-size:14px;font-weight:700;cursor:pointer}.topo-tb-step:hover:not(:disabled){background:#1e293b;color:var(--text)}.topo-tb-step:disabled{opacity:.35;cursor:not-allowed}.topo-tb-stepper-val{min-width:14px;text-align:center;font-size:12.5px;font-weight:800;color:var(--accent)}.topo-tb-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:200px;background:#0d1428;border:1px solid var(--border);border-radius:10px;padding:5px;z-index:40;box-shadow:0 14px 34px #00000080;display:flex;flex-direction:column;gap:2px}.topo-tb-item{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;color:var(--text);font-size:13px;text-align:left;padding:6px 8px;border-radius:7px;cursor:pointer}.topo-tb-item:hover:not(:disabled){background:#60a5fa24}.topo-tb-item.on{background:#2dd4bf2e;color:var(--accent);font-weight:700}.topo-tb-item.off,.topo-tb-item:disabled{opacity:.38;cursor:not-allowed}.topo-tb-item.off .topo-tb-obj,.topo-tb-item:disabled .topo-tb-obj{filter:grayscale(1)}.topo-tb-obj{width:20px;height:15px;object-fit:contain;flex:0 0 auto}.topo-tb-obj.off{filter:grayscale(1);opacity:.6}.topo-tb-obj-gap{width:20px;height:15px;flex:0 0 auto}.topo-tb-item-all{font-weight:700}.topo-tb-count{margin-left:auto;font-size:10.5px;color:var(--muted);font-weight:700}.topo-tb-hr{height:1px;background:var(--border);margin:4px 2px}.topo-tb-empty{font-size:12px;color:var(--muted);padding:6px 8px}.topo-tb-seg{display:flex;gap:3px;background:#0d1428;border:1px solid var(--border);border-radius:9px;padding:3px;flex:0 0 auto}.topo-tb-seg button{border:0;background:none;color:var(--muted);font-size:12px;font-weight:700;padding:5px 11px;border-radius:7px;cursor:pointer}.topo-tb-seg button:hover:not(:disabled){color:var(--text)}.topo-tb-seg button.active{background:var(--accent);color:#06231e}.topo-tb-seg button:disabled{opacity:.45;cursor:not-allowed}.topo-link-seg{display:flex;width:100%;gap:3px;background:none;border:0;border-radius:0;padding:0;margin:0 0 2px}.topo-link-seg button{flex:1 1 0;padding:5px 6px}.topo-tb-ltype{display:inline-flex;align-items:center;justify-content:center;width:36px;flex:0 0 auto}.topo-tb-ltype-glyph{font-size:10.5px;font-weight:700;line-height:1;white-space:nowrap;letter-spacing:-.2px;color:var(--accent)}.topo-tb-menu-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.topo-tab{flex:0 0 auto;background:none;border:1px solid var(--border);color:var(--muted);border-radius:7px;padding:3px 8px;font-size:11px;line-height:1.3;font-weight:600;white-space:nowrap;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.topo-tab:hover{color:var(--text);border-color:var(--accent)}.topo-tab.active{background:var(--accent);color:#06231e;border-color:var(--accent)}.topo-tb-tabsrow .topo-tb-drop{margin-left:10px}.topo-btn-default{width:auto;padding:3px 7px;font-size:11px;line-height:1.3;font-weight:600;background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:7px;white-space:nowrap}.topo-btn-default:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.topo-btn-default:disabled{opacity:.45;cursor:not-allowed}.topo-btn-default.clean{opacity:.65}.topo-btn-default.clean:hover:not(:disabled){opacity:1}.topo-tb-defaults .btn-reset{padding:4px 9px;font-size:11.5px;border-radius:7px}.topo-tb-tabsrow .btn-reset{padding:3px 7px;font-size:11px;line-height:1.3;border-radius:7px;white-space:nowrap;flex:0 0 auto}.topo-tb-tabsrow .btn-reset .topo-btn-lbl-long,.topo-btn-default .topo-btn-lbl-long{display:none}.topo-tb-tabsrow .btn-reset .topo-btn-lbl-short,.topo-btn-default .topo-btn-lbl-short{display:inline}@media (min-width: 1500px){.topo-page:not(.topo-page-compact) .topo-tb-tabsrow .btn-reset .topo-btn-lbl-long,.topo-page:not(.topo-page-compact) .topo-btn-default .topo-btn-lbl-long{display:inline}.topo-page:not(.topo-page-compact) .topo-tb-tabsrow .btn-reset .topo-btn-lbl-short,.topo-page:not(.topo-page-compact) .topo-btn-default .topo-btn-lbl-short{display:none}}.topo-default-menu{left:auto;right:calc(100% + 6px);min-width:216px}.topo-default-menu .topo-tb-item{white-space:nowrap}.topo-tb-search{position:relative;display:flex;align-items:center;background:#0d1428;border:1px solid var(--border);border-radius:8px;height:30px;padding:0 6px;gap:4px;min-width:46px;flex:0 1 64px}.topo-tb-search:focus-within{border-color:var(--accent)}.topo-tb-search-ico{font-size:10px;opacity:.7;flex:0 0 auto}.topo-tb-search input{background:none;border:0;outline:none;color:var(--text);font-size:12.5px;width:100%;min-width:0}.topo-search-menu{left:0;min-width:240px;max-height:260px;overflow:auto}.topo-view-menu{min-width:300px}.topo-view-menu .topo-tb-item{white-space:nowrap}.topo-tb-search-wide{flex:1 1 100%;width:100%;min-width:0}.topo-export-menu{min-width:300px}.topo-export-menu .topo-tb-item{white-space:nowrap}.topo-ops-menu{min-width:336px}.topo-ops-menu .topo-tb-item{white-space:nowrap}.topo-view-menu,.topo-export-menu,.topo-ops-menu{left:auto;right:0}.topo-tb-item .topo-tb-glyph{font-size:15px;width:14px;flex:0 0 14px;text-align:center}.topo-ops-rocket:not(.on){opacity:.6}.topo-ops-rocket.on{background:#2dd4bf29}.topo-ops-rocket.on.done{background:#22c55e1f}.topo-ops-rocket.on.done .topo-tb-count{color:#22c55e}.topo-ops-rocket.busy{animation:topo-rocket-pulse 1.1s ease-in-out infinite}.topo-tb-btn.on .topo-tb-ico{filter:brightness(0) opacity(.85)}.topo-tb-ico-gallery,.topo-tb-ico-check{width:16px;height:16px}.topo-tb-opts{margin-top:6px;padding:7px 9px;background:#0b1020d9;border:1px solid var(--border);border-radius:10px}.topo-tb-opts .topo-menu-group{padding:0;gap:8px 12px}.topo-tb-opts .topo-tb-tabsrow{gap:3px 4px}.topo-tb-opts-body{position:relative}.topo-tb-opts .topo-slider input[type=range]{width:86px}.topo-text-menu{top:30px;left:0;right:auto;width:336px;max-width:min(336px,calc(100vw - 28px));gap:5px;padding:8px 9px 9px}.topo-text-menu-title{font-size:11.5px;font-weight:800;color:var(--accent);letter-spacing:.02em;padding:1px 2px 3px}.topo-text-menu .topo-slider{display:flex;align-items:center;gap:8px;width:100%;flex-wrap:nowrap}.topo-text-menu .topo-slider-lbl{flex:0 0 132px;text-align:left;justify-content:flex-start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topo-text-menu .topo-slider input[type=range]{flex:1 1 auto;width:auto;min-width:0}.topo-text-menu .topo-slider-val{flex:0 0 42px;text-align:right}.topo-btn-textsizes{display:inline-flex;align-items:center;gap:4px}.topo-btn-textsizes .topo-btn-lbl-long{display:none}.topo-btn-textsizes .topo-btn-lbl-short{display:inline}@media (min-width: 1500px){.topo-page:not(.topo-page-compact) .topo-btn-textsizes .topo-btn-lbl-long{display:inline}.topo-page:not(.topo-page-compact) .topo-btn-textsizes .topo-btn-lbl-short{display:none}}.topo-pip-tools .topo-text-menu{max-width:100%}.topo-tb-opts .chip{flex:0 0 auto}.topo-slider-tb input[type=range]{width:96px}.topo-slider-tb img{width:16px;height:12px;object-fit:contain}.topo-tb-ico{width:15px;height:15px;object-fit:contain;display:block}.topo-menu-ico{width:14px;height:14px;flex:0 0 14px;opacity:.92}.topo-tb-ico-link{width:19px;height:19px}.topo-editlink-fixed{font-size:12.5px;color:var(--text)}.topo-editlink-fixed.muted{color:var(--muted);font-size:11.5px}.topo-vpc-img{pointer-events:all}.topo-obj-img.off,.topo-vpc-img.off,.topo-cloud-img.off{filter:grayscale(1) brightness(.8)}.topo-page-compact{padding:0;margin:0;height:100%;display:flex;flex-direction:column;min-height:0}.topo-page-compact .topo-main{flex:1 1 auto;min-height:0;display:grid;gap:0}.topo-page-compact .topo-right{display:flex;flex-direction:column;min-height:0;min-width:0;height:100%}.topo-page-compact .topo-graph-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.topo-page-compact .topo-graph-scroll{flex:1 1 auto;height:auto;min-height:0;padding:4px;border-radius:8px}.topo-page-compact .topo-tb{gap:4px;padding:5px 6px;border-radius:9px;border:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none}.topo-page-compact .topo-tb-btn{height:26px;min-width:26px;font-size:12px}.topo-page-compact .topo-tb-add{height:28px;font-size:13px;padding:0 10px}.topo-page-compact .topo-tb-seg button{padding:4px 8px;font-size:11px}.topo-page-compact .topo-tb-ltype{width:32px}.topo-page-compact .topo-tb-ltype-glyph{font-size:9.5px}.topo-page-compact .topo-slider-tb input[type=range]{width:70px}.topo-page-compact .topo-tb-opts{margin-top:4px;padding:5px 6px}.topo-page-compact .topo-works{right:10px;bottom:10px;font-size:11px;padding:2px 8px}.topo-page-compact .topo-muted{display:none}.topo-page-compact .topo-minimap{transform:scale(.8);transform-origin:bottom right}.topo-pip-canvas{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.topo-pip-canvas .topo-page,.topo-pipwin-body .topo-page{height:100%}.topo-pip{position:fixed;z-index:9990;background:#0b1020;border:1px solid var(--accent);border-radius:10px;box-shadow:0 18px 44px #0000008c;display:flex;flex-direction:column;overflow:hidden}.topo-pip:fullscreen,.topo-pip.css-fs{left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border:0;border-radius:0;border-color:var(--border);--topo-pip-h: 100vh}@supports (height: 100dvh){.topo-pip:fullscreen,.topo-pip.css-fs{--topo-pip-h: 100dvh}}.topo-pip:fullscreen .topo-pip-corner,.topo-pip:fullscreen .topo-pip-edge,.topo-pip.css-fs .topo-pip-corner,.topo-pip.css-fs .topo-pip-edge{display:none}.topo-pip:fullscreen .topo-pip-head,.topo-pip.css-fs .topo-pip-head{cursor:default}.topo-pip-head{display:flex;align-items:flex-start;gap:8px;min-height:26px;padding:4px 20px;background:#0d1428;border-bottom:1px solid var(--border);cursor:move;user-select:none;touch-action:none;-webkit-user-select:none;-webkit-touch-callout:none;flex:0 0 auto;flex-wrap:nowrap;position:relative;z-index:6}.topo-pip-actions{margin-left:auto;display:inline-flex;align-items:flex-start;gap:3px;flex:0 0 auto}.topo-pip-btn{background:none;border:1px solid transparent;color:var(--muted);border-radius:5px;min-width:22px;height:20px;font-size:12px;padding:0 3px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.topo-pip-btn:hover{color:var(--accent);border-color:var(--accent)}.topo-pip-btn.on{background:var(--accent);color:#06231e;border-color:var(--accent)}.min-glyph{display:block;transform:translateY(-3px);font-weight:700;line-height:1}.topo-pip-tools{flex:0 0 auto;min-width:0;cursor:default;-webkit-user-select:auto;user-select:auto;background:#0d1428;border-bottom:1px solid var(--border);position:relative;z-index:6}.topo-pip-tools .topo-tb-wrap{margin:0}.topo-pip-tools.hidden{display:none}.topo-pip-tools .topo-tb{gap:4px;padding:0;border:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0}.topo-pip-tools .topo-tb{gap:3px;padding:0 6px 4px}.topo-pip-tools .topo-tb-btn{height:24px;min-width:24px;font-size:11.5px;padding:0 4px}.topo-pip-tools .topo-tb-add{height:25px;font-size:12px;padding:0 7px}.topo-pip-tools .topo-tb-seg{padding:2px}.topo-pip-tools .topo-tb-seg button{padding:3px 7px;font-size:11px}.topo-pip-tools .topo-link-seg{padding:0}.topo-pip-tools .topo-tb-ltype{width:32px}.topo-pip-tools .topo-tb-ltype-glyph{font-size:9.5px}.topo-pip-tools .topo-tb-sep{margin:0 1px;min-height:18px}.topo-pip-tools .topo-tb-search{height:24px;padding:0 4px}.topo-pip-tools .topo-slider-tb{gap:3px}.topo-pip-tools .topo-slider-tb input[type=range]{width:56px}.topo-pip-tools .topo-slider-val{font-size:9.5px}.topo-pip-tools .topo-tb-opts{margin-top:3px;padding:0}.topo-pip-tools .topo-btn-default,.topo-pip-tools .topo-tb-defaults .btn-reset{padding:3px 7px;font-size:10.5px}.topo-pip-tools .topo-tab,.topo-page-compact .topo-tab{padding:2px 7px;font-size:10.5px}.topo-pip-tools .topo-tb-menu{max-height:calc(var(--topo-pip-h, 430px) - 74px);overflow-y:auto}.topo-pip-title{font-size:11.5px;font-weight:700;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 0 auto;align-self:flex-start;padding-top:5px;display:inline-flex;align-items:center;gap:5px}.topo-pip-logo{height:15px;width:15px;display:block;flex:0 0 auto}.topo-pip-close{background:none;border:0;color:var(--muted);font-size:13px;cursor:pointer;padding:3px 2px 0;min-width:22px;height:20px;line-height:1}.topo-pip-close:hover{color:var(--error)}.topo-pip-body{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.topo-pip-svg{width:100%;height:100%;display:block;background:transparent}.topo-pip-link{font-size:11px;font-weight:700}.topo-pip-node{font-size:11px;font-weight:700;fill:#cbd5e1}.topo-pip-empty{color:var(--muted);font-size:12px;padding:12px}.topo-pip-hint{position:absolute;bottom:4px;left:6px;right:6px;font-size:9.5px;color:var(--muted);opacity:.55;pointer-events:none;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topo-pip-corner{position:absolute;width:16px;height:16px;z-index:8;touch-action:none}.topo-pip-corner.nw{left:2px;top:2px;cursor:nwse-resize}.topo-pip-corner.ne{right:2px;top:2px;cursor:nesw-resize}.topo-pip-corner.sw{left:2px;bottom:2px;cursor:nesw-resize}.topo-pip-corner.se{right:2px;bottom:2px;cursor:nwse-resize}.topo-pip-edge{position:absolute;z-index:7;touch-action:none}.topo-pip-edge.n{left:20px;right:20px;top:0;height:6px;cursor:ns-resize}.topo-pip-edge.s{left:20px;right:20px;bottom:0;height:6px;cursor:ns-resize}.topo-pip-edge.w{top:20px;bottom:20px;left:0;width:6px;cursor:ew-resize}.topo-pip-edge.e{top:20px;bottom:20px;right:0;width:6px;cursor:ew-resize}.topo-pipwin{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:#0b1020}.topo-pipwin-tb{display:flex;align-items:flex-start;gap:8px;padding:6px 10px;background:#0d1428;border-bottom:1px solid var(--border);flex-wrap:nowrap;position:relative;z-index:6}.topo-pipwin-actions{margin-left:auto;display:inline-flex;align-items:flex-start;gap:6px;flex:0 0 auto}.topo-pipwin-tools{flex:0 0 auto;min-width:0;padding:0 10px;background:#0d1428;border-bottom:1px solid var(--border);position:relative;z-index:6}.topo-pipwin-tools .topo-tb-wrap{margin:0}.topo-pipwin-tools.hidden{display:none}.topo-pipwin-tools .topo-tb{gap:5px;padding:0 0 6px;border:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0}.topo-pip-name{color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topo-pip-title,.topo-pipwin-title{min-width:0;flex:0 1 auto}.topo-pipwin-title{font-size:13px;font-weight:700;color:var(--text);align-self:flex-start;padding-top:3px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topo-pipwin-logo{height:20px;width:20px;display:block;flex:0 0 auto}.topo-pipwin-tb button{background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:7px;min-width:28px;height:28px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.topo-pipwin-tb button:hover{border-color:var(--accent);color:var(--accent)}.topo-pipwin-tb button.on{background:var(--accent);color:#06231e}.topo-pipwin-body{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.topo-pipwin-body .topo-pip-svg{width:100%;height:100%}.topo-pipwin-floatx{position:absolute;top:6px;right:8px;z-index:8;width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:#0d1428d9;color:var(--text);font-size:15px;line-height:1;cursor:pointer;opacity:.5;transition:opacity .15s ease,color .15s ease,border-color .15s ease}.topo-pipwin-floatx:hover{opacity:1;color:var(--error);border-color:var(--error)}@media (max-width: 720px){.topo-editor{grid-template-columns:1fr}.topo-quick{max-width:none}.topo-vlan-list{font-size:12px}.topo-vlan-list th:nth-child(1){width:56px}.topo-vlan-list th:nth-child(2){width:96px}.topo-port{min-width:34px;padding:5px 3px}.topo-toolbar .topo-select{width:100%}.topo-main{grid-template-columns:1fr!important}.topo-slider input[type=range]{width:90px}.topo-tb{gap:5px;padding:6px}.topo-tb-btn-txt{display:none}.topo-tb-search{flex:0 1 70px}.topo-tb-menu{min-width:176px;max-width:min(78vw,260px)}.topo-link-menu .topo-tb-item,.topo-view-menu .topo-tb-item,.topo-export-menu .topo-tb-item,.topo-ops-menu .topo-tb-item{white-space:normal}.topo-view-menu,.topo-export-menu,.topo-ops-menu{min-width:0}.topo-link-menu .topo-tb-portrow{flex-wrap:wrap;row-gap:3px}.topo-link-menu .topo-tb-portrow-go{flex:1 1 100%}.topo-slider-tb input[type=range]{width:74px}.topo-pip{max-width:96vw}.topo-pip-head{padding:4px 24px}.topo-pip-btn,.topo-pip-close{min-width:26px;height:24px;font-size:13px}.topo-pip-corner{width:22px;height:22px}.topo-pip-edge.n,.topo-pip-edge.s{left:26px;right:26px;height:10px}.topo-pip-edge.w,.topo-pip-edge.e{top:26px;bottom:26px;width:10px}}.topo-toast-txt{flex:1;min-width:0;overflow-wrap:anywhere}.topo-toast-x{flex:0 0 auto;background:none;border:1px solid var(--border);color:var(--muted);border-radius:6px;padding:1px 7px;cursor:pointer;font-size:12px;line-height:1.5}.topo-toast-x:hover{border-color:var(--error);color:var(--error)}.topo-port.mgmt:not(.sel):not(.busy):not(.active){border-style:dashed;border-color:#64748b;color:#94a3b8;background:transparent}.topo-port.mgmt:not(.sel):not(.busy):not(.active):hover{border-color:var(--error);color:var(--error)}.topo-vlan-errors{list-style:none;margin:0 0 10px;padding:8px 10px;border:1px solid var(--error);border-radius:8px;background:#f8717114;color:var(--error);font-size:12.5px;display:flex;flex-direction:column;gap:5px}@media (prefers-color-scheme: light){.topo-title-logo,.topo-pip-logo,.topo-pipwin-logo{content:url(/topo-logo-dark.svg)}}.topo-vis{width:min(560px,94vw)}.topo-vis-body{display:flex;flex-direction:column;gap:10px}.topo-vis-row{display:flex;align-items:center;gap:10px}.topo-vis-row .topo-name-input{flex:1 1 auto;min-width:0}.topo-vis-lbl{min-width:84px;font-size:12.5px;color:var(--muted)}.topo-vis-radios{display:flex;gap:6px;flex-wrap:wrap}.topo-vis-radio{background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:999px;padding:5px 12px;font-size:12.5px;font-family:inherit;cursor:pointer}.topo-vis-radio:hover:not(:disabled){border-color:var(--accent)}.topo-vis-radio.on{border-color:var(--accent);color:var(--accent);background:#2dd4bf24;font-weight:700}.topo-vis-hint{margin:0;font-size:11.5px;color:var(--muted);line-height:1.45}.topo-vis-sub{font-size:12.5px;font-weight:700;margin-top:2px}.topo-vis-groups{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:220px;overflow:auto}.topo-vis-group{display:flex;align-items:center;gap:6px;padding:4px 6px;border:1px solid var(--border);border-radius:8px}.topo-vis-group.on{border-color:var(--accent);background:#2dd4bf14}.topo-vis-check{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0;cursor:pointer}.topo-vis-check input[type=checkbox]{accent-color:var(--accent)}.topo-vis-gname{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topo-vis-gmeta{margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap}.topo-vis-rename{font:inherit;font-size:12.5px;background:#0d1428;color:var(--text);border:1px solid var(--accent);border-radius:6px;padding:2px 6px;min-width:0;flex:1 1 auto}.topo-vis-ico{width:26px;height:26px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:#0d1428;border:1px solid var(--border);border-radius:7px;color:var(--muted);font-size:12px;cursor:pointer}.topo-vis-ico:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.topo-vis-ico.on{border-color:var(--accent);color:var(--accent);background:#2dd4bf29}.topo-vis-ico.danger:hover:not(:disabled){border-color:var(--error);color:var(--error)}.topo-vis-ico:disabled{opacity:.35;cursor:not-allowed}.topo-vis-add{display:flex;gap:6px;align-items:center}.topo-vis-add .topo-name-input{flex:1 1 auto;min-width:0;padding:6px 10px;font-size:13px}.topo-vis-err{color:var(--error);font-size:12px}.topo-vis-foot{display:flex;gap:8px;justify-content:flex-end;margin-top:2px}.topo-vis-submit{border-color:var(--accent);background:var(--accent);color:#06231e;font-weight:700}.topo-vis-submit:disabled{opacity:.6}.topo-tb-item.no-perm .topo-tb-glyph{position:relative;display:inline-block}.topo-tb-item.no-perm .topo-tb-glyph:after{content:"";position:absolute;left:-2px;right:-2px;top:50%;height:2px;border-radius:2px;background:var(--error);transform:rotate(-45deg);box-shadow:0 0 0 1px #0408128c}.editor-page{padding:10px 14px 14px}.editor-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.editor-title{font-size:14px;color:var(--text)}.editor-spacer{flex:1 1 auto}.editor-dirty{border-color:#f59e0b;color:#f59e0b}.editor-msg{font-size:12px;color:var(--muted);margin:0 0 8px}.editor-msg.err{color:#ef4444}.editor-body{display:grid;grid-template-columns:230px minmax(0,1fr);gap:10px;height:calc(100vh - 175px);min-height:460px}.editor-canvas{position:relative;min-width:0;height:100%;background:#1a1d22;border:1px solid var(--border);border-radius:10px;overflow:hidden}.editor-canvas .gjs-cv-canvas{overflow:auto}.editor-list{display:flex;flex-direction:column;gap:6px;min-height:0;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:6px}.editor-filter{width:100%;padding:6px 8px;font-size:12px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px}.editor-list-scroll{overflow-y:auto;min-height:0;flex:1 1 auto}.editor-item{display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:5px 7px;font-size:12px;color:var(--text);background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer}.editor-item:hover{background:#94a3b81a}.editor-item.active{border-color:var(--accent);background:#2dd4bf1f}.editor-item-n{flex:0 0 34px;color:var(--muted);font-variant-numeric:tabular-nums}.editor-item-t{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-item-m{flex:0 0 auto;font-size:10px;color:var(--muted)}.editor-empty{font-size:12px;padding:8px}.editor-canvas .gjs-editor{height:100%}.editor-canvas .gjs-pn-panel{background:#23262d}.editor-canvas .gjs-pn-btn{color:#e5e7eb}.editor-canvas .gjs-pn-btn.gjs-pn-active{color:#2dd4bf}.editor-canvas .gjs-blocks-c,.editor-canvas .gjs-sm-sectors,.editor-canvas .gjs-pn-views-container{background:#23262d}.editor-canvas .editor-blocks{padding:8px 8px 4px;border-bottom:1px solid var(--border);max-height:42%;overflow-y:auto}.editor-canvas .editor-blocks .gjs-block{min-height:auto;padding:10px 8px;font-size:11.5px;border-radius:6px}@media (max-width: 1100px){.editor-canvas .gjs-pn-views-container{display:none}}@media (max-width: 720px){.editor-body{grid-template-columns:1fr;height:auto}.editor-list{max-height:180px}.editor-canvas{height:60vh}}.course-strip-wrap{position:relative;margin-top:18px}.course-strip-wrap:focus{outline:none}.course-strip-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:14px}.course-strip-view{overflow:hidden;touch-action:pan-y}.course-strip{display:flex;align-items:stretch;will-change:transform;transition:transform .35s cubic-bezier(.22,.61,.36,1)}.course-strip>.course-card{flex:0 0 var(--course-card-w, 320px);width:var(--course-card-w, 320px);min-width:0}.course-pager{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px}.course-nav{background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:8px;min-width:34px;height:30px;font-size:16px;line-height:1;padding:0 0 2px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.course-nav:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.course-nav:disabled{opacity:.35;cursor:default}.course-pager-pos{font-size:12px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.course-card{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s,transform .1s}.course-card:hover{border-color:var(--accent);transform:translateY(-2px)}.course-card-media{aspect-ratio:16 / 9;background:#0d1428;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;text-decoration:none;color:inherit;position:relative}.course-card-media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#2dd4bf00;transition:background .15s;pointer-events:none}.course-card-media:hover:after{background:#2dd4bf24}.course-card-media img{width:100%;height:100%;object-fit:cover;opacity:.85}.course-card-media.grad{background:linear-gradient(135deg,#1e3a5f,#0d1428 70%)}.course-card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1}.course-card-body h3{font-size:16px}.course-card-body .muted{font-size:13px;line-height:1.5}.course-card-chips{display:flex;gap:6px;flex-wrap:wrap}.course-card-chips .chip{padding:3px 10px;border:1px solid var(--border);border-radius:999px;font-size:11px;color:var(--muted);background:#94a3b80f}.course-open{margin-top:auto;align-self:flex-start}.cv{min-width:0}.cv-head{margin-bottom:12px}.cv-head-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cv-head-top h2{font-size:21px;margin:0}.cv-back{color:var(--accent);text-decoration:none;font-size:13px;white-space:nowrap;padding:4px 10px;border:1px solid var(--border);border-radius:8px}.cv-back:hover{border-color:var(--accent)}.cv-count{font-size:11px;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:2px 9px}.cv-progress{height:4px;background:var(--border);border-radius:999px;margin-top:12px;overflow:hidden}.cv-progress-bar{height:100%;background:var(--accent);border-radius:999px;transition:width .25s ease}.cv-body{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}.cv-toc{position:sticky;top:10px;max-height:calc(100vh - 130px);overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:10px 8px}.cv-toc h3{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);padding:2px 8px 8px}.cv-toc-nav{display:flex;flex-direction:column;gap:1px}.cv-toc-link{display:flex;gap:8px;align-items:baseline;padding:5px 8px;border-radius:7px;color:var(--muted);text-decoration:none;font-size:12px;line-height:1.35}.cv-toc-link.active{background:#2dd4bf1f;color:var(--accent);font-weight:700}.cv-toc-n{flex:0 0 auto;font-size:10px;font-weight:800;color:var(--accent);opacity:.7}.cv-toc-title{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.cv-toolbar{position:sticky;top:0;z-index:30;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;margin-bottom:12px;background:#0b1020eb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border);border-radius:12px}.cv-modes{display:flex;gap:4px;background:#0d1428;border-radius:9px;padding:3px}.cv-mode{border:0;background:none;color:var(--muted);font-size:12px;font-weight:600;padding:6px 12px;border-radius:7px;cursor:pointer}.cv-mode.active{background:var(--accent);color:#06231e}.cv-zoom{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cv-zoom input[type=range]{width:110px;accent-color:var(--accent)}.cv-zoom-val{font-size:11px;font-weight:700;color:var(--text);min-width:36px}.cv-iconbtn{background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:8px;min-width:30px;height:30px;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.cv-iconbtn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.cv-iconbtn:disabled{opacity:.4;cursor:default}.cv-nav{display:flex;align-items:center;gap:6px;margin-left:auto}.cv-nav-pos{font-size:12px;color:var(--muted);white-space:nowrap}.cv-slides{min-width:0;display:flex;flex-direction:column;gap:18px}.cv-slide{background:var(--card);border:1px solid var(--border);border-left:3px solid transparent;border-radius:12px;padding:14px 16px 18px;scroll-margin-top:calc(var(--cv-tb-h, 50px) + 10px)}.cv-slide.active{border-left-color:var(--accent)}.cv-slide-body{position:relative;overflow:hidden;background:#fff;border-radius:4px;max-width:100%}.cv-slide-body>*{max-width:100%}.cv-slide-shadow{display:block;width:100%;height:100%}.cv-slide-load{width:100%;height:100%;background:repeating-linear-gradient(45deg,#f4f4f5 0,#f4f4f5 12px,#ebebee 12px,#ebebee 24px)}.cv-slide-err{padding:16px;color:#b91c1c;font-size:13px;background:#fef2f2}.cv-slides.paper-dark .cv-slide-body{background:#12161d}.cv-offline{position:absolute;top:8px;right:8px;z-index:6;display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 8px;border-radius:999px;background:#b91c1ceb;color:#fff;font:600 12px/1.35 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;letter-spacing:.02em;box-shadow:0 2px 10px #0000004d;pointer-events:none;-webkit-user-select:none;user-select:none}.cv-offline-dot{width:7px;height:7px;border-radius:50%;background:#fecaca;box-shadow:0 0 0 2px #ffffff40;flex:none}.cv-float-slot .cv-offline,.pip-win-slot .cv-offline{top:6px;right:6px;font-size:11px;padding:2px 7px 2px 6px}.cv-slide-title{display:flex;align-items:baseline;gap:8px;font-size:1em;margin-bottom:12px;color:var(--text)}.cv-slide-n{flex:0 0 auto;font-size:.7333em;font-weight:800;color:var(--accent);background:#2dd4bf1f;border-radius:999px;padding:2px 9px}.mode-text .cv-slide{max-width:700px}.cv-text{display:flex;flex-direction:column;gap:8px}.cv-p{font-size:1em;line-height:1.62;color:var(--text)}.cv-p.big{font-size:1.1333em;font-weight:700}.cv-p a,.cv-text a{color:var(--accent)}.cv-ul{list-style:none;display:flex;flex-direction:column;gap:5px;padding:0}.cv-li{position:relative;padding-left:18px;font-size:.9667em;line-height:1.58;color:var(--text)}.cv-li:before{content:"•";position:absolute;left:4px;color:var(--accent);font-weight:800}.cv-li.lvl-1{padding-left:34px;font-size:.9333em;color:var(--muted)}.cv-li.lvl-2{padding-left:52px}.cv-li.lvl-3{padding-left:70px}.cv-img{max-width:100%;max-height:28em;width:auto;border-radius:10px;border:1px solid var(--border);margin:4px 0;object-fit:contain;align-self:flex-start}.cv-zoom-wrap{margin:0 auto;position:relative}.cv-sheet{position:relative;background:#fff;box-shadow:0 6px 24px #0006;overflow:hidden;outline:1px solid #d8d8d8}.cv-sh-text{overflow:visible}.cv-lpara{margin:0;font-size:18px}.cv-lpara.bull{display:block}.cv-lpara .cv-bull{margin-right:6px;display:inline-block}.cv:fullscreen{background:var(--bg);padding:14px;overflow:auto}@media (max-width: 900px){.cv-body{grid-template-columns:1fr}.cv-toc{position:static;max-height:none;padding:8px}.cv-toc h3{display:none}.cv-toc-nav{flex-direction:row;overflow-x:auto;gap:4px;padding-bottom:2px}.cv-toc-link{white-space:nowrap;flex:0 0 auto}.cv-toc-title{display:none}.cv-toc-n{font-size:12px}}@media (max-width: 560px){.cv-nav{margin-left:auto}.cv-zoom input[type=range]{width:80px}.cv-toolbar{gap:6px}.cv-find-input{width:96px}.cv-find-count{min-width:26px}}.cv-main,.cv-slides{overflow-x:clip}.cv-toolbar.hidden{opacity:0;pointer-events:none;transition:opacity .25s ease}.cv-toc-dropdown-wrap{position:relative;flex:0 0 auto}.cv-toc-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:220px;max-width:340px;max-height:60vh;overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:8px;box-shadow:0 10px 30px #00000080}.cv-toc-drop-head{display:flex;align-items:center;gap:6px;padding-bottom:6px;border-bottom:1px solid var(--border);margin-bottom:6px}.cv-toc-btn{background:none;border:0;color:var(--muted);cursor:pointer;font-size:14px;padding:3px 6px;border-radius:5px}.cv-toc-btn:hover{background:#60a5fa1a;color:var(--text)}.cv-toc-chapter{margin-bottom:4px}.cv-toc-ch-head{display:flex;align-items:center;gap:6px;padding:5px 6px;border-radius:7px;cursor:pointer;font-size:12.5px;color:var(--text);-webkit-user-select:none;user-select:none}.cv-toc-ch-head:hover{background:#60a5fa14}.cv-toc-arrow{font-size:9px;color:var(--muted);flex:0 0 auto;width:14px}.cv-toc-ch-count{font-size:10px;color:var(--muted);margin-left:auto}.cv-toc-ch-body{padding-left:20px;display:flex;flex-direction:column;gap:2px}.cv-toc-link{display:flex;align-items:center;gap:4px;padding:3px 7px;border-radius:5px;color:var(--muted);text-decoration:none;font-size:11px}.cv-toc-link:hover{background:#60a5fa1a;color:var(--text)}.cv-toc-link.active{background:#2dd4bf26;color:var(--accent);font-weight:700}.cv-toc-n{font-size:9px;font-weight:800;color:var(--accent);opacity:.7}.cv-toc-link.active .cv-toc-n{opacity:1}.cv-toc-title-short{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.cv-iconbtn-sm{background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:7px;min-width:26px;height:26px;font-size:11.5px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}.cv-iconbtn-sm:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.cv-iconbtn-sm:disabled{opacity:.4;cursor:default}.cv-iconbtn-sm svg{display:block}.fs-pending{animation:fsPending 1.5s ease-in-out infinite}@keyframes fsPending{0%,to{box-shadow:0 0 #2dd4bf00;border-color:var(--accent);color:var(--accent)}50%{box-shadow:0 0 0 4px #2dd4bf80;border-color:var(--accent);color:var(--accent)}}@media (prefers-reduced-motion: reduce){.fs-pending{animation:none;border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px #2dd4bf66}}.cv-layout-drop{display:flex;gap:3px}.cv-body.pinned{grid-template-columns:auto minmax(0,1fr)}.cv-toc.pinned{position:sticky;top:10px;max-height:calc(100vh - 120px);overflow:visible;background:var(--card);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;min-width:160px}.cv-toc-head.pinned-head{display:flex;align-items:center;gap:6px;padding:10px 8px 6px;border-bottom:1px solid var(--border)}.cv-toc-head.pinned-head h3{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted)}.cv-toc-head-btns{margin-left:auto;display:flex;gap:2px}.cv-toc-chapters.pinned-body{flex:1;overflow:auto;padding:6px 8px}.cv-toc-resize{position:absolute;right:0;top:0;bottom:0;width:6px;cursor:col-resize;background:transparent;z-index:5;touch-action:none}.cv-toc-resize:hover{background:#2dd4bf26}.cv-layout-mode .cv-sheet{box-shadow:0 4px 14px #0000004d}.cv-sheet.dark{background:var(--bg);outline-color:var(--border);box-shadow:none}.cv-sheet.dark>*{filter:invert(1) hue-rotate(180deg)}.cv-sheet.dark>.cv-sh-pic{filter:none}.cv-float{position:fixed;z-index:999;border-radius:10px;overflow:hidden;background:var(--card);border:1px solid var(--border);box-shadow:0 12px 40px #0000008c;display:flex;flex-direction:column;user-select:none;-webkit-user-select:none}.cv-float-head{display:flex;align-items:center;justify-content:space-between;height:26px;flex:0 0 26px;padding:0 18px 0 8px;cursor:grab;background:var(--border);user-select:none;touch-action:none;-webkit-user-select:none;-webkit-touch-callout:none}.cv-float-title{display:inline-flex;align-items:center;gap:6px;min-width:0;flex:0 1 auto;font-size:12px;color:var(--muted)}.cv-float-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-float-num{flex:0 0 auto;color:var(--muted)}.cv-float-close{background:none;border:0;color:var(--text);cursor:pointer;font-size:15px;line-height:1;padding:0;min-width:22px;height:22px;border-radius:5px}.cv-float-close:hover{background:#f871711f;color:var(--error)}.cv-float-body{position:relative;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}.cv-float-slot{position:relative}.cv-float-corner{position:absolute;width:16px;height:16px;z-index:6;touch-action:none}.cv-float-corner.nw{left:2px;top:2px;cursor:nwse-resize}.cv-float-corner.ne{right:2px;top:2px;cursor:nesw-resize}.cv-float-corner.sw{left:2px;bottom:2px;cursor:nesw-resize}.cv-float-corner.se{right:2px;bottom:2px;cursor:nwse-resize}.cv-float-corner:after{content:"";position:absolute;width:6px;height:6px;border:2px solid var(--accent);opacity:0;transition:opacity .15s}.cv-float-corner.nw:after{left:3px;top:3px;border-right:0;border-bottom:0}.cv-float-corner.ne:after{right:3px;top:3px;border-left:0;border-bottom:0}.cv-float-corner.sw:after{left:3px;bottom:3px;border-right:0;border-top:0}.cv-float-corner.se:after{right:3px;bottom:3px;border-left:0;border-top:0}.cv-float-corner:hover:after{opacity:.85}.cv-float-edge{position:absolute;z-index:6;touch-action:none}.cv-float-edge.n{left:20px;right:20px;top:0;height:6px;cursor:ns-resize}.cv-float-edge.s{left:20px;right:20px;bottom:0;height:6px;cursor:ns-resize}.cv-float-edge.w{top:20px;bottom:20px;left:0;width:6px;cursor:ew-resize}.cv-float-edge.e{top:20px;bottom:20px;right:0;width:6px;cursor:ew-resize}.tri-zones{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4}.tri-zone{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;border:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.tri-zone:focus,.tri-zone:focus-visible{outline:none}.pip-tb{position:absolute;left:50%;transform:translate(-50%);top:6px;z-index:7;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px;max-width:calc(100% - 12px);padding:5px 7px;background:#0b1020f0;border:1px solid var(--border);border-radius:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 10px 30px #00000073;user-select:none;-webkit-user-select:none}.pip-tb .cv-find-input{width:96px;height:24px;font-size:11px;padding-right:20px}.pip-tb .cv-nav{margin-left:0;gap:4px}.pip-tb .cv-find-count{min-width:26px}.pip-tb.compact{gap:4px;padding:4px 5px;top:4px}.pip-tb.compact .cv-iconbtn-sm{min-width:22px;height:22px;font-size:11px;border-radius:6px}.pip-tb.compact .cv-find-input{width:78px}.pip-tb.compact .cv-nav-pos{font-size:11px;padding:1px 3px}.cv-float-tools{flex:0 0 auto;min-width:0}.pip-tb.row{position:static;left:auto;top:auto;transform:none;width:100%;max-width:none;border-radius:0;border:0;border-bottom:1px solid var(--border);background:var(--border);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.pip-tb.row.compact{padding:4px 6px}.cv-iconbtn-sm.cv-pip-close:hover{background:#f8717124;border-color:var(--error);color:var(--error)}.cv-float:fullscreen{left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border:0;border-radius:0}.cv-float:fullscreen .cv-float-head{cursor:default}.cv-find-box{display:flex;align-items:center;gap:4px;flex:0 1 auto}.cv-find-wrap{position:relative;display:flex;align-items:center}.cv-find-input{background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:7px;height:26px;padding:0 8px;font-size:11.5px;width:110px}.cv-find-wrap .cv-find-input{padding-right:20px}.cv-find-clear{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:16px;height:16px;padding:0;border:0;border-radius:4px;background:none;color:var(--border);cursor:pointer;font-size:12px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.cv-find-clear:hover{color:var(--accent)}.cv-find-box:hover .cv-find-clear{color:var(--accent);background:#2dd4bf29}.cv-find-input:focus{outline:none;border-color:var(--accent)}.cv-find-input::-webkit-search-cancel-button{-webkit-appearance:none}.cv-find-count{font-size:10.5px;color:var(--muted);white-space:nowrap;min-width:30px;text-align:center}.cv-find-arrow{background:#0d1428;border:1px solid var(--border);color:var(--text);border-radius:5px;height:22px;min-width:20px;font-size:9px;padding:0;cursor:pointer}.cv-find-arrow:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.cv-find-arrow:disabled{opacity:.4;cursor:default}mark.cv-find{background:#ffe066;color:#111;border-radius:2px}mark.cv-find.current{background:var(--accent);color:#06231e;box-shadow:0 0 0 2px #2dd4bf59}.cv-nav-pos{background:none;border:0;color:var(--muted);cursor:pointer;font-family:inherit;font-size:12px;white-space:nowrap;padding:2px 5px;border-radius:5px}.cv-nav-pos:hover{color:var(--accent);background:#2dd4bf1a}.cv-nav-pos-input{width:46px;height:24px;text-align:center;padding:0 2px;background:#0d1428;border:1px solid var(--accent);color:var(--text);border-radius:6px;font-size:12px;font-family:inherit}.cv-nav-pos-input:focus{outline:none}.cv-pip-btn{border-color:var(--accent);color:var(--accent);background:#2dd4bf24}.cv-pip-btn:hover:not(:disabled){background:#2dd4bf42}.cv-pip-btn.on{background:var(--accent);color:#06231e}.cv-toc-dropdown.expanded{max-width:90vw;width:auto}.cv-toc-drop-body.expanded-all{display:flex;flex-wrap:wrap;gap:8px}.cv-toc-drop-body.expanded-all .cv-toc-chapter{flex:1 0 200px;min-width:160px;max-width:260px}.cv-toc-chapters.pinned-body.expand-all{display:flex;flex-wrap:wrap;gap:8px}.cv-toc-chapters.pinned-body.expand-all .cv-toc-chapter{flex:1 0 180px;min-width:160px;max-width:220px}.cv-slides.paper-light .cv-slide{background:#fff;border-color:#d8d8d8}.cv-slides.paper-light .cv-slide-title,.cv-slides.paper-light .cv-p,.cv-slides.paper-light .cv-li{color:#111}.cv-slides.paper-light .cv-li.lvl-1{color:#555}.cv-slides.paper-light .cv-p a,.cv-slides.paper-light .cv-text a{color:#0f766e}.cv-slides.paper-light .cv-slide-n{background:#0f766e24;color:#0f766e}.cv-slides.paper-dark .cv-slide{background:var(--bg);border-color:var(--border)}.cv-dots{display:none}@media (max-width: 720px){.cv-dots{position:fixed;right:3px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:5px;z-index:25;max-height:70vh;overflow-y:auto;padding:4px 5px}.cv-dot{width:7px;height:7px;border-radius:50%;border:0;padding:0;background:var(--muted);opacity:.2;cursor:pointer;flex:0 0 auto}.cv-dot.active{opacity:1;background:var(--accent)}}.pip-win{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden;-webkit-user-select:none;user-select:none}.pip-win-slot{position:relative;flex:0 0 auto;z-index:1}.pip-trail{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2}.pip-win-num{position:absolute;right:14px;bottom:12px;z-index:3;padding:4px 12px;border-radius:999px;background:#00000073;border:1px solid rgba(255,255,255,.18);color:#e6fffb;font-size:clamp(14px,1.8vmin,26px);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.04em;pointer-events:none;-webkit-user-select:none;user-select:none}.pip-toc{position:absolute;left:0;top:0;bottom:0;z-index:5;width:min(340px,78%);display:flex;flex-direction:column;overflow:hidden;background:#0b1020f7;border-right:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:8px 0 24px #00000073;text-align:left;cursor:default}.pip-toc-head{display:flex;align-items:center;gap:4px;flex:0 0 auto;padding:5px 6px;border-bottom:1px solid var(--border)}.pip-toc-title{margin-right:auto;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px}.pip-toc-body{flex:1;min-height:0;overflow:auto;padding:6px 7px}.pip-win .pip-toc-body.all{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start}.pip-win .pip-toc-body.all .cv-toc-chapter{flex:1 0 150px;min-width:140px;max-width:260px}.pip-toc-ch-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pip-toc .cv-toc-link{background:none;border:0;width:100%;cursor:pointer;text-align:left;font-family:inherit;font-size:11.5px}.pip-toc .cv-toc-link:hover:not(:disabled){background:#60a5fa1a;color:var(--text)}.pip-toc .cv-toc-link.active{background:#2dd4bf26;color:var(--accent);font-weight:700}.pip-toc .cv-toc-link:disabled{opacity:.4;cursor:default}.pip-toc .cv-toc-btn.on{background:#2dd4bf2e;color:var(--accent)}.pip-toc-x{margin-left:2px}.pip-toc-x:hover{background:#f8717124;color:var(--error)}.cv-float:fullscreen .pip-toc,.cv-float.css-fs .pip-toc{width:min(420px,60%)}.pip-win .pip-toc{width:min(440px,62%)}.pip-win .pip-toc .cv-toc-ch-head{font-size:14px}.pip-win .pip-toc .cv-toc-link{font-size:13px;padding:5px 8px}.pip-win-toc{position:absolute;left:14px;top:12px;z-index:8;padding:4px 12px;border-radius:999px;cursor:pointer;background:#00000073;border:1px solid rgba(255,255,255,.18);color:#e6fffb;font-size:clamp(14px,1.8vmin,26px);line-height:1.2;opacity:.75;transition:opacity .15s ease,background .15s ease}.pip-win-toc:hover{opacity:1;background:#000000ad}@media (max-width: 720px){.cv-head{margin-bottom:8px}.cv-head-top{gap:8px;flex-wrap:nowrap}.cv-head-top h2{font-size:17px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cv-back{font-size:12px;padding:3px 8px}.cv-count,.cv-head p.muted{display:none}.cv-progress{margin-top:6px}.cv-toolbar{gap:6px 8px;padding:6px 7px;margin-bottom:8px;border-radius:10px}.cv-mode{padding:5px 9px;font-size:11.5px}.cv-zoom input[type=range]{width:70px}.cv-slides{gap:12px}.cv-slide{padding:10px 12px 12px}.cv-slide-title{margin-bottom:8px}.cv-main,.cv-slides{overflow-x:clip}.cv-float-corner{width:22px;height:22px}.cv-float-corner.nw{left:2px;top:2px}.cv-float-corner.ne{right:2px;top:2px}.cv-float-corner.sw{left:2px;bottom:2px}.cv-float-corner.se{right:2px;bottom:2px}.cv-float-edge.n,.cv-float-edge.s{left:26px;right:26px;height:10px}.cv-float-edge.w,.cv-float-edge.e{top:26px;bottom:26px;width:10px}}@media (max-width: 560px){.cv-back-label{display:none}.cv-back{padding:3px 9px}.cv-iconbtn-sm{min-width:24px;height:24px;font-size:11px}.cv-iconbtn{min-width:26px;height:26px;font-size:12px}.cv-find-input{width:84px;font-size:12px}.cv-zoom-val{min-width:30px;font-size:10.5px}.cv-nav-pos{font-size:11.5px}.cv-toolbar{padding:5px 6px;gap:5px 6px}}@media (max-width: 420px){.cv-iconbtn-sm{min-width:22px;height:22px;font-size:10.5px}.cv-find-input{width:68px}.cv-find-input::placeholder{font-size:11px}.cv-toolbar{gap:4px 5px}}.ext-doc{display:flex;flex-direction:column;gap:0;padding:0 14px 14px;min-width:0}.ext-doc-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 14px;background:#26262b;border:1px solid #3a3a42;border-bottom:0;border-radius:10px 10px 0 0;color:#e8e8ec;font-size:14px}.ext-doc-name{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ext-doc-chip{font-size:12px;color:#a9a9b3;padding:2px 8px;border:1px solid #4a4a55;border-radius:10px;white-space:nowrap}.ext-doc-open{margin-left:auto;font-size:13px;color:#7cc4ff;text-decoration:none;white-space:nowrap}.ext-doc-open:hover{text-decoration:underline}.ext-doc-body{position:relative;border:1px solid #3a3a42;border-radius:0 0 10px 10px;overflow:hidden;background:#fff;min-width:0}.ext-doc-frame{display:block;width:100%;height:100%;border:0;background:#fff}.ext-doc-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;margin:0;color:#6b6b76;font-size:14px;pointer-events:none}.ext-doc-fail{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;text-align:center;color:#3a3a42;background:#fff}@media (max-width: 640px){.ext-doc{padding:0 6px 8px}.ext-doc-bar{padding:7px 10px;font-size:13px;gap:7px}.ext-doc-name{max-width:100%}.ext-doc-open{margin-left:0;width:100%}.ext-doc-body{height:70vh;min-height:420px}}.cv-follow{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;height:20px;padding:0 5px;margin-left:2px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--muted);cursor:pointer;transition:background .15s,border-color .15s,color .15s,opacity .15s}.cv-follow:hover{border-color:var(--accent);color:var(--text)}.cv-follow-svg{display:block;width:16px;height:16px;flex:0 0 auto}.cv-float-svg{display:block;width:14px;height:14px;flex:0 0 auto}.cv-toolbar .cv-follow{height:26px;min-width:30px;justify-content:center;margin-left:2px;border-radius:7px}.dock-docked .cv-follow{height:var(--wd-head-h);padding:0 3px;gap:3px;border-radius:4px}.dock-docked .cv-follow-svg{width:var(--wd-head-ico);height:var(--wd-head-ico)}.dock-docked .cv-follow-count{font-size:9px;min-width:11px;padding:1px 3px}.dsh{display:flex;flex-direction:column;gap:14px}.dsh-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.dsh-brand{display:flex;align-items:flex-start;gap:12px;min-width:0}.dsh-logo{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 auto;border:1px solid var(--border);border-radius:12px;background:var(--card);color:#4d6bfe}.dsh-brand h2{font-size:22px;margin-bottom:2px}.dsh-brand p.muted{max-width:70ch;font-size:13px}.dsh-actions{display:flex;gap:8px;flex-wrap:wrap}.dsh-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:14px;border:1px solid var(--border);background:var(--card);color:var(--text);text-decoration:none;cursor:pointer}.dsh-btn:hover,.dsh-btn-primary{border-color:var(--accent);color:var(--accent)}.dsh-state{border:1px solid var(--border);border-radius:12px;background:var(--card);padding:22px;color:var(--muted);font-size:14px}.dsh-state-error strong{display:block;margin-bottom:6px;color:var(--error)}.dsh-mono{margin-top:10px;font-family:Cascadia Mono,Consolas,monospace;font-size:12px;color:var(--muted);word-break:break-word}.dsh-frame{display:block;width:100%;height:clamp(480px,calc(100vh - 260px),1400px);border:1px solid var(--border);border-radius:12px;background:#0b1020}.dsh-mobile-hint{display:none;font-size:12px}.dsh-stage{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#0b1020}.dsh-stage .dsh-frame{border:0;border-radius:0;flex:0 0 auto}.dsh-stage:fullscreen{width:100vw;height:100vh;border:0;border-radius:0}.dsh-stage:fullscreen .dsh-frame{flex:1 1 auto;height:auto;min-height:0}.css-fs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;border-radius:0;background:var(--bg)}.cv.css-fs{padding:14px;overflow:auto}.cv-float.css-fs{left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border:0}.cv-float.css-fs .cv-float-head{cursor:default}.dsh-stage.css-fs{border:0}.dsh-stage.css-fs .dsh-frame{flex:1 1 auto;height:auto;min-height:0}.dsh-float.css-fs{left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border:0}.dsh-float.css-fs .dsh-float-head{cursor:default}.dsh-win.css-fs{width:100vw;height:100vh;height:100dvh}.dsh-bar{display:flex;align-items:center;gap:8px;min-height:34px;padding:4px 6px 4px 9px;background:var(--border)}.dsh-bar-title{display:inline-flex;align-items:center;gap:6px;min-width:0;font-size:12px;color:var(--muted)}.dsh-bar-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dsh-ver{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Cascadia Mono,Consolas,monospace;font-size:11px;line-height:16px;padding:1px 7px;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--muted)}.dsh-bar-btns{margin-left:auto;display:flex;gap:4px;flex:0 0 auto}.cv-iconbtn-sm.dsh-tool.on{background:var(--accent);border-color:var(--accent);color:#06231e}.dsh-float{position:fixed;z-index:1000;display:flex;flex-direction:column;border-radius:10px;overflow:hidden;background:var(--card);border:1px solid var(--border);box-shadow:0 14px 44px #0009;user-select:none;-webkit-user-select:none}.dsh-float.hidden{display:none}.dsh-float-head{display:flex;align-items:center;gap:4px;height:26px;flex:0 0 26px;padding:0 18px 0 16px;background:var(--border);cursor:grab;touch-action:none}.dsh-float-head:active{cursor:grabbing}.dsh-float-title{display:inline-flex;align-items:center;gap:6px;margin-right:auto;min-width:0;font-size:12px;color:var(--muted)}.dsh-float-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dsh-float-btn{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0;border:0;border-radius:5px;background:none;color:var(--text);font-size:15px;line-height:1;cursor:pointer}.dsh-float-btn:hover{background:#60a5fa29;color:var(--accent)}.dsh-float-btn.dsh-float-x:hover{background:#f8717129;color:var(--error)}.dsh-float-body{position:relative;flex:1;min-height:0;background:#0b1020}.dsh-iframe{display:block;width:100%;height:100%;border:0;background:#0b1020}.dsh-shield{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;background:transparent;cursor:grabbing}.dsh-float-corner{position:absolute;width:16px;height:16px;z-index:9;touch-action:none}.dsh-float-corner.nw{left:2px;top:2px;cursor:nwse-resize}.dsh-float-corner.ne{right:2px;top:2px;cursor:nesw-resize}.dsh-float-corner.sw{left:2px;bottom:2px;cursor:nesw-resize}.dsh-float-corner.se{right:2px;bottom:2px;cursor:nwse-resize}.dsh-float-corner:after{content:"";position:absolute;width:6px;height:6px;border:2px solid var(--accent);opacity:0;transition:opacity .15s}.dsh-float-corner.nw:after{left:3px;top:3px;border-right:0;border-bottom:0}.dsh-float-corner.ne:after{right:3px;top:3px;border-left:0;border-bottom:0}.dsh-float-corner.sw:after{left:3px;bottom:3px;border-right:0;border-top:0}.dsh-float-corner.se:after{right:3px;bottom:3px;border-left:0;border-top:0}.dsh-float-corner:hover:after{opacity:.85}.dsh-float-edge{position:absolute;z-index:9;touch-action:none}.dsh-float-edge.n{left:20px;right:20px;top:0;height:6px;cursor:ns-resize}.dsh-float-edge.s{left:20px;right:20px;bottom:0;height:6px;cursor:ns-resize}.dsh-float-edge.w{top:20px;bottom:20px;left:0;width:6px;cursor:ew-resize}.dsh-float-edge.e{top:20px;bottom:20px;right:0;width:6px;cursor:ew-resize}.dsh-float:fullscreen{left:0!important;top:0!important;width:100vw!important;height:100vh!important;border:0;border-radius:0}.dsh-float:fullscreen .dsh-float-head{cursor:default}.dsh-win{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:var(--bg)}.dsh-win:fullscreen{width:100vw;height:100vh}.dsh-win-bar{display:flex;align-items:center;gap:8px;min-height:34px;padding:4px 6px 4px 10px;background:var(--border);user-select:none;-webkit-user-select:none}.dsh-win-title{display:inline-flex;align-items:center;gap:7px;min-width:0;font-size:12.5px;color:var(--muted)}.dsh-win-btns{margin-left:auto;display:flex;gap:4px}.dsh-win-btn{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 4px;border:1px solid var(--border);border-radius:7px;background:#0d1428;color:var(--text);font-size:15px;line-height:1;cursor:pointer}.dsh-win-btn:hover{border-color:var(--accent);color:var(--accent)}.dsh-win-btn.dsh-win-x:hover{border-color:var(--error);background:#f8717124;color:var(--error)}.dsh-win-body{position:relative;flex:1;min-height:0;background:#0b1020}.dsh-ov{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:18px;text-align:center;background:#0b1020f0;color:var(--text);font-size:13px}.dsh-ov strong{color:var(--text)}.dsh-ov .muted{font-size:12px;max-width:46ch}.dsh-ov .dsh-btn{margin-top:8px}@media (max-width: 720px){.dsh-frame{height:clamp(420px,calc(100vh - 320px),900px)}.dsh-mobile-hint{display:block}.dsh-actions{width:100%}.dsh-btn{flex:1 1 auto;justify-content:center}.dsh-float-corner{width:22px;height:22px}.dsh-float-edge.n,.dsh-float-edge.s{left:26px;right:26px;height:10px}.dsh-float-edge.w,.dsh-float-edge.e{top:26px;bottom:26px;width:10px}.dsh-float-head{padding:0 24px 0 22px}.dsh-float-btn{min-width:26px;height:24px}.dsh-bar-name{display:none}}.jitsi-float.css-fs,.dsh-float.css-fs,.cv-float.css-fs,.topo-pip.css-fs,.msg-float.css-fs{z-index:9999!important}.mini-dome{position:fixed;width:54px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;--dome-fill: rgb(45 212 191 / .5);--dome-mid: rgb(127 221 162 / .55);--dome-deep: rgb(15 118 110 / .5);--dome-line: rgb(45 212 191 / .85);border:1px solid var(--dome-line);border-bottom:0;border-radius:27px 27px 0 0;background:linear-gradient(180deg,var(--dome-fill) 0%,var(--dome-fill) 30%,var(--dome-mid) 100%);box-shadow:inset 0 2px 2px #ffffff73,inset 0 -7px 10px #00000073,0 6px 16px #0000008c;cursor:grab;touch-action:none;z-index:9995;font:inherit;line-height:1;transform-origin:center center;animation:mini-dome-in .18s ease-out}.mini-dome.right{transform:rotate(-90deg)}.mini-dome.left{transform:rotate(90deg)}.mini-dome:hover{filter:brightness(1.12)}.mini-dome:active{cursor:grabbing}.mini-dome:focus-visible{outline:2px solid var(--text);outline-offset:2px}.mini-dome-ico{display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0;border-radius:50%;transform:none;background:none;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35));pointer-events:none}.mini-dome.right .mini-dome-ico{transform:translate(3px) rotate(90deg)}.mini-dome.left .mini-dome-ico{transform:translate(-3px) rotate(-90deg)}.mini-dome-ico img{display:block;height:20px;width:20px;object-fit:contain}.mini-dome-ico img[src*=topo-logo]{height:21.6px;width:21.6px}.mini-dome-ico .cv-dome-ico,.mini-dome-ico img[src*=courses]{height:23.5px;width:23.5px}.mini-dome-ico .jitsi-dome-ico,.mini-dome-ico img[src*=jitsi]{height:22.6px;width:22.6px}.mini-dome-ico img[src*=terminal]{height:23.75px;width:23.75px}.mini-dome-ico img[src*=webfig]{height:21px;width:21px}.mini-dome-ico svg{height:19px;width:auto}.mini-dome-ico img[src*=preloader]{height:19px;width:19px}.mini-dome-ico svg{display:block}.mini-dome-ico img,.mini-dome-ico svg{filter:brightness(0) invert(1) drop-shadow(0 1px 1px rgba(0,0,0,.55))}.mini-dome-ico .jitsi-dome-ico,.mini-dome-ico .cv-dome-ico{filter:brightness(0) invert(1) drop-shadow(0 1px 1px rgba(0,0,0,.55))}.mini-dome-ico--plate{display:inline-flex;background:#ffffffeb;padding:2px 4px;border-radius:8px}.mini-dome-ico--plate img{filter:none}.mini-dome--idle{cursor:pointer;box-shadow:inset 0 2px 2px #ffffff40,inset 0 -7px 10px #00000059,0 4px 12px #00000073}.mini-dome--idle:hover{filter:brightness(1.3)}.mini-dome--idle:active{cursor:pointer}@keyframes mini-dome-in{0%{opacity:0}}@media (prefers-reduced-motion: reduce){.mini-dome{animation:none}.mini-morph{transition:none!important}}.mini-morph{transition:left .28s cubic-bezier(.22,.7,.3,1),top .28s cubic-bezier(.22,.7,.3,1),width .28s cubic-bezier(.22,.7,.3,1),height .28s cubic-bezier(.22,.7,.3,1),border-radius .28s ease;border-radius:15px;pointer-events:none;will-change:left,top,width,height}.cv-float-min{background:none;border:0;color:var(--text);cursor:pointer;font-size:15px;line-height:1;padding:0 2px;min-width:22px;height:22px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center}.cv-float-min:hover{background:#2dd4bf29;color:var(--accent)}.cv-float-btns{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto}.cv-float-btn{background:none;border:0;color:var(--text);cursor:pointer;min-width:22px;height:22px;padding:0 2px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center}.cv-float-btn:hover{background:#2dd4bf29;color:var(--accent)}.cv-float-btn.cv-pip-btn{color:var(--accent);background:#2dd4bf24}.cv-float-btn.cv-pip-btn:hover:not(.on){background:#2dd4bf42}.cv-float-btn.cv-pip-btn.on{background:var(--accent);color:#06231e}.cv-float-btn.cv-toc-btn{font-size:12px}.cv-float-btn.cv-toc-btn.on{background:var(--accent);color:#06231e}.dsh-float-btn.dsh-float-min{font-size:15px}.cv-float-ico,.jitsi-title-ico{display:block;height:14px;width:14px;flex:0 0 auto}.courses-h2{display:flex;align-items:center;gap:8px}.courses-h2-ico{display:block;height:20px;width:20px;flex:0 0 auto}.jitsi-h1{display:flex;align-items:center;gap:9px}.jitsi-h1-ico{display:block;height:22px;width:22px;flex:0 0 auto}.mini-dome-ico .cv-dome-ico,.mini-dome-ico .jitsi-dome-ico{display:block;height:20px;width:20px;object-fit:contain}.wm-panel{position:fixed;z-index:9996;min-width:232px;max-width:min(300px,calc(100vw - 16px));max-height:calc(100vh - 16px);display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 30px #00000073;font-size:13px;color:var(--text);animation:wm-in .12s ease-out}@keyframes wm-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.wm-head{display:flex;align-items:center;gap:8px}.wm-title{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted)}.wm-tools{margin-left:auto;display:flex;align-items:center;gap:1px}.wm-ico{display:inline-flex;align-items:center;justify-content:center;padding:3px 5px;border:0;border-radius:6px;background:none;color:var(--muted);font-family:inherit;font-size:13px;line-height:1.2;cursor:pointer}.wm-ico svg{display:block}.wm-ico:hover:not(:disabled){color:var(--text);background:#2dd4bf1f}.wm-ico:disabled{opacity:.38;cursor:default}.wm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.wm-row{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:8px;cursor:pointer}.wm-row:hover{background:#2dd4bf14}.wm-row--off{color:var(--muted);cursor:not-allowed}.wm-row--off:hover{background:none}.wm-check{flex:0 0 auto;width:15px;height:15px;margin:0;accent-color:var(--accent);cursor:inherit}.wm-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wm-row--all{padding-bottom:8px;margin-bottom:3px;border-bottom:1px solid var(--border);border-radius:8px 8px 0 0}.wm-name--all{text-transform:uppercase;letter-spacing:1.3px;font-size:11.5px;color:var(--muted)}.wm-row--all:hover .wm-name--all{color:var(--text)}.sys-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 14px}.sys-toolbar .sys-spacer{flex:1 1 auto}.sys-btn{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer}.sys-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.sys-btn:disabled{opacity:.5;cursor:not-allowed}.sys-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);cursor:pointer}.sys-stamp{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.sys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px;margin-bottom:14px}.sys-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 14px;min-width:0}.sys-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px}.sys-card-title{font-size:14px;font-weight:700;color:var(--text)}.sys-card-sub{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.sys-big{font-size:26px;font-weight:700;color:var(--accent);line-height:1.1}.sys-big-unit{font-size:13px;font-weight:500;color:var(--muted);margin-left:4px}.sys-rows{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;font-size:13px}.sys-rows dt{color:var(--muted);white-space:nowrap}.sys-rows dd{margin:0;color:var(--text);overflow-wrap:anywhere}.sys-muted{color:var(--muted)}.sys-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;overflow-wrap:anywhere}.sys-bar{position:relative;height:8px;border-radius:4px;background:#94a3b82e;overflow:hidden;margin:6px 0 2px}.sys-bar-fill{height:100%;border-radius:4px;background:var(--accent);transition:width .3s ease}.sys-bar-fill.warn{background:#fbbf24}.sys-bar-fill.crit{background:var(--error)}.sys-bar-empty{height:8px;border-radius:4px;background:repeating-linear-gradient(90deg,rgba(148,163,184,.25) 0 4px,transparent 4px 8px);margin:6px 0 2px}.sys-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px;margin:8px 0 14px;max-width:100%}.sys-table{width:100%;border-collapse:collapse;font-size:13px;min-width:720px}.sys-table th,.sys-table td{padding:7px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;white-space:nowrap}.sys-table th{background:#94a3b814;color:var(--muted);font-weight:600}.sys-table tr:last-child td{border-bottom:none}.sys-table td.sys-wrap{white-space:normal;overflow-wrap:anywhere;min-width:160px}.sys-row-error td{color:var(--error)}.sys-row-error .sys-err-msg{white-space:normal;overflow-wrap:anywhere}.sys-ok{color:var(--accent)}.sys-bad{color:var(--error)}.sys-status{display:inline-flex;align-items:center;gap:6px;font-size:13px;padding:3px 9px;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.sys-status.running{border-color:var(--accent);color:var(--accent)}.sys-status.error{border-color:var(--error);color:var(--error)}.sys-status.ok{border-color:var(--accent);color:var(--accent)}.sys-warn{border:1px solid var(--error);border-radius:10px;padding:10px 12px;color:var(--error);font-size:13px;margin:8px 0 14px;overflow-wrap:anywhere}.sys-error{border:1px solid var(--error);border-radius:10px;padding:10px 12px;margin:8px 0 14px;font-size:13px;color:var(--error);overflow-wrap:anywhere}.sys-log{background:#00000040;border:1px solid var(--border);border-radius:8px;padding:8px 10px;margin:6px 0 0;max-height:220px;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.45;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.sys-select{background-color:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 24px 6px 8px;font-size:13px}.sys-select:focus{outline:1px solid var(--accent)}@media (max-width: 560px){.sys-grid{grid-template-columns:1fr}.sys-rows{grid-template-columns:1fr;gap:0}.sys-rows dt{margin-top:6px;font-size:11px;text-transform:uppercase;letter-spacing:.03em}.sys-toolbar{gap:8px}}.sys-history{margin:4px 0 18px}.sys-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin:8px 0 10px}.sys-range{display:inline-flex;gap:4px;border:1px solid var(--border);border-radius:8px;padding:2px;background:#94a3b80f}.sys-range-btn{background:transparent;border:0;border-radius:6px;color:var(--muted);font-size:12px;padding:4px 10px;cursor:pointer;white-space:nowrap}.sys-range-btn:hover{color:var(--text)}.sys-range-btn.active{background:var(--accent);color:#04201d;font-weight:600}.sys-chart{position:relative;min-width:0}.sys-chart-plot{position:relative;width:100%}.sys-chart svg{display:block;overflow:visible}.sys-chart-gline{stroke:#94a3b829;stroke-width:1}.sys-chart-cursor{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 2}.sys-chart-axis{fill:var(--muted);font-size:10px}.sys-chart-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--muted);border:1px dashed var(--border);border-radius:8px}.sys-chart-tip{position:absolute;top:0;transform:translate(-50%);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:3px 7px;font-size:11px;line-height:1.3;color:var(--text);pointer-events:none;white-space:nowrap;z-index:2;display:flex;flex-direction:column;gap:1px}.sys-chart-tip span{color:var(--muted)}.sys-chart-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10.5px;color:var(--muted);margin-top:2px}.sys-chart-legend{display:inline-flex;align-items:center;gap:4px}.sys-chart-legend i{display:inline-block;width:9px;height:3px;border-radius:2px}.sys-input{background-color:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 9px;font-size:13px;min-width:200px}.sys-input:focus{outline:1px solid var(--accent)}.sys-vm-table{min-width:900px}.sys-vm-row{cursor:pointer}.sys-vm-row:hover td{background:#94a3b812}.sys-vm-row.open td{background:#2dd4bf14}.sys-th-toggle{width:1px}.sys-vm-chev{padding-left:4px;padding-right:4px}.sys-vm-toggle{background:transparent;border:0;color:var(--accent);font-size:12px;line-height:1;cursor:pointer;padding:2px 4px}.sys-vm-detail td{white-space:normal;background:#0000002e;padding:10px 12px 14px}.sys-vm-detail-inner{display:flex;flex-direction:column;gap:8px}.sys-vm-facts{grid-template-columns:auto 1fr;gap:2px 12px;font-size:12.5px}@media (max-width: 560px){.sys-chart-grid{grid-template-columns:1fr}.sys-input{min-width:0;width:100%}.sys-vm-facts{grid-template-columns:1fr}}.sys-util-warn,.sys-vm-peak.sys-util-warn{color:#fbbf24;font-weight:600}.sys-util-crit,.sys-vm-peak.sys-util-crit{color:var(--error);font-weight:700}.sys-vm-util-cell{min-width:120px}.sys-vm-peak{font-size:11px;color:var(--muted);white-space:nowrap}.sys-spark{display:block;margin-top:2px}.sys-spark-empty{display:inline-block;font-size:11px;color:var(--muted)}.sys-vm-group td{background:#94a3b81a;padding:5px 10px;border-bottom:1px solid var(--border)}.sys-vm-group-btn{display:inline-flex;align-items:center;gap:7px;background:transparent;border:0;color:var(--text);font-size:13px;font-weight:700;cursor:pointer;padding:2px 0}.sys-vm-group-btn:hover{color:var(--accent)}.sys-vm-group-chev{display:inline-block;width:12px;color:var(--accent)}.sys-vm-group-name{letter-spacing:.01em}.sys-vm-group-top{font-size:12px;color:var(--muted);margin-left:12px;overflow-wrap:anywhere}.sys-vm-group-top strong{color:var(--text)}.sys-vm-top{display:inline-block;margin-left:6px;padding:0 5px;border-radius:999px;border:1px solid var(--accent);color:var(--accent);font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}@media (max-width: 560px){.sys-vm-group-top{display:block;margin:3px 0 0 19px}.sys-vm-util-cell{min-width:96px}}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:12px 0}.admin-stat{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.admin-stat-value{font-size:22px;font-weight:700;color:var(--accent)}.admin-stat-label{font-size:12px;color:var(--muted);margin-top:2px}.admin-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:6px 0 12px}.admin-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.admin-head h2{margin:0}.admin-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-tabs .chip{cursor:pointer}.admin-sep{display:flex;align-items:center;gap:8px;margin:10px 0 8px}.admin-sep-line{flex:1;height:1px;background:var(--border)}.admin-sep-btn{background:none;border:none;color:var(--muted);width:20px;height:20px;padding:0;font-size:10px;line-height:1;cursor:pointer;border-radius:4px}.admin-sep-btn:hover{color:var(--text);background:var(--card)}.admin-row-actions{display:flex;gap:6px;flex-wrap:wrap}.btn.admin-del{display:inline-flex;align-items:center;justify-content:center;width:30px;height:26px;padding:0;background:none;border:1px solid transparent;border-radius:7px;color:var(--muted);transition:color .15s,border-color .15s,background .15s}.btn.admin-del svg{display:block}.btn.admin-del:hover:not(:disabled){color:var(--error);border-color:var(--error);background:#f871711f}.btn.admin-del:disabled{opacity:.4;cursor:not-allowed}.btn.admin-del:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.admin-row-actions--tight{flex-wrap:nowrap}.admin-table td.admin-row-actions--tight{max-width:none}.admin-row-actions--tight>.btn{flex-shrink:0;white-space:nowrap}.admin-train-cell{min-width:170px}.admin-table td[data-col-cohorts]{min-width:150px}.admin-train-name{display:block;font-weight:600}.admin-train-cohorts{display:block;margin-top:1px;font-size:11px;color:var(--muted);white-space:nowrap}.admin-train-cell>span[title]{cursor:help}.admin-2fa-setup{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}.admin-2fa-qr{text-align:center;font-size:12px}.admin-2fa-qr svg{width:168px;height:168px;background:#fff;border-radius:8px;padding:6px;display:block;margin-bottom:6px}.admin-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0}.admin-search{background-color:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 10px;min-width:220px}.admin-search:focus{outline:1px solid var(--accent)}select.admin-search{padding-right:26px}.admin-total{margin-left:auto;font-size:12px}.admin-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{padding:7px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.admin-table th{background:#94a3b814;color:var(--muted);font-weight:600;white-space:nowrap}.admin-table tr:hover td{background:#2dd4bf0a}.admin-table td{max-width:280px}.admin-email{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.admin-primary{color:var(--accent)}.admin-badge{display:inline-block;margin:0 4px 3px 0;padding:1px 6px;border-radius:999px;font-size:11px;white-space:nowrap;border:1px solid var(--border);color:var(--muted)}.admin-badge.bad{border-color:var(--error);color:var(--error)}.admin-badge.review{border-color:#f59e0b;color:#f59e0b}.admin-badge.multi{border-color:var(--accent);color:var(--accent)}.admin-badge.kind{border-color:#818cf8;color:#818cf8}.admin-actions{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.admin-error{border:1px solid var(--error);border-radius:10px;padding:10px 12px;margin:10px 0;background:#f871710f}@media (max-width: 720px){.admin-search{min-width:100%}.admin-total{margin-left:0}}.users-panel .muted.small,.perm-panel .muted.small{font-size:11.5px}.admin-notice{margin:8px 0;padding:7px 10px;border:1px solid #2f6f3f;border-left-width:3px;border-radius:6px;background:#22c55e17;color:#b7f0c4;font-size:12.5px}.users-actions{display:flex;gap:4px;flex-wrap:wrap}.users-actions .btn{white-space:nowrap}.users-form{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.users-form .admin-search{min-width:140px}.users-modal-row,.pw-row{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.pw-modal{max-width:420px;position:relative}.pw-x{position:absolute;top:10px;right:18px;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:1px solid transparent;border-radius:7px;color:var(--muted);cursor:pointer;transition:color .15s,border-color .15s}.pw-x:hover:not(:disabled){color:var(--error);border-color:var(--border)}.pw-x:disabled{opacity:.45;cursor:not-allowed}.pw-x:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.pw-modal h3{padding-right:34px}.pw-field{position:relative;display:block}.pw-field--i2 .admin-search{padding-right:66px}.pw-field--i1 .admin-search{padding-right:38px}.pw-field--i3 .admin-search{padding-right:94px}.pw-icons{position:absolute;top:50%;right:5px;transform:translateY(-50%);display:inline-flex;align-items:center;gap:2px}.pw-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background:none;border:1px solid transparent;border-radius:6px;color:var(--muted);cursor:pointer;transition:color .15s,border-color .15s}.pw-icon:hover{color:var(--accent);border-color:var(--accent)}.pw-icon:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.pw-label{display:block;margin-top:8px;font-size:12px;color:#b7c4d6}.pw-label .admin-search{display:block;width:100%;margin-top:3px;box-sizing:border-box}.pw-hint{min-height:16px;margin-top:6px}.perm-table th,.perm-table td{text-align:center}.perm-table th:nth-child(2),.perm-table td:nth-child(2){text-align:left}.perm-cell input{width:16px;height:16px;cursor:pointer}.perm-cell input:disabled{cursor:default}.perm-pick input{width:16px;height:16px;cursor:pointer}.perm-table th.perm-col-actions,.perm-table td.perm-actions{white-space:nowrap;width:1%}.perm-actions .btn{display:inline-flex;align-items:center;vertical-align:middle}.perm-actions .btn+.btn{margin-left:4px}.perm-table th.perm-col-pick,.perm-table td.perm-pick,.perm-table th.perm-col-spec,.perm-table td.perm-spec{width:1%;white-space:nowrap}.perm-table td.perm-spec{text-align:left}.perm-table th.perm-col-topo,.perm-table td.perm-topo{width:1%;white-space:nowrap;text-align:center}.perm-spec-input{width:110px;min-width:0;box-sizing:border-box;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.perm-table tr.is-picked,.perm-table tr.is-picked:nth-child(2n){background:#0f8fd024}.perm-result{margin-top:3px;font-size:11.5px;line-height:1.3}.perm-result.ok{color:#7fd6a0}.perm-result.bad{color:#f0a0a0}.perm-send{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0 4px;padding:9px 12px;border:1px solid var(--border, #2a3648);border-left:3px solid var(--accent, #0f8fd0);border-radius:6px;background:#0f8fd012}.perm-send .btn{width:auto;padding:8px 16px;font-size:13.5px;white-space:nowrap}.pw-apply-note{margin:6px 0 8px;font-size:12.5px;line-height:1.35;color:#f0b429}.pw-note-ok{margin:2px 0 0;font-size:12.5px;line-height:1.35;color:var(--accent)}.admin-groups-cell{min-width:200px}.admin-groups{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.admin-group-chip{display:inline-flex;align-items:center;gap:3px;padding:1px 3px 1px 8px;border:1px solid rgba(45,212,191,.45);background:#2dd4bf1f;border-radius:999px;font-size:11.5px;color:var(--text);white-space:nowrap}.admin-group-ico{width:16px;height:16px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:50%;color:inherit;font-size:10px;line-height:1;cursor:pointer;opacity:.75}.admin-group-ico:hover:not(:disabled){opacity:1;background:#2dd4bf40}.admin-group-x:hover:not(:disabled){background:#e5484d;color:#fff}.admin-group-ico:disabled{opacity:.35;cursor:not-allowed}.admin-group-add{min-width:0;width:auto;max-width:150px;padding:2px 22px 2px 6px;font-size:11px}.admin-group-rename{font:inherit;font-size:11.5px;width:110px;padding:1px 6px;border-radius:999px;border:1px solid var(--accent);background:#0d1428;color:var(--text)}.admin-cohort-chip{border-color:#2dd4bf73}.cg-dlg{width:min(560px,94vw);max-height:86vh;display:flex;flex-direction:column;gap:8px}.cg-dlg .topo-modal-head h3{display:flex;align-items:baseline;gap:6px}.cg-x{padding:2px 7px}.admin-groups-dlg-tools{display:flex;gap:6px;flex-wrap:wrap}.admin-groups-search,.admin-groups-new{flex:1 1 140px;min-width:0;padding:6px 8px;font-size:12px;color:var(--text);background:#94a3b814;border:1px solid var(--border);border-radius:7px}.admin-groups-dlg-list{flex:1 1 auto;min-height:120px;max-height:46vh;overflow-y:auto;border:1px solid var(--border);border-radius:8px;padding:4px}.admin-groups-dlg-row{display:flex;align-items:center;gap:7px;padding:4px 6px;border-radius:6px;font-size:12px;cursor:pointer}.admin-groups-dlg-row:hover{background:#2dd4bf12}.admin-groups-dlg-row input{flex:none}.admin-groups-dlg-key{font-weight:600}.admin-groups-dlg-tr{color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-groups-dlg-count{margin-left:auto;font-size:11px;color:var(--accent);white-space:nowrap}.jitsi-page{display:flex;flex-direction:column;gap:12px}.jitsi-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.jitsi-h1{margin:0 0 2px;font-size:1.25rem}.jitsi-sub{margin:0;max-width:70ch;font-size:.85rem}.jitsi-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:10px 12px;border:1px solid var(--line, #2a2f3a);border-radius:10px;background:var(--panel, rgba(255, 255, 255, .02))}.jitsi-field{display:flex;flex-direction:column;gap:4px;min-width:220px;flex:1 1 240px}.jitsi-field>span{font-size:.78rem;opacity:.75}.jitsi-field input{padding:7px 10px;border-radius:8px;border:1px solid var(--line, #2a2f3a);background:var(--input-bg, rgba(0, 0, 0, .2));color:inherit;font:inherit}.jitsi-field input:disabled{opacity:.6}.jitsi-actions{display:flex;align-items:center;gap:6px}.jitsi-btn{padding:8px 14px;border-radius:8px;border:1px solid var(--line, #2a2f3a);background:transparent;color:inherit;font:inherit;cursor:pointer}.jitsi-btn:hover{border-color:var(--accent, #4a9eff)}.jitsi-btn:disabled{opacity:.5;cursor:not-allowed}.jitsi-btn-primary{background:var(--accent, #2f7fe0);border-color:transparent;color:#fff}.jitsi-btn-ghost{opacity:.85}.jitsi-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;cursor:pointer;border:1px solid var(--line, #2a2f3a);background:transparent;color:inherit}.jitsi-icon-btn:hover{border-color:var(--accent, #4a9eff)}.jitsi-icon-btn.active{border-color:var(--accent, #4a9eff);background:#4a9eff24}.jitsi-icon-btn:disabled{opacity:.45;cursor:not-allowed}.jitsi-badge{align-self:flex-start;padding:3px 8px;border-radius:999px;font-size:.72rem;background:#4a9eff29;border:1px solid rgba(74,158,255,.4)}.jitsi-note{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px dashed var(--line, #2a2f3a);font-size:.85rem}.jitsi-note p{margin:0}.jitsi-stagewrap{position:relative}.jitsi-stage{position:relative;width:100%;border-radius:12px;overflow:hidden;background:#0b0d12;border:1px solid var(--line, #2a2f3a)}.jitsi-stage-page{aspect-ratio:16 / 9;min-height:320px}.jitsi-frame{width:100%;height:100%;border:0;display:block}.jitsi-start{display:flex;flex-direction:column;gap:6px;padding:22px}.jitsi-start h2{margin:0;font-size:1rem}.jitsi-start p{margin:0;font-size:.85rem}.jitsi-start-dim{min-height:120px;justify-content:center}.jitsi-ov{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:16px;background:#080a0edb;color:#e8ecf3}.jitsi-ov p{margin:0;font-size:.82rem}.jitsi-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;opacity:.8;word-break:break-word}.jitsi-float{position:fixed;z-index:9990;display:flex;flex-direction:column;background:#12151c;color:#e8ecf3;border:1px solid #2a2f3a;border-radius:10px;box-shadow:0 18px 48px #0000008c;overflow:hidden}.jitsi-float.hidden{display:none}.jitsi-float-head{display:flex;align-items:center;gap:4px;height:26px;padding:0 4px 0 8px;background:#1a1f29;border-bottom:1px solid #2a2f3a;cursor:grab;user-select:none;touch-action:none;-webkit-user-select:none;-webkit-touch-callout:none}.jitsi-float-head:active{cursor:grabbing}.jitsi-float-title{display:flex;align-items:center;gap:6px;flex:1;min-width:0;font-size:.76rem}.jitsi-float-name{white-space:nowrap}.jitsi-float-room{opacity:.65;font-size:.7rem;padding:1px 6px;border-radius:999px;background:#ffffff14;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jitsi-dot{width:8px;height:8px;border-radius:50%;background:#e23b3b;flex:none}.jitsi-dome-glyph{font-size:13px;line-height:1}.jitsi-float-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:20px;border:0;border-radius:5px;cursor:pointer;background:transparent;color:inherit;font-size:.8rem;line-height:1}.jitsi-float-btn:hover{background:#ffffff1f}.jitsi-float-x:hover{background:#e23b3bd9;color:#fff}.jitsi-float-btn.fs-pending{animation:jitsi-fs-pulse 1.4s ease-in-out infinite}@keyframes jitsi-fs-pulse{0%,to{opacity:1}50%{opacity:.45}}.jitsi-float:fullscreen,.jitsi-float.css-fs{left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border:0;border-radius:0}.jitsi-float:fullscreen .jitsi-float-head,.jitsi-float.css-fs .jitsi-float-head{cursor:default}.jitsi-float:fullscreen .jitsi-float-corner,.jitsi-float:fullscreen .jitsi-float-edge,.jitsi-float.css-fs .jitsi-float-corner,.jitsi-float.css-fs .jitsi-float-edge{display:none}.jitsi-float-body{position:relative;flex:1;min-height:0}.jitsi-stage-float{width:100%;height:100%;border:0;border-radius:0}.jitsi-shield{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;cursor:grabbing}.jitsi-float-corner,.jitsi-float-edge{position:absolute;touch-action:none}.jitsi-float-corner{width:12px;height:12px}.jitsi-float-corner.nw{left:0;top:0;cursor:nwse-resize}.jitsi-float-corner.ne{right:0;top:0;cursor:nesw-resize}.jitsi-float-corner.sw{left:0;bottom:0;cursor:nesw-resize}.jitsi-float-corner.se{right:0;bottom:0;cursor:nwse-resize}.jitsi-float-edge.n,.jitsi-float-edge.s{left:12px;right:12px;height:5px;cursor:ns-resize}.jitsi-float-edge.w,.jitsi-float-edge.e{top:12px;bottom:12px;width:5px;cursor:ew-resize}.jitsi-float-edge.n{top:0}.jitsi-float-edge.s{bottom:0}.jitsi-float-edge.w{left:0}.jitsi-float-edge.e{right:0}.jitsi-window{display:flex;flex-direction:column;height:100vh;background:#0b0d12;color:#e8ecf3}.jitsi-window:fullscreen,.jitsi-window.css-fs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;border-radius:0}.jitsi-window-head{display:flex;align-items:center;gap:6px;height:34px;padding:0 6px 0 12px;background:#12151c;border-bottom:1px solid #2a2f3a;flex:none}.jitsi-stage-window{flex:1;border-radius:0;border:0;min-height:0}@media (max-width: 720px){.jitsi-bar{flex-direction:column;align-items:stretch}.jitsi-actions{justify-content:flex-end}.jitsi-stage-page{aspect-ratio:4 / 3;min-height:260px}}.term-float{position:fixed;display:flex;flex-direction:column;background:#0b1020;border:1px solid #2b3550;border-radius:10px;box-shadow:0 18px 48px #0000008c;overflow:hidden;pointer-events:auto}.term-float.mini-morph{transition:left .28s ease,top .28s ease,width .28s ease,height .28s ease,opacity .28s ease}.term-float.hidden{display:none}.term-float.fs,.term-win.fs{position:fixed!important;right:0!important;bottom:0!important;left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border-radius:0;z-index:100000!important}.term-float-head{display:flex;align-items:center;justify-content:space-between;gap:6px;height:28px;padding:0 4px 0 8px;background:#131a2e;border-bottom:1px solid #2b3550;cursor:move;user-select:none;touch-action:none;-webkit-user-select:none;-webkit-touch-callout:none;flex:0 0 auto}.term-float-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#cbd5e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.term-float-logo{display:block;height:15px;width:15px;flex:0 0 auto;background-color:currentColor;-webkit-mask-image:var(--term-ico-url);mask-image:var(--term-ico-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}@media (prefers-color-scheme: light){.term-float-title,.term-win-title{color:#0b1020}.term-page-title{color:#3a4a63}}.term-float-actions{display:inline-flex;align-items:center;gap:3px}.term-float-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:22px;border:0;border-radius:5px;background:transparent;color:#93a3bb;font-size:12px;line-height:1;cursor:pointer}.term-float-btn:hover{background:#223052;color:#e5e9f0}.term-float-close:hover{background:#b91c1c;color:#fff}.term-float-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.term-handle{position:absolute;z-index:3;touch-action:none}.term-handle.corner{width:14px;height:14px}.term-handle.corner.nw{left:-2px;top:-2px;cursor:nwse-resize}.term-handle.corner.ne{right:-2px;top:-2px;cursor:nesw-resize}.term-handle.corner.sw{left:-2px;bottom:-2px;cursor:nesw-resize}.term-handle.corner.se{right:-2px;bottom:-2px;cursor:nwse-resize}.term-handle.edge.n{left:14px;right:14px;top:-2px;height:6px;cursor:ns-resize}.term-handle.edge.s{left:14px;right:14px;bottom:-2px;height:6px;cursor:ns-resize}.term-handle.edge.w{top:14px;bottom:14px;left:-2px;width:6px;cursor:ew-resize}.term-handle.edge.e{top:14px;bottom:14px;right:-2px;width:6px;cursor:ew-resize}.term-float.fs .term-handle{display:none}.term-groups{display:flex;align-items:center;gap:2px;padding:3px 4px 2px;background:#0b1220;border-bottom:1px solid #1d2947;overflow-x:auto;scrollbar-width:thin;flex:0 0 auto;width:100%;box-sizing:border-box}.term-group{border:1px solid transparent;background:transparent;color:#8fa0b8;border-radius:5px;font-size:11px;padding:2px 7px;white-space:nowrap;cursor:pointer}.term-group:hover{background:#172138;color:#dbe4f0}.term-group.active{background:#1d2942;border-color:#2b3550;color:#e8eef7}.term-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;background:#05070f}.term-tabs{display:flex;align-items:stretch;gap:1px;padding:2px 3px 0;background:#0f1526;border-bottom:1px solid #22304d;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;flex:0 0 auto;width:100%;box-sizing:border-box}.term-tab{display:inline-flex;align-items:center;gap:5px;padding:3px 6px 4px;border:1px solid transparent;border-bottom:0;border-radius:6px 6px 0 0;font-size:11.5px;color:#9fb0c8;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.term-tab:hover{background:#172138;color:#dbe4f0}.term-tab.active{background:#05070f;border-color:#2b3550;color:#e8eef7}.term-tab.locked{color:#64748b;cursor:not-allowed}.term-tab-label{font-family:ui-monospace,Cascadia Mono,monospace}.term-tab-x{border:0;background:transparent;color:#7b8aa1;font-size:13px;line-height:1;padding:0 2px;cursor:pointer}.term-tab-x:hover{color:#ef4444}.term-tab-add{font-size:14px;line-height:1;padding:2px 8px 3px;color:#7f9ec4}.term-tab-add:hover{color:#e8eef7}.term-dot{width:7px;height:7px;border-radius:50%;background:#64748b;flex:0 0 auto}.term-dot.on{background:#16c60c;box-shadow:0 0 5px #16c60cb3}.term-dot.idle{background:#eab308}.term-dot.off{background:#475569}.term-dot.busy{background:#f97316}.term-dot.err{background:#ef4444}.term-dot.lock{background:transparent;box-shadow:inset 0 0 0 1.5px #64748b}.term-tab .term-dot{cursor:help}.term-tools-status .term-dot{width:9px;height:9px;margin-right:6px;display:inline-block;vertical-align:middle}.term-tools-status-txt{vertical-align:middle}.term-tools{display:flex;align-items:center;gap:8px;padding:3px 6px;background:#0b1220;border-bottom:1px solid #1d2947;font-size:11.5px;color:#93a3bb;flex:0 0 auto;width:100%;box-sizing:border-box}.term-tools-name{display:inline-flex;align-items:baseline;gap:6px;color:#e2e8f0;font-family:ui-monospace,Cascadia Mono,monospace}.term-tools-vmid{color:#64748b;font-size:10.5px}.term-tools-cols{flex:0 0 auto;padding:1px 6px;border:1px solid #2b3550;border-radius:5px;color:#8fa0b8;background:#131c31;font-family:ui-monospace,Cascadia Mono,monospace;font-size:10.5px;white-space:nowrap;cursor:help}.term-tools-status{color:#7f8ea3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.term-tools-spacer{flex:1 1 auto}.term-btn{border:1px solid #2b3550;background:#131c31;color:#cbd5e1;border-radius:5px;font-size:11.5px;padding:2px 7px;cursor:pointer}.term-btn:hover:not(:disabled){background:#1d2942;color:#fff}.term-btn:disabled{opacity:.45;cursor:default}.term-btn:has(>svg),.term-btn-power{display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;line-height:1}.term-btn>svg{display:block}.term-btn-power.on{border-color:#1c7f3a;background:#10301d;color:#4ade80}.term-btn-power.on:hover:not(:disabled){background:#164a2a;color:#86efac}.term-stage{position:relative;flex:1 1 auto;min-height:0}.term-pane{position:absolute;top:0;right:0;bottom:0;left:0}.term-pane.hidden{display:none}.term-view{position:relative;width:100%;height:100%}.term-host{width:100%;height:100%;padding:2px 0 0 4px;box-sizing:border-box}.term-host .xterm{height:100%}.term-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px;text-align:center;background:#05070fdb;color:#b7c4d6;font-size:12px}.term-overlay.err{color:#fca5a5}.term-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#64748b;font-size:12px}.term-ssh-pane{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:8px;overflow:auto;background:#05070f;color:#c7d2e0;font-size:11.5px;box-sizing:border-box}.term-ssh-list,.term-ssh-form{min-width:0;display:flex;flex-direction:column;gap:5px}.term-ssh-list{border-right:1px solid #1d2947;padding-right:8px}.term-ssh-empty{color:#64748b;padding:6px 2px;line-height:1.45}.term-ssh-row{display:flex;align-items:center;gap:6px;min-width:0;padding:4px 5px;border:1px solid #1d2947;border-radius:6px;background:#0b1220}.term-ssh-row:hover{border-color:#2b3550}.term-ssh-meta{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1 auto}.term-ssh-name{display:flex;align-items:center;gap:5px;color:#e8eef7;overflow-wrap:anywhere}.term-ssh-flag{font-size:10px;color:#eab308}.term-ssh-flag.lab{color:#f97316;border:1px solid #7c2d12;border-radius:3px;padding:0 3px}.term-ssh-addr{color:#7f8ea3;font-family:ui-monospace,Cascadia Mono,monospace;font-size:10.5px;overflow-wrap:anywhere}.term-ssh-act{flex:0 0 auto;border:1px solid #2b3550;background:#131c31;color:#cbd5e1;border-radius:5px;font-size:12px;line-height:1;padding:3px 6px;cursor:pointer}.term-ssh-act:hover{background:#1d2942;color:#fff}.term-ssh-act.del:hover{background:#7f1d1d;border-color:#b91c1c}.term-ssh-form-title{color:#9fb0c8;font-weight:600;text-transform:uppercase;letter-spacing:.4px;font-size:10.5px}.term-ssh-field{display:flex;flex-direction:column;gap:2px;min-width:0}.term-ssh-field>span{color:#8fa0b8;font-size:10.5px}.term-ssh-field input,.term-ssh-field select,.term-ssh-field textarea{width:100%;box-sizing:border-box;min-width:0;border:1px solid #2b3550;border-radius:5px;background-color:#0b1220;color:#e2e8f0;font-size:11.5px;padding:3px 6px;font-family:inherit}.term-ssh-field select{padding-right:20px}.term-ssh-field textarea{resize:vertical;font-family:ui-monospace,Cascadia Mono,monospace;font-size:10.5px;line-height:1.35;overflow-wrap:anywhere}.term-ssh-field input:focus,.term-ssh-field select:focus,.term-ssh-field textarea:focus{outline:1px solid #3b82f6;border-color:#3b82f6}.term-ssh-two{display:flex;gap:6px;min-width:0}.term-ssh-two .grow{flex:1 1 auto}.term-ssh-two .port{flex:0 0 64px}.term-ssh-check{display:flex;align-items:flex-start;gap:6px;min-width:0;color:#b7c4d6;line-height:1.35}.term-ssh-check.danger span{color:#f0b27a}.term-ssh-check input{flex:0 0 auto;margin-top:2px}.term-ssh-check span{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.term-ssh-check em{color:#7f8ea3;font-style:normal;font-size:10.5px}.term-ssh-note{color:#64748b;font-size:10.5px;line-height:1.35;overflow-wrap:anywhere}.term-ssh-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0;padding-top:2px}.term-ssh-ok{color:#37c871}.term-ssh-err{color:#fca5a5;overflow-wrap:anywhere}.term-win{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:#05070f}.term-win-tb{display:flex;align-items:center;justify-content:space-between;gap:8px;height:30px;padding:0 6px 0 10px;background:#0f1526;border-bottom:1px solid #22304d;-webkit-user-select:none;user-select:none;flex:0 0 auto}.term-win-title{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#cbd5e1}.term-win-actions{display:inline-flex;gap:4px}.term-win-body{display:flex;flex:1 1 auto;min-height:0}@media (max-width: 640px){.term-float{left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border-radius:0}.term-handle{display:none}.term-tab{font-size:11px;padding:4px 6px 5px}.term-tools{flex-wrap:wrap;row-gap:3px}.term-tools-status{width:100%;order:9}.term-ssh-pane{grid-template-columns:minmax(0,1fr);gap:8px}.term-ssh-list{border-right:0;border-bottom:1px solid #1d2947;padding-right:0;padding-bottom:6px}.term-ssh-two{flex-wrap:wrap}.term-ssh-two .port{flex:0 0 100%}}@media (prefers-color-scheme: light){.mini-dome-ico img[src*=terminal]{filter:none drop-shadow(0 1px 1px rgba(0,0,0,.25))}}.term-page{display:flex;flex-direction:column;min-height:0}.term-page.fs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:var(--bg);padding:0;margin:0}.term-page-bar{display:flex;align-items:center;gap:8px;min-height:34px;padding:4px 6px 4px 9px;background:var(--border);border-radius:8px 8px 0 0}.term-page-title{display:inline-flex;align-items:center;gap:6px;min-width:0;font-size:12px;color:var(--muted)}.term-page-ico{display:block;width:14px;height:14px;flex:0 0 auto;background-color:currentColor;-webkit-mask-image:var(--term-ico-url);mask-image:var(--term-ico-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.term-page-btns{margin-left:auto;display:flex;gap:4px;flex:0 0 auto}.cv-iconbtn-sm.term-page-btn.on{background:var(--accent);border-color:var(--accent);color:#06231e}.term-page-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:calc(100vh - 190px);min-height:320px;background:#05070f;border:1px solid var(--border);border-top:0;border-radius:0 0 8px 8px;overflow:hidden}.term-page.fs .term-page-body{height:auto;min-height:0;flex:1 1 auto;border-radius:0;border:0}@media (max-width: 720px){.term-page-bar{flex-wrap:wrap;row-gap:4px}.term-page-body{height:calc(100vh - 230px);min-height:260px}}.act-cell{min-width:150px}.act-mini{display:block;width:120px;height:28px;overflow:visible}.act-mini-empty{display:inline-block;width:120px;height:1px;background:var(--border, #333);opacity:.5}.act-frame{fill:none;stroke:var(--muted, #9aa0a6);stroke-width:1;stroke-linecap:round;vector-effect:non-scaling-stroke}.act-dot{fill:#f59e0b;opacity:.95}.act-dot-failed{fill:#ef4444;opacity:1}.act-dot-g{cursor:help}.act-dot-g:hover .act-dot{fill:#fbbf24;opacity:1;stroke:var(--fg, #e6e6e6);stroke-width:.5}.act-bar-ok,.act-mini-danger .act-bar-ok{fill:var(--accent, #4ea1ff)}.act-bar-failed{fill:#ef4444}.act-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;line-height:1.3}.act-user-link{background:none;border:0;padding:0;font:inherit;color:var(--accent, #4ea1ff);cursor:pointer;text-align:left;text-decoration:underline dotted}.act-user-link:hover{text-decoration:underline solid}.act-chart-wrap{margin:10px 0 4px}.act-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.act-chart-title{font-weight:600;font-size:.95rem}.act-chart-peak{opacity:.75}.act-chart{width:100%;height:auto;display:block}.act-grid{stroke:var(--border, #333);stroke-width:.5;opacity:.5}.act-grid-base{stroke:var(--border, #333);stroke-width:1}.act-value{fill:var(--fg, #e6e6e6);font-size:9px;opacity:.85}.act-label{fill:var(--muted, #9aa0a6);font-size:9px}.act-chart-hint{margin-top:2px}.act-empty{padding:18px 0;text-align:center;color:var(--muted, #9aa0a6)}.act-charts{display:grid;grid-template-columns:1fr;gap:14px;margin:8px 0 4px}@media (min-width: 900px){.act-charts{grid-template-columns:1fr 1fr}}.act-h4{margin:16px 0 4px;font-size:.95rem}.act-strong{color:var(--fg, #e6e6e6)}.act-ok{color:#22c55e}.act-failed{color:#ef4444}.act-small{font-size:.8rem;word-break:break-word}.act-detail{max-width:1100px;width:min(1100px,96vw);max-height:90vh;overflow:auto}.act-detail-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.act-detail-head h3{margin:0}.prov-devices{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.prov-device{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:130px;padding:8px 12px;border:1px solid var(--border, #333);border-radius:8px;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left}.prov-device:hover{border-color:var(--accent, #4ea1ff)}.prov-device.active{border-color:var(--accent, #4ea1ff);box-shadow:inset 0 0 0 1px var(--accent, #4ea1ff)}.prov-device-name{font-weight:600}.prov-device-count{font-size:.8rem;color:var(--muted, #9aa0a6)}.prov-set{border:1px solid var(--border, #333);border-radius:8px;padding:10px 12px;margin:10px 0}.prov-set-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.prov-toggle{display:flex;align-items:center;gap:8px;cursor:pointer}.prov-toggle input{width:16px;height:16px}.prov-why{margin:6px 0 8px}.prov-source code{font-size:.85em}.prov-off td{opacity:.5}.prov-on{width:44px}.prov-action{font-size:.85rem;word-break:break-word}.prov-meta{margin:4px 0}.prov-warn{color:#f59e0b}.prov-editor{width:100%;min-height:320px;margin-top:8px;padding:10px;border:1px solid var(--border, #333);border-radius:8px;background:#7f7f7f0f;color:var(--fg, #e6e6e6);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.45;resize:vertical;white-space:pre;overflow-x:auto;-moz-tab-size:4;tab-size:4}.btn-danger{border-color:#ef4444;color:#ef4444}.btn-danger:hover{background:#ef44441f}@media (max-width: 600px){.prov-device{min-width:100%}.act-detail{width:96vw;max-height:94vh;padding:12px}}.wf-float{position:fixed;display:flex;flex-direction:column;background:#0b1020;border:1px solid #2b3550;border-radius:10px;box-shadow:0 18px 48px #0000008c;overflow:hidden;pointer-events:auto}.wf-float.mini-morph{transition:left .28s ease,top .28s ease,width .28s ease,height .28s ease,opacity .28s ease}.wf-float.hidden{display:none}.wf-float.fs,.wf-win.fs{position:fixed!important;right:0!important;bottom:0!important;left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border-radius:0;z-index:100000!important}.wf-float-head{display:flex;align-items:center;justify-content:space-between;gap:6px;height:28px;padding:0 4px 0 8px;background:#131a2e;border-bottom:1px solid #2b3550;cursor:move;user-select:none;touch-action:none;-webkit-user-select:none;-webkit-touch-callout:none;flex:0 0 auto}.wf-float-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#cbd5e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wf-float-logo{display:block;height:15px;width:15px;flex:0 0 auto;background-color:currentColor;-webkit-mask-image:var(--wf-ico-url);mask-image:var(--wf-ico-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}@media (prefers-color-scheme: light){.wf-float-title,.wf-win-title{color:#0b1020}.wf-page-title{color:#3a4a63}}.wf-float-actions{display:inline-flex;align-items:center;gap:3px}.wf-float-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:22px;border:0;border-radius:5px;background:transparent;color:#93a3bb;font-size:12px;line-height:1;cursor:pointer}.wf-float-btn:hover{background:#223052;color:#e5e9f0}.wf-float-close:hover{background:#b91c1c;color:#fff}.wf-float-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.wf-handle{position:absolute;z-index:3;touch-action:none}.wf-handle.corner{width:14px;height:14px}.wf-handle.corner.nw{left:-2px;top:-2px;cursor:nwse-resize}.wf-handle.corner.ne{right:-2px;top:-2px;cursor:nesw-resize}.wf-handle.corner.sw{left:-2px;bottom:-2px;cursor:nesw-resize}.wf-handle.corner.se{right:-2px;bottom:-2px;cursor:nwse-resize}.wf-handle.edge.n{left:14px;right:14px;top:-2px;height:6px;cursor:ns-resize}.wf-handle.edge.s{left:14px;right:14px;bottom:-2px;height:6px;cursor:ns-resize}.wf-handle.edge.w{top:14px;bottom:14px;left:-2px;width:6px;cursor:ew-resize}.wf-handle.edge.e{top:14px;bottom:14px;right:-2px;width:6px;cursor:ew-resize}.wf-float.fs .wf-handle{display:none}.wf-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;background:#0b1020}.wf-tabs{display:flex;align-items:center;gap:2px;padding:3px 4px 2px;background:#0b1220;border-bottom:1px solid #1d2947;overflow-x:auto;flex:0 0 auto;width:100%;box-sizing:border-box}@supports not selector(::-webkit-scrollbar){.wf-tabs{scrollbar-width:thin}}.wf-tab{display:inline-flex;align-items:center;gap:5px;padding:3px 7px 4px;border:1px solid transparent;border-radius:5px 5px 0 0;color:#9fb0c8;font-size:11.5px;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.wf-tab:hover{background:#172138;color:#dbe4f0}.wf-tab.active{background:#16203a;border-color:#2b3550;border-bottom-color:#16203a;color:#e8eef7}.wf-tab.locked{opacity:.55;cursor:not-allowed}.wf-tab-label{max-width:120px;overflow:hidden;text-overflow:ellipsis}.wf-tab-x{border:0;background:transparent;color:#7f8ea6;font-size:13px;line-height:1;padding:0 1px;cursor:pointer;border-radius:3px}.wf-tab-x:hover{background:#b91c1c;color:#fff}.wf-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto;background:#64748b;display:inline-block}.wf-dot.on{background:#16c60c;box-shadow:0 0 5px #16c60cb3}.wf-dot.idle{background:#eab308}.wf-dot.off{background:#475569}.wf-dot.busy{background:#f97316}.wf-dot.err{background:#ef4444}.wf-dot.lock{background:transparent;box-shadow:inset 0 0 0 1.5px #64748b}.wf-tab .wf-dot{cursor:help}.wf-tools{display:flex;align-items:center;gap:5px;padding:4px 6px;background:#101830;border-bottom:1px solid #1d2947;flex:0 0 auto;width:100%;box-sizing:border-box;font-size:11.5px;color:#93a3bb}.wf-tools-name{font-weight:600;color:#dbe4f0;white-space:nowrap}.wf-tools-host{margin-left:6px;font-weight:400;color:#7f8ea6;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.wf-tools-status{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.wf-tools-status-txt{vertical-align:middle}.wf-tools-spacer{flex:1 1 auto}.wf-tools-warn{color:#fbbf24;white-space:nowrap}.wf-tools-note{color:#6ee7b7;white-space:nowrap}.wf-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:22px;padding:0 7px;border:1px solid #2b3550;border-radius:5px;background:#16203a;color:#c3d0e4;font-size:11.5px;cursor:pointer}.wf-btn:hover:not(:disabled){background:#1e2c4c;color:#fff}.wf-btn:disabled{opacity:.45;cursor:not-allowed}.wf-btn>svg{width:14px;height:14px}.wf-btn-power.on{border-color:#15803d;background:#14532d;color:#86efac}.wf-stage{position:relative;display:flex;flex:1 1 auto;min-height:0;background:#0b1020}.wf-frame{flex:1 1 auto;width:100%;height:100%;border:0;background:#fff}.wf-frame-off{display:none}.wf-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:#0b1020}.wf-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;flex:1 1 auto;padding:18px;text-align:center;color:#8fa0b8;font-size:12.5px}.wf-empty.err{color:#fca5a5}.wf-paused{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;min-width:0;box-sizing:border-box;padding:16px 14px;text-align:center;overflow-wrap:anywhere;color:#8fa0b8;font-size:12.5px}.wf-paused-title{color:#dbe4f0;font-size:13px}.wf-paused-hint{max-width:460px;line-height:1.45}.wf-paused .wf-btn{height:26px;padding:0 12px;margin-top:2px}.wf-win{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:#05070f}.wf-win-tb{display:flex;align-items:center;justify-content:space-between;gap:8px;height:30px;padding:0 6px 0 10px;background:#0f1526;border-bottom:1px solid #22304d;-webkit-user-select:none;user-select:none;flex:0 0 auto}.wf-win-title{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#cbd5e1}.wf-win-actions{display:inline-flex;gap:4px}.wf-win-body{display:flex;flex:1 1 auto;min-height:0}@media (max-width: 640px){.wf-float{left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;border-radius:0}.wf-handle{display:none}.wf-tab{font-size:11px;padding:4px 6px 5px}.wf-tools{flex-wrap:wrap;row-gap:3px}.wf-tools-status{width:100%;order:9}.wf-tools-host{display:none}}@media (prefers-color-scheme: light){.mini-dome-ico img[src*=webfig]{filter:none drop-shadow(0 1px 1px rgba(0,0,0,.25))}}.wf-page{position:relative;display:flex;flex-direction:column;min-height:0}.wf-page.fs{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:100000!important;background:#0b1020}.wf-page-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;background:#0f1526;border:1px solid #22304d;border-bottom:0;border-radius:8px 8px 0 0;margin-bottom:0;flex:0 0 auto}.wf-page-title{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#dbe4f0}.wf-page-ico{display:block;width:16px;height:16px;flex:0 0 auto;background-color:currentColor;-webkit-mask-image:var(--wf-ico-url);mask-image:var(--wf-ico-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.wf-page-btns{display:inline-flex;align-items:center;gap:4px}.cv-iconbtn-sm.wf-page-btn.on{background:#1d2942;border-color:#3b4a6b;color:#e8eef7}.wf-page .wf-tabs{background:#101830}.wf-page-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;border:1px solid #22304d;border-top:0;border-radius:0 0 8px 8px;overflow:hidden;height:calc(100vh - 190px)}.wf-page.fs .wf-page-body{height:calc(100vh - 60px)}@media (max-width: 720px){.wf-page-bar{flex-wrap:wrap;row-gap:6px}.wf-page-body{height:calc(100vh - 220px)}}.wf-page-btn-dark{font-size:13px;line-height:1}.wf-page-note{font-size:11px;color:#e2b33c;min-width:0;overflow-wrap:anywhere}.wfbx-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:12px;background:#03060eb8}.wfbx-modal{display:flex;flex-direction:column;width:min(560px,100%);max-height:min(86vh,720px);border:1px solid #22304d;border-radius:10px;background:#0f1526;color:#dbe4f0;box-shadow:0 18px 48px #0000008c;overflow:hidden}.wfbx-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#131a2e;border-bottom:1px solid #22304d;font-size:14.5px}.wfbx-x{border:1px solid #2b3550;border-radius:6px;background:transparent;color:#93a3bb;font-size:13.5px;line-height:1.4;padding:0 8px;cursor:pointer}.wfbx-x:hover{background:#7f1d1d;border-color:#7f1d1d;color:#fff}.wfbx-body{display:flex;flex-direction:column;gap:9px;min-height:0;padding:11px;overflow:auto;font-size:14.5px}.wfbx-lead{margin:0;color:#c3d0e4;line-height:1.5}.wfbx-url{margin:0}.wfbx-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13.5px;color:#86efac;overflow-wrap:anywhere}.wfbx-os{display:flex;flex-direction:column;gap:6px;min-width:0;padding:8px 9px;border:1px solid #22304d;border-radius:8px;background:#0b1020}.wfbx-os h4{display:flex;align-items:center;gap:6px;margin:0;font-size:13px;color:#93a3bb;text-transform:uppercase;letter-spacing:.03em}.wfbx-logo{display:inline-block;flex:none;width:15px;height:15px;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.wfbx-logo-win{-webkit-mask-image:url(/brand/os-windows.svg);mask-image:url(/brand/os-windows.svg)}.wfbx-logo-mac{-webkit-mask-image:url(/brand/os-macos.svg);mask-image:url(/brand/os-macos.svg)}.wfbx-logo-linux{-webkit-mask-image:url(/brand/os-linux.svg);mask-image:url(/brand/os-linux.svg)}.wfbx-os.wfbx-primary h4{color:#cfe0f0}.wfbx-os.wfbx-primary{border-color:#1f8a5c;background:#08170f}.wfbx-os.wfbx-primary .wfbx-note{color:#a9bdd3}.wfbx-steps{margin:0;padding-left:20px;color:#c3d0e4;font-size:13.5px;line-height:1.6}.wfbx-steps li{margin:0 0 3px;overflow-wrap:anywhere}.wfbx-os.wfbx-primary .wfbx-steps{color:#cfe0f0}a.wfbx-primary,button.wfbx-primary{display:inline-block;padding:9px 14px;border:1px solid #22c55e;border-radius:8px;background:#166534;color:#dcfce7;font-weight:700;text-align:center;text-decoration:none}a.wfbx-primary:hover,button.wfbx-primary:hover{background:#1a7a41}.wfbx-badge{padding:0 6px;border:1px solid #22c55e;border-radius:999px;background:#0b2b18;color:#86efac;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:none}.wfbx-more{min-width:0}.wfbx-more>summary{cursor:pointer;padding:4px 2px;color:#93a3bb;font-size:13.5px;list-style:none}.wfbx-more>summary::-webkit-details-marker{display:none}.wfbx-more>summary:before{content:"▸ ";color:#4f6b8a}.wfbx-more[open]>summary:before{content:"▾ "}.wfbx-more>summary:hover{color:#dbe4f0}.wfbx-more>.wfbx-os{margin-top:6px}.wfbx-pre{margin:0;max-width:100%;padding:8px;border:1px solid #2b3550;border-radius:6px;background:#05070f;overflow-x:auto}.wfbx-pre code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.5;color:#c3d0e4;white-space:pre-wrap;overflow-wrap:anywhere}.wfbx-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.wfbx-note{margin:0;font-size:13.5px;line-height:1.5;color:#9db0c8}.wfbx-warn{color:#fbbf24;font-size:13.5px}.wfbx-zoom{display:flex;align-items:center;gap:2px;flex:none;margin-left:auto;margin-right:6px}.wfbx-zbtn,.wfbx-zpct{border:1px solid #2b3550;border-radius:6px;background:transparent;color:#c3d0e4;font-size:12.5px;font-weight:700;line-height:1.3;padding:1px 7px;cursor:pointer}.wfbx-zpct{min-width:52px;font-weight:600;color:#93a3bb}.wfbx-zbtn:hover,.wfbx-zpct:hover{background:#1b2540;color:#e6eefb}.wfbx-zbtn:disabled{opacity:.4;cursor:default}.wfbx-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between;padding:8px 10px;border-top:1px solid #22304d;background:#131a2e}.wfbx-foot-hint{flex:1 1 55%;min-width:0}.wfbx-foot>.wfbx-row{flex:none;margin-left:auto}.wfbx-unin{padding-top:2px;border-top:1px dashed #2b3550}.wfbx-unin>summary{color:#d9a3a3}.wfbx-unin>summary:hover{color:#f3c0c0}.wfbx-unin>.wfbx-note{margin-top:4px}.wfai-panel-admin{display:flex;flex-direction:column;gap:12px;min-width:0}.wfai-err,.wfai-ok{padding:7px 10px;border-radius:7px;font-size:12.5px;border:1px solid #7f1d1d;background:#3b0f14;color:#fecaca}.wfai-ok{border-color:#15803d;background:#0f2a1b;color:#bbf7d0}.wfai-status{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;color:#93a3bb}.wfai-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;border:1px solid #2b3550;background:#16203a;color:#c3d0e4;font-size:12px}.wfai-badge.on{border-color:#15803d;background:#0f2a1b;color:#86efac}.wfai-badge.off{border-color:#7f1d1d;background:#2a0f14;color:#fca5a5}.wfai-muted{color:#7f8ea6}.wfai-card{border:1px solid #22304d;border-radius:9px;background:#0f1526;overflow:hidden;min-width:0}.wfai-card>header{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:8px 10px;background:#131a2e;border-bottom:1px solid #22304d}.wfai-card>header h3{margin:0;font-size:13px;font-weight:700;color:#dbe4f0}.wfai-card>header .wfai-in-sm{margin-left:auto}.wfai-in-sm{padding:5px 8px;border-radius:6px;border:1px solid #2b3550;background-color:#0b1020;color:#e8eef7;font-size:12.5px;min-width:120px}select.wfai-in-sm{padding-right:22px}.wfai-in-sm.grow{flex:1 1 160px}.wfai-in-sm:focus{outline:none;border-color:#3b4a6b}.wfai-filters{display:flex;flex-wrap:wrap;gap:7px;padding:9px 10px;border-bottom:1px solid #1d2947}.wfai-btn{padding:5px 11px;border-radius:6px;border:1px solid #2b3550;background:#1d2942;color:#dbe4f0;font-size:12.5px;cursor:pointer}.wfai-btn:hover{background:#24345a}.wfai-btn.ghost{background:transparent;color:#93a3bb}.wfai-stats{display:flex;flex-direction:column;gap:6px;padding:9px 10px;border-bottom:1px solid #1d2947}.wfai-stat{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.wfai-stat-title{min-width:84px;font-size:11.5px;color:#7f8ea6;text-transform:uppercase;letter-spacing:.03em}.wfai-stat-items{display:flex;flex-wrap:wrap;gap:5px}.wfai-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;border:1px solid #2b3550;background:#16203a;color:#c3d0e4;font-size:11.5px}.wfai-chip b{color:#86efac;font-weight:700}.wfai-chip.sm{padding:1px 6px;font-size:10.5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.wfai-table-wrap{overflow-x:auto;max-width:100%}.wfai-table{width:100%;border-collapse:collapse;font-size:12.5px}.wfai-table th,.wfai-table td{padding:6px 9px;text-align:left;border-bottom:1px solid #1d2947;vertical-align:top}.wfai-table th{color:#93a3bb;font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.wfai-table tr.bad td{background:#2a0f14}.wfai-nowrap{white-space:nowrap}.wfai-q{display:inline-block;max-width:46ch;overflow-wrap:anywhere}.wfai-switch{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.wfai-switch input:disabled+span{cursor:default;opacity:.75}.wfai-switch em{color:#7f8ea6;font-style:normal;font-size:11px}.wfai-exp-btn{padding:3px 9px;border-radius:6px;border:1px solid #2b3550;background:transparent;color:#93a3bb;font-size:12px;white-space:nowrap;cursor:pointer}.wfai-exp-btn:hover{background:#1d2942;color:#dbe4f0}.wfai-exp-btn.on{background:#1d2942;border-color:#3b4a6b;color:#e8eef7}.wfai-exp-row>td{background:#0b1020;padding:10px}.wfai-acl{display:flex;flex-direction:column;gap:10px;min-width:0}.wfai-acl-block{display:flex;flex-direction:column;gap:7px;min-width:0;padding:9px 10px;border:1px solid #22304d;border-radius:8px;background:#0f1526}.wfai-acl-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:12.5px;color:#dbe4f0}.wfai-acl-hint{margin:0;font-size:11.5px;line-height:1.45;color:#7f8ea6}.wfai-master{padding:5px 7px;border-radius:6px;background:#131a2e}.wfai-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;padding:1px 5px;border-radius:4px;background:#0b1020;border:1px solid #22304d;color:#c3d0e4;overflow-wrap:anywhere}.wfai-rules{display:flex;flex-direction:column;gap:4px;min-width:0}.wfai-rule{display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-width:0;padding:4px 6px;border-radius:6px;background:#131a2e;font-size:12px}.wfai-rule-name{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c3d0e4}.wfai-rule-dyn{border-left:3px solid #2f6f4f;background:#10201a;padding:5px 7px}.wfai-rule-dyn.off{border-left-color:#6b7280;background:#161a24}.wfai-dyn-badge{flex:0 0 auto;padding:0 5px;border:1px solid #2f6f4f;border-radius:999px;background:#143024;color:#86efac;font-size:10px;line-height:1.6;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.wfai-rule-dyn.off .wfai-dyn-badge{border-color:#4b5563;background:#1f2430;color:#9ca3af}.wfai-dyn-why{font-size:11px;font-style:normal;color:#7f8ea6}.wfai-dyn-switch{flex:1 1 100%;padding:4px 6px;border-radius:6px;background:#0d1a16}.wfai-rule-dyn.off .wfai-dyn-switch{background:#131824}.wfai-dyn-hint{flex:1 1 100%;font-size:11px;line-height:1.4;color:#d8b46a}.wfai-x{margin-left:auto;padding:0 6px;border:1px solid #7f1d1d;border-radius:5px;background:transparent;color:#fca5a5;font-size:12px;line-height:1.5;cursor:pointer}.wfai-x:hover:not(:disabled){background:#7f1d1d;color:#fff}.wfai-x:disabled{opacity:.45;cursor:not-allowed}.wfai-add{display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-width:0}.wfai-add .wfai-in-sm{flex:1 1 130px;min-width:0}.wfai-limit{display:inline-flex;align-items:center;gap:6px;min-width:0}.wfai-in-sm.num{flex:0 0 auto;width:76px;min-width:0}@media (max-width: 720px){.wfai-card>header .wfai-in-sm{margin-left:0}.wfai-q{max-width:26ch}.wfai-stat-title{min-width:0}.wfai-exp-row>td{padding:8px}.wfai-add .wfai-in-sm,.wfai-add .wfai-in-sm.grow,.wfai-add .wfai-btn{flex:1 1 100%}.wfai-limit,.wfai-in-sm.num{flex:1 1 auto;width:auto}.wfai-rule-dyn{align-items:flex-start;row-gap:4px}.wfai-rule-dyn .wfai-rule-name,.wfai-rule-dyn .wfai-code{flex:1 1 100%;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.wfai-dyn-why,.wfai-dyn-switch{flex:1 1 100%}.wfai-dyn-switch span{overflow-wrap:anywhere}}.wfai-ctx-body{display:flex;flex-direction:column;gap:10px;padding:10px;min-width:0}.wfai-ctx-body .wfai-acl-block{background:#101728}.wfai-ctx-intro{flex:1 1 100%;font-size:11.5px;line-height:1.45}.wfai-ctx-head-btn{margin-left:auto}.wfai-ctx-file{min-width:0}.wfai-ctx-count{margin-left:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;color:#93a3bb;white-space:nowrap}.wfai-ctx-count.over{color:#fca5a5;font-weight:700}.wfai-ctx-note{font-size:11px;line-height:1.4;color:#d8b46a;overflow-wrap:anywhere}.wfai-ctx-note.over{color:#fca5a5}.wfai-ctx-pre{margin:0;padding:8px 9px;border:1px solid #22304d;border-radius:7px;background:#0b1020;color:#c3d0e4;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;overflow-y:auto;overflow-x:hidden}.wfai-ctx-pre:focus-visible{outline:1px solid #3b4a6b}.wfai-ctx-area{width:100%;min-width:0;box-sizing:border-box;padding:7px 8px;border:1px solid #2b3550;border-radius:7px;background:#0b1020;color:#e8eef7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.5;resize:vertical;overflow-wrap:anywhere}.wfai-ctx-area:focus{outline:none;border-color:#3b4a6b}.wfai-ctx-area.over{border-color:#7f1d1d}.wfai-ctx-docs{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;padding:7px 9px;border:1px solid #22304d;border-radius:8px;background:#101728;font-size:12px;color:#dbe4f0}.wfai-ctx-docs .wfai-ctx-note{flex:1 1 100%}@media (max-width: 720px){.wfai-ctx-body{padding:8px}.wfai-ctx-head-btn{margin-left:0;flex:1 1 100%}.wfai-ctx-count{margin-left:0}.wfai-ctx-body .wfai-acl-head .wfai-ctx-note{flex:1 1 100%}.wfai-ctx-pre{max-height:200px;font-size:11px}.wfai-ctx-docs{display:block}.wfai-ctx-docs .wfai-muted,.wfai-ctx-docs .wfai-ctx-note{display:block;margin-top:3px;overflow-wrap:anywhere}}.sw-loader{--sw-unit: 1;--sw-blade-rgb: 45, 212, 191;--sw-blade-color: rgb(var(--sw-blade-rgb));--sw-glow: 1;--sw-flash-max: 1.38;--sw-flash-min: .9;--sw-wave-dur: 1.1s;--sw-wave-glow-dur: .7s;--sw-wave2-rgb: 45, 120, 212;--sw-wave2-dur: .38s;--sw-wave2-size: 8%;--sw-wave2-op: .95;--sw-wave2-every: 3;--sw-wave2-gate: sw-wave2-gate-3;--sw-spin-dur: 2.6s;--sw-spin-play: running;--sw-tilt: 20deg;--sw-swing: 45deg;--sw-metal-hi: #dfe4ec;--sw-metal-mid: #8b93a3;--sw-metal-lo: #39404e;--sw-metal-dark: #151a24;--sw-ignite: .8s;--sw-hum: .9s;--sw-blade-w: calc(11px * var(--sw-unit));--sw-blade-h: calc(168px * var(--sw-unit));--sw-hilt-w: var(--sw-blade-w);--sw-hilt-h: calc(58px * var(--sw-unit));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(30px * var(--sw-unit));padding:24px 16px;text-align:center}.sw-loader--sm{--sw-unit: .6}.sw-loader--lg{--sw-unit: 1.6}.sw-loader--full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:radial-gradient(1200px 600px at 50% 38%,#16224a 0%,var(--bg, #0b1020) 60%)}.sw-saber{position:relative;display:flex;flex-direction:column;align-items:center}.sw-blade{position:relative;width:var(--sw-blade-w);height:var(--sw-blade-h);border-radius:calc(var(--sw-blade-w) * .5) calc(var(--sw-blade-w) * .5) calc(var(--sw-blade-w) * .28) calc(var(--sw-blade-w) * .28);background:linear-gradient(90deg,rgba(var(--sw-blade-rgb),.55) 0%,var(--sw-blade-color) 22%,#ffffff 50%,var(--sw-blade-color) 78%,rgba(var(--sw-blade-rgb),.55) 100%);box-shadow:0 0 calc(6px * var(--sw-unit) * var(--sw-glow)) rgba(var(--sw-blade-rgb),.9),0 0 calc(18px * var(--sw-unit) * var(--sw-glow)) rgba(var(--sw-blade-rgb),.65),0 0 calc(44px * var(--sw-unit) * var(--sw-glow)) rgba(var(--sw-blade-rgb),.4),0 0 calc(84px * var(--sw-unit) * var(--sw-glow)) rgba(var(--sw-blade-rgb),.18);transform-origin:50% 100%;animation:sw-ignite var(--sw-ignite) cubic-bezier(.42,.06,.28,1) both,sw-flash var(--sw-hum) linear infinite;margin-bottom:calc(var(--sw-unit) * -3px);z-index:1}.sw-blade:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.55) 36%,#ffffff 50%,rgba(255,255,255,.55) 64%,transparent 100%);animation:sw-hum var(--sw-hum) ease-in-out infinite}.sw-sheen{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,#fff0,#fff0 30%,#ffffffe6,#fff0 70%,#fff0);background-size:100% 260%;background-position:0% 0%;mix-blend-mode:screen;animation:sw-sheen var(--sw-wave-dur, 1.1s) linear infinite,sw-sheen-glow var(--sw-wave-glow-dur, .7s) ease-in-out infinite;pointer-events:none}@keyframes sw-sheen{0%{background-position:0% 0%}to{background-position:0% 100%}}@keyframes sw-sheen-glow{0%,to{opacity:.2}50%{opacity:1}}.sw-sheen-2,.sw-sheen-3{background:linear-gradient(180deg,rgba(var(--sw-wave2-rgb),0),rgba(var(--sw-wave2-rgb),0) calc(50% - var(--sw-wave2-size, 8%) / 2),rgba(var(--sw-wave2-rgb),var(--sw-wave2-op, .95)) 50%,rgba(var(--sw-wave2-rgb),0) calc(50% + var(--sw-wave2-size, 8%) / 2),rgba(var(--sw-wave2-rgb),0));background-size:100% 260%;background-position:0% 0%;mix-blend-mode:normal;opacity:var(--sw-wave2-op, .95)}.sw-sheen-2{animation:sw-wave2 var(--sw-wave2-dur, .38s) linear infinite}@keyframes sw-wave2{0%{background-position:0% 0%}to{background-position:0% 100%}}@keyframes sw-wave2-gate-2{0%,50%{opacity:var(--sw-wave2-op, .95)}50.01%,to{opacity:0}}@keyframes sw-wave2-gate-3{0%,33.33%{opacity:var(--sw-wave2-op, .95)}33.34%,to{opacity:0}}@keyframes sw-wave2-gate-4{0%,25%{opacity:var(--sw-wave2-op, .95)}25.01%,to{opacity:0}}@keyframes sw-wave2-gate-5{0%,20%{opacity:var(--sw-wave2-op, .95)}20.01%,to{opacity:0}}@keyframes sw-wave2-gate-6{0%,16.66%{opacity:var(--sw-wave2-op, .95)}16.67%,to{opacity:0}}.sw-sheen-3{animation-name:sw-wave2,var(--sw-wave2-gate, sw-wave2-gate-3);animation-duration:var(--sw-wave2-dur, .38s),calc(var(--sw-wave2-dur, .38s) * var(--sw-wave2-every, 3));animation-timing-function:linear,linear;animation-iteration-count:infinite,infinite;animation-delay:calc(var(--sw-wave2-dur, .38s) * -.5),0ms}.sw-blade:after{content:"";position:absolute;top:-10%;right:-120%;bottom:-10%;left:-120%;z-index:-1;background:radial-gradient(closest-side,rgba(var(--sw-blade-rgb),calc(.42 * var(--sw-glow))),rgba(var(--sw-blade-rgb),calc(.12 * var(--sw-glow))) 55%,transparent 78%);animation:sw-breathe var(--sw-hum) ease-in-out infinite;pointer-events:none}.sw-hilt{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;width:var(--sw-hilt-w);height:var(--sw-hilt-h);border-radius:calc(var(--sw-unit) * 5px);background:linear-gradient(90deg,var(--sw-metal-dark) 0%,var(--sw-metal-mid) 20%,var(--sw-metal-hi) 40%,var(--sw-metal-lo) 62%,var(--sw-metal-dark) 100%);box-shadow:inset 0 0 0 1px #ffffff12,0 10px 24px #0000008c}.sw-saber{transform-origin:50% 100%;transform:rotate(calc(-1 * var(--sw-tilt, 20deg)));animation:sw-strike var(--sw-spin-dur, 2.6s) ease-in-out infinite alternate;animation-play-state:var(--sw-spin-play, running);will-change:transform}@keyframes sw-strike{0%{transform:rotate(calc(-1 * var(--sw-tilt, 20deg)))}to{transform:rotate(calc(var(--sw-swing, 45deg) - var(--sw-tilt, 20deg)))}}.sw-emitter{width:100%;height:17%;border-radius:calc(var(--sw-unit) * 4px) calc(var(--sw-unit) * 4px) calc(var(--sw-unit) * 2px) calc(var(--sw-unit) * 2px);background:linear-gradient(90deg,var(--sw-metal-lo) 0%,var(--sw-metal-hi) 45%,var(--sw-metal-mid) 70%,var(--sw-metal-dark) 100%);box-shadow:0 calc(var(--sw-unit) * -1px) calc(7px * var(--sw-unit)) rgba(var(--sw-blade-rgb),.75)}.sw-grip{flex:1;width:100%;background:repeating-linear-gradient(180deg,#00000080 0,#00000080 2px,#ffffff12 2px,#ffffff12 5px),linear-gradient(90deg,var(--sw-metal-dark) 0%,var(--sw-metal-mid) 40%,var(--sw-metal-lo) 65%,var(--sw-metal-dark) 100%)}.sw-pommel{width:100%;height:15%;border-radius:calc(var(--sw-unit) * 3px) calc(var(--sw-unit) * 3px) calc(var(--sw-unit) * 6px) calc(var(--sw-unit) * 6px);background:linear-gradient(90deg,var(--sw-metal-dark) 0%,var(--sw-metal-mid) 45%,var(--sw-metal-lo) 75%,var(--sw-metal-dark) 100%)}.sw-hilt:after{content:"";position:absolute;top:42%;right:calc(var(--sw-unit) * 1px);width:calc(var(--sw-unit) * 4px);height:calc(var(--sw-unit) * 13px);border-radius:calc(var(--sw-unit) * 3px);background:linear-gradient(180deg,#f87171,#b91c1c);box-shadow:0 0 calc(6px * var(--sw-unit)) #f871718c}.sw-label{margin:0;font-size:14px;letter-spacing:.04em;color:var(--muted, #8fa3c0)}.sw-loader--sm .sw-label{font-size:12px}.sw-loader--lg .sw-label{font-size:15px}@keyframes sw-ignite{0%{transform:translateY(calc((var(--sw-hilt-h) - 4px * var(--sw-unit)))) scaleY(.02);opacity:0}10%{transform:translateY(calc((var(--sw-hilt-h) - 4px * var(--sw-unit)))) scaleY(.02);opacity:1}70%{transform:translateY(0) scaleY(1.06)}to{transform:translateY(0) scaleY(1)}}@keyframes sw-hum{0%,to{opacity:.4}8%{opacity:1}22%{opacity:.5}50%{opacity:.38}58%{opacity:1}74%{opacity:.5}}@keyframes sw-flash{0%,to{filter:brightness(var(--sw-flash-min, .9))}8%{filter:brightness(var(--sw-flash-max, 1.38))}22%{filter:brightness(.98)}50%{filter:brightness(calc(var(--sw-flash-min, .9) - .02))}58%{filter:brightness(var(--sw-flash-max, 1.38))}74%{filter:brightness(.98)}}@keyframes sw-breathe{0%,to{opacity:.2;transform:scale(.96)}8%{opacity:1;transform:scale(1.1)}22%{opacity:.35;transform:scale(1)}50%{opacity:.18;transform:scale(.95)}58%{opacity:1;transform:scale(1.1)}74%{opacity:.35;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.sw-saber,.sw-blade,.sw-blade:before,.sw-blade:after,.sw-sheen,.sw-hilt:after{animation:none}.sw-blade{transform:scaleY(1);opacity:1}.sw-sheen{animation:none;opacity:0}.sw-blade:before{opacity:.92}.sw-blade:after{opacity:.7}}.swp-stage{margin-top:8px}.swp-live{display:flex;justify-content:center;padding:8px 0 4px}.swp-controls{display:grid;grid-template-columns:1fr;gap:2px 18px;margin:10px 0 4px;max-width:620px}@media (min-width: 760px){.swp-controls{grid-template-columns:1fr 1fr}}.swp-ctl{display:grid;grid-template-columns:1fr 130px 74px;align-items:center;gap:10px;font-size:13px;color:var(--text);padding:3px 0}.swp-ctl-label{color:var(--muted);font-size:12.5px}.swp-ctl input[type=range]{width:100%;accent-color:var(--accent, #2dd4bf);cursor:pointer}.swp-ctl-val{display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--text)}.swp-swatch{width:12px;height:12px;border-radius:3px;border:1px solid rgba(255,255,255,.35);flex:0 0 auto}.swp-actions{display:flex;gap:10px;max-width:520px;margin-top:12px}.swp-actions .btn{flex:1 1 0}.swp-btn-2{background:transparent;border:1px solid var(--border);color:var(--text);font-weight:600}.swp-btn-2:hover{background:#ffffff0f}.swp-diag{margin:12px 0 16px;font-size:12px;color:var(--muted)}.swp-diag b{color:var(--accent, #2dd4bf);font-weight:600}.swp-diag-warn b{color:var(--error, #f87171)}:root{--sb-w: 8px;--sb-w-widget: 4px;--sb-w-dock: var(--sb-w-widget);--sb-thumb: rgba(143, 163, 192, .35);--sb-thumb-hover: rgba(143, 163, 192, .62);--sb-track: transparent}@supports not selector(::-webkit-scrollbar){.wf-page,.wf-page *,.wf-win,.wf-win *,.topo-page,.topo-page *,.topo-win,.topo-win *,.topo-graph-scroll,.topo-graph-scroll *{scrollbar-width:thin;scrollbar-color:var(--sb-thumb) var(--sb-track)}}.wf-page::-webkit-scrollbar,.wf-page ::-webkit-scrollbar,.wf-win::-webkit-scrollbar,.wf-win ::-webkit-scrollbar,.topo-page::-webkit-scrollbar,.topo-page ::-webkit-scrollbar,.topo-win::-webkit-scrollbar,.topo-win ::-webkit-scrollbar,.topo-graph-scroll::-webkit-scrollbar,.topo-graph-scroll ::-webkit-scrollbar{width:var(--sb-w);height:var(--sb-w)}.wf-page::-webkit-scrollbar-track,.wf-page ::-webkit-scrollbar-track,.wf-win::-webkit-scrollbar-track,.wf-win ::-webkit-scrollbar-track,.topo-page::-webkit-scrollbar-track,.topo-page ::-webkit-scrollbar-track,.topo-win::-webkit-scrollbar-track,.topo-win ::-webkit-scrollbar-track,.topo-graph-scroll::-webkit-scrollbar-track,.topo-graph-scroll ::-webkit-scrollbar-track{background:var(--sb-track)}.wf-page::-webkit-scrollbar-thumb,.wf-page ::-webkit-scrollbar-thumb,.wf-win::-webkit-scrollbar-thumb,.wf-win ::-webkit-scrollbar-thumb,.topo-page::-webkit-scrollbar-thumb,.topo-page ::-webkit-scrollbar-thumb,.topo-win::-webkit-scrollbar-thumb,.topo-win ::-webkit-scrollbar-thumb,.topo-graph-scroll::-webkit-scrollbar-thumb,.topo-graph-scroll ::-webkit-scrollbar-thumb{background-color:var(--sb-thumb);border-radius:4px}.wf-page::-webkit-scrollbar-thumb:hover,.wf-page ::-webkit-scrollbar-thumb:hover,.wf-win ::-webkit-scrollbar-thumb:hover,.topo-page ::-webkit-scrollbar-thumb:hover,.topo-win ::-webkit-scrollbar-thumb:hover,.topo-graph-scroll ::-webkit-scrollbar-thumb:hover{background-color:var(--sb-thumb-hover)}.wf-page::-webkit-scrollbar-corner,.wf-win::-webkit-scrollbar-corner,.topo-page ::-webkit-scrollbar-corner,.topo-win ::-webkit-scrollbar-corner,.topo-graph-scroll::-webkit-scrollbar-corner{background:transparent}@supports not selector(::-webkit-scrollbar){.wf-float,.wf-float *,.topo-pip,.topo-pip *{scrollbar-width:thin;scrollbar-color:var(--sb-thumb) var(--sb-track)}}.wf-float::-webkit-scrollbar,.wf-float ::-webkit-scrollbar,.topo-pip::-webkit-scrollbar,.topo-pip ::-webkit-scrollbar{width:var(--sb-w-widget);height:var(--sb-w-widget)}.wf-float::-webkit-scrollbar-track,.wf-float ::-webkit-scrollbar-track,.topo-pip::-webkit-scrollbar-track,.topo-pip ::-webkit-scrollbar-track{background:var(--sb-track)}.wf-float::-webkit-scrollbar-thumb,.wf-float ::-webkit-scrollbar-thumb,.topo-pip::-webkit-scrollbar-thumb,.topo-pip ::-webkit-scrollbar-thumb{background-color:var(--sb-thumb);border-radius:4px}.wf-float::-webkit-scrollbar-thumb:hover,.wf-float ::-webkit-scrollbar-thumb:hover,.topo-pip ::-webkit-scrollbar-thumb:hover{background-color:var(--sb-thumb-hover)}.wf-float::-webkit-scrollbar-corner,.topo-pip ::-webkit-scrollbar-corner{background:transparent}.dock-box{position:fixed;border:1px solid var(--border);background:linear-gradient(180deg,#141b30eb,#0b1020f5);box-shadow:0 0 0 1px #2dd4bf0f,0 14px 40px #00000073;pointer-events:none;animation:dock-in .16s ease-out}.dock-box--left{border-left:0;border-radius:0 12px 12px 0}.dock-box--right{border-right:0;border-radius:12px 0 0 12px}.dock-box--bottom{border-bottom:0;border-radius:12px 12px 0 0}.dock-box--join-below{border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.dock-box--join-above{border-top-left-radius:0;border-top-right-radius:0}@keyframes dock-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.dock-phantom{position:fixed;pointer-events:none;border:2px dashed var(--accent);border-radius:12px;background:#2dd4bf1a;animation:dock-pulse 1.2s ease-in-out infinite}.dock-phantom--box{border-style:solid;border-color:#2dd4bf8c;background:#2dd4bf0f;animation:none}.dock-phantom--line{border:0;border-radius:3px;background:var(--accent);box-shadow:0 0 10px #2dd4bfcc;animation:none}@keyframes dock-pulse{0%,to{opacity:.75}50%{opacity:1}}.dock-grip-edge,.dock-split{position:fixed;display:flex;align-items:center;justify-content:center;background:transparent;touch-action:none;-webkit-user-select:none;user-select:none}.dock-grip-edge--left,.dock-grip-edge--right{cursor:col-resize}.dock-grip-edge--bottom{cursor:row-resize}.dock-grip-bar{display:block;border-radius:3px;background:var(--border);transition:background .12s ease,box-shadow .12s ease}.dock-grip-edge--left .dock-grip-bar,.dock-grip-edge--right .dock-grip-bar{width:3px;height:46px}.dock-grip-edge--bottom .dock-grip-bar{width:46px;height:3px}.dock-grip-edge--stack{cursor:row-resize}.dock-grip-edge--stack .dock-grip-bar{width:46px;height:3px}.dock-grip-edge:hover .dock-grip-bar,.dock-grip-edge.hot .dock-grip-bar{background:var(--accent);box-shadow:0 0 8px #2dd4bfd9}.dock-split{cursor:row-resize}.dock-split--bottom{cursor:col-resize}.dock-split-bar{display:block;border-radius:3px;background:transparent;transition:background .12s ease}.dock-split:hover .dock-split-bar,.dock-split.hot .dock-split-bar{background:var(--accent);box-shadow:0 0 8px #2dd4bfb3}.dock-menu{position:fixed;min-width:190px;padding:6px;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:0 18px 48px #0009}.dock-menu-title{padding:4px 8px 6px;font-size:.74rem;font-weight:700;color:var(--muted);border-bottom:1px solid var(--border);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 8px;border:0;border-radius:7px;background:none;color:var(--text);font-size:.82rem;text-align:left;cursor:pointer}.dock-menu-item:hover{background:#2dd4bf24;color:var(--accent)}.jitsi-float.dock-docked,.dsh-float.dock-docked,.cv-float.dock-docked,.term-float.dock-docked,.wf-float.dock-docked,.topo-pip.dock-docked{border:0;border-radius:0;box-shadow:none}.jitsi-float.dock-docked .jitsi-float-corner,.jitsi-float.dock-docked .jitsi-float-edge,.dsh-float.dock-docked .dsh-float-corner,.dsh-float.dock-docked .dsh-float-edge,.cv-float.dock-docked .cv-float-corner,.cv-float.dock-docked .cv-float-edge,.term-float.dock-docked .term-float-corner,.term-float.dock-docked .term-float-edge,.wf-float.dock-docked .wf-float-corner,.wf-float.dock-docked .wf-float-edge,.topo-pip.dock-docked .topo-pip-corner,.topo-pip.dock-docked .topo-pip-edge{display:none}.jitsi-float.dock-docked .jitsi-float-head,.dsh-float.dock-docked .dsh-float-head,.cv-float.dock-docked .cv-float-head,.term-float.dock-docked .term-float-head,.wf-float.dock-docked .wf-float-head,.topo-pip.dock-docked .topo-pip-head{cursor:grab}.jitsi-float.dock-docked:before,.dsh-float.dock-docked:before,.cv-float.dock-docked:before,.term-float.dock-docked:before,.wf-float.dock-docked:before,.topo-pip.dock-docked:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:34px;height:3px;border-radius:0 0 3px 3px;background:#2dd4bf73;pointer-events:none;z-index:4}@media (max-width: 720px){.dock-box--left,.dock-box--right{max-width:78vw}}.settings-layout-wrap{position:relative}.settings-layout-row{display:flex;align-items:center;gap:8px;text-align:left}.settings-layout-row.on{color:var(--accent);border-color:var(--accent)}.settings-layout-caret{margin-left:auto;opacity:.7}.layout-flyout{position:absolute;top:-8px;right:calc(100% + 10px);width:286px;max-width:86vw;padding:10px;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:0 16px 40px #0000008c;z-index:70}.layout-flyout-head{margin-bottom:8px}.layout-flyout-title{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:1.1px}.layout-flyout-hint{display:block;margin-top:2px;font-size:11px;color:var(--muted)}.layout-list{max-height:208px;overflow-y:auto;margin-bottom:8px}.layout-empty{padding:10px 6px;font-size:12px;color:var(--muted);text-align:center}.layout-item{display:flex;align-items:stretch;gap:4px}.layout-item+.layout-item{margin-top:4px}.layout-item-main{flex:1;display:flex;align-items:center;gap:8px;min-width:0;padding:6px 8px;background:none;border:1px solid transparent;border-radius:8px;color:var(--text);font-size:12.5px;font-family:inherit;text-align:left;cursor:pointer}.layout-item-main:hover{border-color:var(--accent);color:var(--accent)}.layout-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layout-item-del{flex:0 0 auto;width:28px;background:none;border:1px solid transparent;border-radius:8px;color:var(--muted);cursor:pointer;font-size:12px}.layout-item-del:hover{color:var(--error);border-color:var(--error)}.layout-thumb{position:relative;flex:0 0 auto;width:30px;height:22px;border:1px solid var(--border);border-radius:4px}.layout-thumb-bar{position:absolute;background:var(--accent);opacity:.75}.layout-thumb-bar.left{left:0;top:0;bottom:0;width:5px;border-radius:3px 0 0 3px}.layout-thumb-bar.right{right:0;top:0;bottom:0;width:5px;border-radius:0 3px 3px 0}.layout-thumb-bar.bottom{left:0;right:0;bottom:0;height:5px;border-radius:0 0 3px 3px}.layout-thumb-n{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:var(--muted)}.layout-save{display:flex;gap:6px}.layout-save-input{flex:1;min-width:0;background:#0b102099;border:1px solid var(--border);border-radius:8px;padding:6px 8px;color:var(--text);font-size:12.5px;font-family:inherit}.layout-save-input:focus{outline:none;border-color:var(--accent)}.layout-save-btn{flex:0 0 auto;padding:6px 12px;background:var(--accent);border:0;border-radius:8px;color:#06231e;font-size:12.5px;font-weight:700;font-family:inherit;cursor:pointer}.layout-save-btn:hover{background:var(--accent-dim)}.layout-foot{display:flex;align-items:center;gap:8px;margin-top:8px}.layout-clear{background:none;border:1px solid var(--border);border-radius:8px;padding:5px 10px;color:var(--muted);font-size:12px;font-family:inherit;cursor:pointer}.layout-clear:hover{color:var(--error);border-color:var(--error)}.layout-flash{font-size:11.5px;color:var(--accent)}.layout-tip{margin-top:8px;font-size:11px;line-height:1.35;color:var(--muted)}.layout-tip--dim{opacity:.75}@media (max-width: 720px){.layout-flyout{position:static;width:100%;max-width:none;margin-top:6px}}:root{--wd-head-h: 14px;--wd-head-ico: 11px}.dock-docked .jitsi-float-head,.dock-docked .dsh-float-head,.dock-docked .cv-float-head,.dock-docked .term-float-head,.dock-docked .wf-float-head,.dock-docked .topo-pip-head{height:var(--wd-head-h);min-height:var(--wd-head-h);flex:0 0 var(--wd-head-h);padding-top:0;padding-bottom:0;align-items:center;overflow:hidden}.dock-docked .jitsi-float-btn,.dock-docked .dsh-float-btn,.dock-docked .cv-float-btn,.dock-docked .cv-float-min,.dock-docked .cv-float-close,.dock-docked .term-float-btn,.dock-docked .wf-float-btn,.dock-docked .topo-pip-btn,.dock-docked .topo-pip-close{height:var(--wd-head-h);min-height:0;padding:0 2px;font-size:var(--wd-head-ico);line-height:1}.dock-docked .jitsi-float-btn svg,.dock-docked .dsh-float-btn svg,.dock-docked .cv-float-btn svg,.dock-docked .term-float-btn svg,.dock-docked .wf-float-btn svg,.dock-docked .topo-pip-btn svg,.dock-docked .topo-pip-close svg{width:var(--wd-head-ico);height:var(--wd-head-ico)}.dock-docked .min-glyph{transform:translateY(-2px);font-size:11px}.dock-docked .jitsi-title-ico,.dock-docked .jitsi-dome-ico,.dock-docked .cv-float-ico,.dock-docked .term-float-logo,.dock-docked .wf-float-logo,.dock-docked .topo-pip-logo{height:var(--wd-head-ico);width:var(--wd-head-ico);flex:0 0 auto}.jitsi-float-title,.dsh-float-title,.cv-float-title,.term-float-title,.wf-float-title,.topo-pip-title{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-docked .jitsi-float-title,.dock-docked .dsh-float-title,.dock-docked .cv-float-title,.dock-docked .term-float-title,.dock-docked .wf-float-title,.dock-docked .topo-pip-title{font-size:11px;line-height:1}.jitsi-float-name,.dsh-float-name,.cv-float-name,.cv-float-num,.jitsi-float-room,.topo-pip-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.jitsi-float-head>.jitsi-float-btn,.dsh-float-head>.dsh-float-btn,.cv-float-btns,.term-float-actions,.wf-float-actions,.topo-pip-actions{flex:0 0 auto}.dock-box--top{border-top:0;border-radius:0 0 12px 12px;background:linear-gradient(180deg,#0b1020f5,#141b30eb)}.dock-grip-edge--top{cursor:row-resize}.dock-grip-edge--top .dock-grip-bar{width:46px;height:3px}.dock-split--top{cursor:col-resize}.topbar.dock-hide-brand .brand{display:flex}.topbar.dock-hide-brand .brand-col{display:none}.topbar.dock-hide-brand .brand-shield{height:20px}.topbar.dock-hide-brand .brand-logo-btn{padding:2px 3px}.topbar.dock-narrow{row-gap:3px;margin-bottom:6px;align-items:center}.topbar.dock-narrow .nav-link{padding:2px 6px;font-size:12.5px;border-radius:6px}.topbar.dock-narrow .nav-links{gap:2px}.topbar.dock-narrow .nav-ico-mask,.topbar.dock-narrow .nav-ico svg{height:12px;width:12px}.topbar.dock-narrow .lang-toggle,.topbar.dock-narrow .settings-toggle,.topbar.dock-narrow .user-btn,.topbar.dock-narrow .logout-ico{padding:2px 6px}.topbar.dock-narrow .lang-toggle img{width:16px}.topbar.dock-narrow .settings-toggle svg,.topbar.dock-narrow .logout-ico svg{width:13px;height:13px}.topbar.dock-narrow .brand-shield{height:15px}.topbar.dock-narrow .brand-word{font-size:9px}.topbar.dock-narrow .brand-tag{font-size:4.6px}.topbar.dock-narrow.dock-hide-brand .brand-shield{height:20px}.settings-lang-row{margin-bottom:6px}.lang--inline{display:block;width:100%}.lang-toggle--inline{display:flex;width:100%;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;text-align:left}.lang-toggle--inline .lang-native{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lang-toggle--inline .lang-caret{margin-left:auto;opacity:.7}.lang-toggle--inline img{opacity:1}.lang-panel--inline{top:calc(100% + 6px);right:0;left:auto;max-height:46vh;overflow-y:auto;z-index:80}.topbar.dock-narrow .nav-links{flex-wrap:nowrap}@media (min-width: 721px){.topbar.dock-narrow .nav-links{overflow-x:auto;scrollbar-width:none}.topbar.dock-narrow .nav-links::-webkit-scrollbar{display:none}.topbar.dock-icons .nav-text{display:none}.topbar.dock-icons .nav-link{padding:3px 7px}.topbar.dock-icons .nav-ico-mask,.topbar.dock-icons .nav-ico svg{height:14px;width:14px}.topbar.dock-icons .nav-caret{display:none}}@media (pointer: coarse){.topo-pip-head{min-height:34px;padding:4px 20px}.cv-float-head,.dsh-float-head,.jitsi-float-head,.term-float-head,.wf-float-head{height:34px;padding:0 16px}.cv-float-head,.dsh-float-head{flex:0 0 34px}.topo-pip-corner.nw,.topo-pip-corner.ne,.topo-pip-edge.n,.cv-float-corner.nw,.cv-float-corner.ne,.cv-float-edge.n,.dsh-float-corner.nw,.dsh-float-corner.ne,.dsh-float-edge.n,.jitsi-float-corner.nw,.jitsi-float-corner.ne,.jitsi-float-edge.n,.term-handle.corner.nw,.term-handle.corner.ne,.term-handle.edge.n,.wf-handle.corner.nw,.wf-handle.corner.ne,.wf-handle.edge.n{display:none}.topo-pip-corner,.cv-float-corner,.dsh-float-corner,.jitsi-float-corner,.term-handle.corner,.wf-handle.corner{width:28px;height:28px}.topo-pip-edge.s,.cv-float-edge.s,.dsh-float-edge.s,.jitsi-float-edge.s,.term-handle.edge.s,.wf-handle.edge.s{left:28px;right:28px;height:12px}.topo-pip-edge.w,.topo-pip-edge.e,.cv-float-edge.w,.cv-float-edge.e,.dsh-float-edge.w,.dsh-float-edge.e,.jitsi-float-edge.w,.jitsi-float-edge.e,.term-handle.edge.w,.term-handle.edge.e,.wf-handle.edge.w,.wf-handle.edge.e{top:28px;bottom:28px;width:12px}.cv-float-corner:after,.dsh-float-corner:after{opacity:.45}.topo-pip-edge.s:after,.cv-float-edge.s:after,.dsh-float-edge.s:after,.jitsi-float-edge.s:after,.term-handle.edge.s:after,.wf-handle.edge.s:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:4px;border-radius:2px;background:var(--muted);opacity:.45;pointer-events:none}.dock-grip-edge .dock-grip-bar{background:var(--accent);opacity:.5}.dock-grip-edge:hover .dock-grip-bar,.dock-grip-edge.hot .dock-grip-bar{opacity:1}.dock-split .dock-split-bar{background:var(--accent);opacity:.5}.dock-split:hover .dock-split-bar,.dock-split.hot .dock-split-bar{opacity:1}:root{--wd-head-h: 22px;--wd-head-ico: 14px}.cv-toc-resize{width:18px}.cv-toc-resize:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:3px;height:46px;border-radius:3px;background:var(--accent);opacity:.5;pointer-events:none}}.msg-top{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;cursor:pointer}.msg-top:hover{background:#7f7f7f2e}.msg-top:focus-visible{outline:2px solid var(--accent, #3ea6ff);outline-offset:1px}.msg-top.has-unread{color:var(--accent, #3ea6ff)}.msg-top-badge{position:absolute;top:-3px;right:-4px;min-width:13px;height:13px;padding:0 3px;border-radius:7px;background:#e5484d;color:#fff;font-size:9px;font-weight:700;line-height:13px;letter-spacing:-.02em;text-align:center;box-shadow:0 0 0 1.5px var(--topbar-bg, #0d1b2a);pointer-events:none}.msg-float{position:fixed;display:flex;flex-direction:column;background:var(--panel-bg, #101c2b);color:var(--text, #e8eff5);border:1px solid var(--panel-border, rgba(255, 255, 255, .14));border-radius:10px;box-shadow:0 18px 48px #00000073;overflow:hidden}.msg-float.hidden{display:none}.msg-float.mini-morph{transition:width .22s ease,height .22s ease,left .22s ease,top .22s ease}.msg-float.dock-docked{border-radius:0;box-shadow:none}.msg-float-head{display:flex;align-items:center;gap:4px;height:28px;flex:0 0 auto;min-height:22px;padding:0 4px 0 8px;background:var(--panel-head-bg, rgba(255, 255, 255, .06));border-bottom:1px solid var(--panel-border, rgba(255, 255, 255, .12));cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.msg-float.dock-docked .msg-float-head{height:22px}.msg-float-head:active{cursor:grabbing}.msg-float-title{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:0;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden}.msg-float-name{overflow:hidden;text-overflow:ellipsis}.msg-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:20px;padding:0;border:0;border-radius:5px;background:transparent;color:inherit;cursor:pointer}.msg-btn:hover{background:#7f7f7f40}.msg-btn.active{color:var(--accent, #3ea6ff)}.msg-float-x{font-size:13px;line-height:1}.msg-float-x:hover{background:#e5484d;color:#fff}.msg-float-body{position:relative;flex:1;min-height:0;display:flex}.msg-shield{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5}.msg-float-corner,.msg-float-edge{position:absolute;z-index:4}.msg-float-corner{width:12px;height:12px}.msg-float-corner.nw{left:-3px;top:-3px;cursor:nwse-resize}.msg-float-corner.ne{right:-3px;top:-3px;cursor:nesw-resize}.msg-float-corner.sw{left:-3px;bottom:-3px;cursor:nesw-resize}.msg-float-corner.se{right:-3px;bottom:-3px;cursor:nwse-resize}.msg-float-edge.n{left:10px;right:10px;top:-3px;height:6px;cursor:ns-resize}.msg-float-edge.s{left:10px;right:10px;bottom:-3px;height:6px;cursor:ns-resize}.msg-float-edge.w{top:10px;bottom:10px;left:-3px;width:6px;cursor:ew-resize}.msg-float-edge.e{top:10px;bottom:10px;right:-3px;width:6px;cursor:ew-resize}.msg-panel{display:flex;flex-direction:column;gap:6px;flex:1;min-height:0;padding:8px;overflow:auto}.msg-ctx{display:flex;align-items:center;gap:6px;padding:3px 4px 3px 8px;border-radius:999px;background:#3ea6ff2e;border:1px solid rgba(62,166,255,.4);font-size:11px}.msg-ctx-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-ctx-x{width:18px;height:18px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer;font-size:11px;line-height:1}.msg-ctx-x:hover{background:#e5484dd9;color:#fff}.msg-cats{display:flex;gap:4px;flex:none}.msg-cat{display:inline-flex;align-items:center;justify-content:center;width:30px;height:26px;padding:0;border:1px solid var(--panel-border, rgba(255, 255, 255, .16));border-radius:7px;background:transparent;color:inherit;cursor:pointer}.msg-cat:hover{background:#7f7f7f33}.msg-cat.active{border-color:currentColor;background:#7f7f7f38}.msg-cat-message.active{color:#3ea6ff}.msg-cat-bug.active{color:#e5484d}.msg-cat-issue.active{color:#f0a020}.msg-cat-suggestion.active{color:#e3c000}.msg-cat-idea.active{color:#63c76a}.msg-cat:not(.active){opacity:.75}.msg-cat:not(.active):hover{opacity:1}.msg-target{display:flex;flex-direction:column;gap:3px;flex:none}.msg-target-lbl{font-size:10px;opacity:.75}.msg-target-sel{width:100%;padding:4px 22px 4px 6px;border:1px solid var(--panel-border, rgba(255, 255, 255, .18));border-radius:6px;background-color:var(--input-bg, rgba(255, 255, 255, .06));color:inherit;font-size:12px}.msg-input{flex:none;width:100%;min-height:64px;max-height:160px;padding:6px 8px;border:1px solid var(--panel-border, rgba(255, 255, 255, .18));border-radius:7px;background:var(--input-bg, rgba(255, 255, 255, .06));color:inherit;font:inherit;font-size:12px;resize:vertical}.msg-input-reply{min-height:40px;flex:1 1 auto;width:auto;min-width:0}.msg-row{display:flex;align-items:center;gap:8px;flex:none}.msg-row>.msg-send{flex:none}.msg-composer{display:flex;flex-direction:column;gap:6px;flex:none;margin-top:auto;padding-top:6px;border-top:1px solid var(--panel-border, rgba(255, 255, 255, .12))}.msg-to{flex:1;min-width:0;font-size:11px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-send{padding:5px 12px;border:0;border-radius:7px;background:var(--accent, #3ea6ff);color:#04121f;font-size:12px;font-weight:700;cursor:pointer}.msg-send:disabled{opacity:.45;cursor:default}.msg-error{color:#ff8a8a;font-size:11px}.msg-info{color:#63c76a;font-size:11px}.msg-threads{display:flex;flex-direction:column;gap:3px;margin-top:0;flex:1;min-height:0;overflow:auto}.msg-threads-h{font-size:10px;text-transform:uppercase;letter-spacing:.04em;opacity:.6}.msg-thread{display:grid;grid-template-columns:1fr auto;gap:2px 6px;padding:5px 7px;border:1px solid transparent;border-radius:7px;background:#7f7f7f1a;color:inherit;text-align:left;cursor:pointer}.msg-thread:hover{background:#7f7f7f33}.msg-thread.is-new{background:#3ea6ff38;background:color-mix(in srgb,var(--accent, #3ea6ff) 22%,transparent);border-color:#3ea6ff8c;border-color:color-mix(in srgb,var(--accent, #3ea6ff) 55%,transparent);box-shadow:inset 3px 0 0 var(--accent, #3ea6ff);animation:msg-new-pulse 1.8s ease-in-out infinite}.msg-thread.is-new .msg-thread-name{color:var(--accent, #3ea6ff)}@keyframes msg-new-pulse{0%,to{background:color-mix(in srgb,var(--accent, #3ea6ff) 22%,transparent)}50%{background:color-mix(in srgb,var(--accent, #3ea6ff) 36%,transparent)}}@media (prefers-reduced-motion: reduce){.msg-thread.is-new{animation:none}}.msg-float.msg-has-new{border-color:var(--accent, #3ea6ff)}.msg-float.msg-has-new .msg-float-head{background:#3ea6ff38;background:color-mix(in srgb,var(--accent, #3ea6ff) 22%,transparent);box-shadow:inset 0 -2px 0 var(--accent, #3ea6ff)}.msg-thread-name{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-thread-unread{min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#e5484d;color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center}.msg-thread-prev{grid-column:1 / -1;font-size:11px;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-open-head{display:flex;align-items:center;gap:8px;flex:none}.msg-back{padding:3px 8px;border:1px solid var(--panel-border, rgba(255, 255, 255, .18));border-radius:6px;background:transparent;color:inherit;font-size:11px;cursor:pointer}.msg-open-title{font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-list{display:flex;flex-direction:column;gap:6px;overflow:auto;flex:1;min-height:0}.msg-item{padding:6px 8px;border-radius:8px;background:#7f7f7f1f;border:1px solid transparent}.msg-item.mine{background:#3ea6ff24;border-color:#3ea6ff4d}.msg-item-head{display:flex;align-items:center;gap:6px;font-size:10px;opacity:.85}.msg-item-cat{display:inline-flex}.msg-item-author{font-weight:700}.msg-item-ctx{margin-left:auto;opacity:.75}.msg-item-body{font-size:12px;white-space:pre-wrap;word-break:break-word}.msg-pip-win{display:flex;flex-direction:column;height:100vh;background:var(--bg, #0b1622);color:var(--text, #e8eff5)}.msg-pip-head{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;background:var(--panel-head-bg, rgba(255, 255, 255, .06));border-bottom:1px solid var(--panel-border, rgba(255, 255, 255, .12));font-size:13px;font-weight:600}.msg-pip-body{flex:1;min-height:0;display:flex}.msg-fast{position:fixed;z-index:10000;top:58px;right:16px;width:min(440px,calc(100vw - 24px));max-height:min(70vh,560px);display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:16px;background:var(--panel-bg, #101c2b);color:var(--text, #e8eff5);border:1px solid rgba(62,166,255,.45);box-shadow:0 22px 60px #0000008c;animation:msg-fast-in .18s ease-out}@keyframes msg-fast-in{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:none}}.msg-fast>*{flex:none}.msg-fast-body{max-height:34vh}.msg-fast-x{position:absolute;top:6px;right:6px;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:#7f7f7f33;color:inherit;font-size:15px;line-height:1;cursor:pointer}.msg-fast-x:hover{background:#e5484d;color:#fff}.msg-fast-head{display:flex;align-items:center;gap:7px;padding-right:34px;font-size:12px}.msg-fast-cat{display:inline-flex}.msg-fast-from{font-weight:700}.msg-fast-ctx{margin-left:auto;font-size:10px;opacity:.8;padding:2px 6px;border-radius:999px;background:#3ea6ff29;white-space:nowrap}.msg-fast-body{font-size:15px;line-height:1.45;white-space:pre-wrap;word-break:break-word;max-height:34vh;overflow:auto}.msg-fast-more{font-size:11px;opacity:.75}.msg-fast-input{width:100%;min-height:76px;max-height:160px;padding:7px 9px;border:1px solid var(--panel-border, rgba(255, 255, 255, .2));border-radius:9px;background:var(--input-bg, rgba(255, 255, 255, .07));color:inherit;font:inherit;font-size:13px;resize:vertical}.msg-fast-err{font-size:11px;color:#ff8a8a}.msg-fast-row{display:flex;justify-content:flex-end}@media (max-width: 460px){.msg-fast{right:8px;left:8px;width:auto;top:52px}}.msg-balloon{display:inline-flex;align-items:center;justify-content:center;position:relative}.msg-balloon:hover{color:var(--accent, #3ea6ff)}.dock-docked .msg-balloon svg{width:12px;height:12px}.msg-admin{display:flex;flex-direction:column;gap:10px}.msg-admin-tags,.msg-admin-surfaces{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.msg-admin-lbl{font-size:11px;opacity:.7;margin-right:2px}.msg-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--panel-border, rgba(255,255,255,.18));border-radius:999px;background:transparent;color:inherit;font-size:12px;cursor:pointer}.msg-chip:hover{background:#7f7f7f29}.msg-chip.active{border-color:currentColor;background:#7f7f7f33;font-weight:600}.msg-chip.msg-cat-message.active{color:#3ea6ff}.msg-chip.msg-cat-bug.active{color:#e5484d}.msg-chip.msg-cat-issue.active{color:#f0a020}.msg-chip.msg-cat-suggestion.active{color:#e3c000}.msg-chip.msg-cat-idea.active{color:#63c76a}.msg-admin-filters{display:flex;gap:8px;align-items:center}.msg-admin-q{flex:1;max-width:320px;padding:5px 9px;border:1px solid var(--panel-border, rgba(255,255,255,.18));border-radius:7px;background:var(--input-bg, rgba(255,255,255,.06));color:inherit;font-size:12px}.msg-admin-parties{font-weight:600;font-size:12px}.msg-admin-kind{font-size:10px;opacity:.7}.msg-admin-meta{margin-top:8px}.msg-admin-meta h4{margin:0 0 4px;font-size:13px}.msg-admin-tagcell{display:inline-flex;gap:6px;align-items:center}.msg-admin-tagn{margin-left:3px;font-size:10px;font-weight:700}.msg-groups{margin-bottom:14px}.msg-groups-head{display:flex;align-items:center;gap:10px}.msg-groups-head h4{margin:0;font-size:13px}.msg-groups .muted{font-size:11px;margin:4px 0 8px}.msg-groups-sel{min-width:150px;padding:3px 20px 3px 5px;font-size:11px;border:1px solid var(--panel-border, rgba(255,255,255,.18));border-radius:6px;background-color:var(--input-bg, rgba(255,255,255,.06));color:inherit}.msg-groups-roles{display:flex;gap:6px;margin-top:8px}.msg-groups-chips{display:inline-flex;flex-wrap:wrap;gap:4px;max-width:320px}.msg-group-chip{padding:2px 4px 2px 8px;font-size:11px;cursor:default;border-color:#3ea6ff80;background:#3ea6ff24}.msg-group-x{width:15px;height:15px;padding:0;margin-left:2px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer;font-size:10px;line-height:1}.msg-group-x:hover{background:#e5484d;color:#fff}.msg-groups-add{display:block;margin-top:4px;max-width:220px;padding:2px 20px 2px 5px;border:1px solid var(--panel-border, rgba(255,255,255,.18));border-radius:6px;background-color:var(--input-bg, rgba(255,255,255,.06));color:inherit;font-size:11px}.wd-wrap{display:flex;flex-direction:column;gap:12px;min-width:0}.wd-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wd-toolbar .wd-spacer{flex:1 1 auto}.wd-btn{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer}.wd-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.wd-btn:disabled{opacity:.55;cursor:default}.wd-btn.primary{border-color:var(--accent);color:var(--accent);font-weight:600}.wd-inline{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.wd-num{width:64px;padding:4px 6px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:13px}.wd-text{min-width:160px;padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:13px}.wd-error,.wd-ok,.wd-banner{border-radius:8px;padding:8px 12px;font-size:13px;border:1px solid var(--border);overflow-wrap:anywhere}.wd-error{border-color:var(--error);color:var(--error)}.wd-ok{border-color:#16a34a;color:#16a34a}.wd-banner{background:var(--card);color:var(--muted)}.wd-banner.warn{border-color:#f59e0b;color:#b45309}.wd-banner.works{border-color:#0ea5e9;color:#0369a1}.wd-banner.works .wd-works-note{margin-top:4px;color:var(--muted)}.wd-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.wd-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.wd-card.ok{border-left:3px solid #16a34a}.wd-card.bad{border-left:3px solid var(--error)}.wd-card.mute{border-left:3px solid var(--border)}.wd-card-num{font-size:22px;font-weight:700;color:var(--text)}.wd-card-lbl{font-size:12px;color:var(--muted)}.wd-meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;color:var(--muted)}.wd-mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.wd-muted{color:var(--muted);font-size:12.5px}.wd-ok-inline{color:#16a34a;font-weight:700}.wd-bad-inline{color:var(--error);font-weight:700}.wd-tabs{display:flex;gap:6px;flex-wrap:wrap}.wd-chip{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:4px 12px;font-size:12.5px;cursor:pointer}.wd-chip.active{border-color:var(--accent);color:var(--accent);font-weight:600}.wd-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--card);max-width:100%}.wd-table{border-collapse:collapse;width:100%;font-size:13px}.wd-table th,.wd-table td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border);vertical-align:top}.wd-table th{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}.wd-table td.wd-detail{overflow-wrap:anywhere;color:var(--muted);max-width:420px}.wd-table td.wd-addr{white-space:nowrap}.wd-vhost{display:block;font-size:11px;color:var(--muted);opacity:.85}.wd-lab-addr{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--muted);white-space:nowrap}.wd-row.offline td{background:color-mix(in srgb,var(--error) 8%,transparent)}.wd-row.offline td.wd-detail{color:var(--error)}.wd-pill{display:inline-block;border-radius:999px;padding:1px 9px;font-size:11.5px;font-weight:600;border:1px solid var(--border);white-space:nowrap}.wd-pill.online{color:#15803d;border-color:#16a34a}.wd-pill.offline{color:var(--error);border-color:var(--error)}.wd-pill.unknown{color:var(--muted)}.wd-pill.flapping{color:#b45309;border-color:#f59e0b}.wd-lab{border:1px dashed var(--border);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.wd-lab-head{font-size:13px;display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}.wd-lab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}.wd-lab-item{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--border);border-radius:8px;padding:4px 8px;font-size:12.5px;background:var(--card)}.wd-lab-item.offline{border-color:var(--error)}.wd-lab-name{font-variant-numeric:tabular-nums;white-space:nowrap}.wd-lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.wd-list{border:1px solid var(--border);border-radius:10px;background:var(--card);padding:8px 12px;min-width:0}.wd-list-head{font-size:13px;font-weight:600;margin-bottom:6px}.wd-list ul{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto;font-size:12.5px}.wd-list li{padding:3px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.wd-list li.offline{color:var(--error)}.wd-list li:last-child{border-bottom:0}.wd-clock{border:1px solid var(--border);border-radius:12px;background:var(--card);padding:12px 16px;display:flex;flex-direction:column;gap:6px}.wd-clock-label{font-size:12.5px;color:var(--muted);letter-spacing:.02em;text-transform:uppercase}.wd-clock-num{font-size:52px;line-height:1;font-weight:700;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text)}.wd-clock.due .wd-clock-num{color:var(--accent)}.wd-clock.warn .wd-clock-num{color:#b45309}.wd-clock-bar{height:6px;border-radius:999px;background:var(--border);overflow:hidden}.wd-clock-bar span{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .9s linear}.wd-clock.warn .wd-clock-bar span{background:#f59e0b}.wd-clock-sub{font-size:12px;color:var(--muted)}@media (max-width: 480px){.wd-clock-num{font-size:40px}}.wd-actions{border:1px solid var(--border);border-radius:10px;background:var(--card);padding:8px 12px;font-size:12.5px}.wd-actions-head{font-weight:600;margin-bottom:6px}.wd-actions ul{list-style:none;margin:0;padding:0;max-height:200px;overflow:auto}.wd-actions li{padding:3px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.wd-actions li:last-child{border-bottom:0}.wd-timeline{display:flex;flex-direction:column;gap:6px;min-width:0;max-width:100%;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--card)}.wd-tl-head{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;font-size:13px;overflow-wrap:anywhere}.wd-tl-cause{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px}.wd-tl-row{display:grid;grid-template-columns:minmax(90px,150px) 1fr 34px;gap:8px;align-items:center;font-size:12px}.wd-tl-name{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wd-tl-track{position:relative;min-width:0;height:12px;border-radius:6px;background:color-mix(in srgb,var(--muted) 14%,transparent);overflow:hidden}.wd-tl-seg{position:absolute;top:0;bottom:0;border-radius:3px;min-width:3px;cursor:help}.wd-tl-seg.works{background:#0ea5e9}.wd-tl-seg.commit{background:#f59e0b}.wd-tl-seg.unknown{background:var(--error, #dc2626)}.wd-tl-seg.ongoing{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.55) 0 3px,transparent 3px 6px)}.wd-tl-count{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.wd-tl-axis{display:grid;grid-template-columns:minmax(90px,150px) 1fr 34px;gap:8px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.wd-tl-ticks{display:flex;justify-content:space-between;gap:4px;min-width:0}.wd-tl-ticks span{white-space:nowrap}@media (max-width: 560px){.wd-tl-row,.wd-tl-axis{grid-template-columns:84px 1fr}.wd-tl-count,.wd-tl-axis>span:last-child{display:none}.wd-tl-ticks span:nth-child(2),.wd-tl-ticks span:nth-child(4){display:none}}.wd-tl-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.wd-tl-dot{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px;vertical-align:middle}.wd-tl-dot.works{background:#0ea5e9}.wd-tl-dot.commit{background:#f59e0b}.wd-tl-dot.unknown{background:var(--error, #dc2626)}.gal-page{--gal-ring: linear-gradient( 145deg, rgba(90, 200, 250, .75), rgba(140, 120, 255, .35) 30%, rgba(120, 120, 140, .12) 55%, rgba(90, 200, 250, .55) );--gal-ring-hot: linear-gradient( 145deg, rgba(110, 225, 255, .95), rgba(170, 130, 255, .6) 32%, rgba(120, 120, 140, .18) 58%, rgba(110, 225, 255, .8) );--gal-glass: rgba(18, 22, 30, .42);--gal-glass-strong: rgba(14, 18, 26, .72)}.gal-head{margin-bottom:14px}.gal-h2{display:flex;align-items:center;gap:8px;margin:0 0 4px}.gal-sub{margin:0 0 6px;color:var(--c-muted, #9aa4b2);font-size:13px}.gal-visibility{display:inline-flex;align-items:center;gap:8px;margin:2px 0 0;padding:6px 12px 6px 10px;border-radius:999px;font-size:12.5px;color:var(--c-text, #e6ebf2);background:linear-gradient(100deg,#5ac8fa29,#8c78ff1a 60%,#5ac8fa00);border:1px solid rgba(120,190,240,.28);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gal-visibility strong{font-weight:600}.gal-albums{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.gal-album-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:999px;border:1px solid rgba(120,190,240,.24);background:#ffffff0a;color:inherit;font-size:12.5px;cursor:pointer}.gal-album-chip.is-active{border-color:#78d2ffb3;background:#5ac8fa29}.gal-album-n{font-size:11px;padding:1px 6px;border-radius:999px;background:#ffffff1f}.gal-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 14px}.gal-flash{font-size:12.5px;color:#6ee7a8}.gal-error{font-size:12.5px;color:#ff8f8f}.gal-hint{margin:6px 0;font-size:12px;color:var(--c-muted, #9aa4b2)}.gal-undo-locked{font-size:11.5px;color:var(--c-muted, #9aa4b2);line-height:1.35}.gal-notice{margin:8px 0;padding:7px 10px;border-radius:8px;border:1px solid rgba(255,196,90,.5);background:#ffc45a1f;color:#ffe6b8;font-size:12.5px;line-height:1.45}.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.gal-card{margin:0;padding:1px;border-radius:20px;background:var(--gal-ring);transition:background .25s ease,transform .25s ease,box-shadow .25s ease}.gal-card:hover,.gal-card:focus-within{background:var(--gal-ring-hot);transform:translateY(-2px);box-shadow:0 14px 34px #00000059}.gal-card.is-group{box-shadow:0 0 0 1px #78d2ff40}.gal-card-in{display:block;position:relative;width:100%;padding:0;border:0;border-radius:19px;overflow:hidden;background:#0b0e13;cursor:pointer;aspect-ratio:4 / 3}.gal-card-in img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease,filter .4s ease}.gal-card:hover .gal-card-in img{transform:scale(1.045);filter:saturate(1.08)}.gal-card-skeleton{display:block;width:100%;height:100%;background:linear-gradient(100deg,#14181f,#1b212b 50%,#14181f);animation:gal-shimmer 1.4s linear infinite}@keyframes gal-shimmer{0%{opacity:.55}50%{opacity:1}to{opacity:.55}}.gal-cap{position:absolute;inset:auto 0 0 0;display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding:22px 10px 9px;background:linear-gradient(to top,#06090ed1,#06090e6b 55%,#06090e00);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);color:#f2f6fb;font-size:12px;text-align:left}.gal-cap-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gal-cap-chips{display:inline-flex;gap:6px;flex:none}.gal-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:11px;background:#ffffff24;border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);white-space:nowrap}.gal-chip.is-group{background:#5ac8fa3d;border-color:#78d2ff80}.gal-lb{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10400;display:flex;align-items:center;justify-content:center}.gal-lb-veil{position:absolute;top:-40px;right:-40px;bottom:-40px;left:-40px;background-size:cover;background-position:center;filter:blur(38px) saturate(1.2) brightness(.5);transform:scale(1.08)}.gal-lb-inner{position:relative;display:flex;align-items:stretch;gap:0;width:min(1180px,calc(100vw - 28px));max-height:calc(100vh - 40px);border-radius:22px;padding:1px;background:var(--gal-ring-hot);box-shadow:0 30px 90px #0009}.gal-lb-frame{position:relative;flex:1 1 auto;min-width:0;border-radius:21px 0 0 21px;overflow:hidden;background:#05070a;display:flex;align-items:center;justify-content:center}.gal-lb-frame.is-zoomed .gal-lb-media{cursor:grab}.gal-lb-frame.is-panning .gal-lb-media{cursor:grabbing}.gal-lb-frame.is-tagging .gal-lb-media{cursor:crosshair}.gal-lb-media{position:relative;line-height:0;max-width:100%;max-height:calc(100vh - 40px);will-change:transform}.gal-lb-media img{display:block;max-width:100%;max-height:calc(100vh - 40px);width:auto;height:auto;-webkit-user-select:none;user-select:none}.gal-face{position:absolute;padding:0;border:2px solid rgba(120,220,255,.95);border-radius:6px;background:#5ac8fa1f;cursor:move;touch-action:none;-webkit-user-select:none;user-select:none;transition:background .15s ease,border-color .15s ease}.gal-face:hover{background:#5ac8fa47;border-color:#fff}.gal-face.is-dragging{border-color:#fff;background:#5ac8fa57;z-index:3}.gal-face.is-candidate{border-style:dashed;border-color:#ffd278e6;background:#ffd2781a}.gal-face.is-pending{border-color:#fff;background:#ffffff29;cursor:move}.gal-face.is-drawing{border-style:dashed;border-color:#fff;background:#ffffff1a;cursor:crosshair;pointer-events:none}.gal-face-x{position:static;z-index:1;width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0;margin:-1px -3px -1px 0;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:#0c1016d9;color:#ffd9d9;font-size:10px;line-height:1;cursor:pointer;pointer-events:auto;touch-action:none}.gal-face-x:hover{background:#c82828f2;color:#fff}.gal-face-handle{position:absolute;z-index:2;width:12px;height:12px;border-radius:3px;background:#fff;border:1px solid rgba(10,20,30,.7);opacity:0;transition:opacity .12s ease;touch-action:none}.gal-face:hover .gal-face-handle,.gal-face.is-dragging .gal-face-handle,.gal-face.is-pending .gal-face-handle{opacity:1}.gal-face-handle.is-nw{top:-7px;left:-7px;cursor:nwse-resize}.gal-face-handle.is-ne{top:-7px;right:-7px;cursor:nesw-resize}.gal-face-handle.is-sw{bottom:-7px;left:-7px;cursor:nesw-resize}.gal-face-handle.is-se{bottom:-7px;right:-7px;cursor:nwse-resize}.gal-face-handle.is-edge{width:18px;height:6px;border-radius:2px;background:#fffffff2}.gal-face-handle.is-n{top:-3px;left:50%;margin-left:-9px;cursor:ns-resize}.gal-face-handle.is-s{bottom:-3px;left:50%;margin-left:-9px;cursor:ns-resize}.gal-face-handle.is-w{left:-3px;top:50%;margin-top:-9px;width:6px;height:18px;cursor:ew-resize}.gal-face-handle.is-e{right:-3px;top:50%;margin-top:-9px;width:6px;height:18px;cursor:ew-resize}@media (pointer: coarse){.gal-face-handle{width:16px;height:16px}.gal-face-tag{opacity:1}.gal-face-x{width:22px;height:22px;font-size:12px}}.gal-face-tag{position:absolute;left:-2px;bottom:100%;margin-bottom:9px;padding:2px 5px 2px 7px;display:flex;align-items:center;gap:5px;border-radius:6px;background:#080c12d9;color:#eaf6ff;font-size:11px;line-height:1.4;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .12s ease;transform:scale(calc(1 / var(--gal-zoom, 1)));transform-origin:0 100%;z-index:4}.gal-face:hover .gal-face-tag,.gal-face:focus-within .gal-face-tag,.gal-face.is-dragging .gal-face-tag{opacity:1}.gal-zoom{position:absolute;left:12px;bottom:12px;z-index:4;display:flex;align-items:center;gap:2px;padding:3px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:#080c1299;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gal-zoom-btn,.gal-zoom-level{border:0;background:none;color:#fff;cursor:pointer;font:inherit;border-radius:999px}.gal-zoom-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1}.gal-zoom-btn:hover:not(:disabled),.gal-zoom-level:hover{background:#ffffff29}.gal-zoom-btn:disabled{opacity:.35;cursor:default}.gal-zoom-level{min-width:46px;height:26px;padding:0 2px;font-size:11.5px;font-variant-numeric:tabular-nums;color:#cfe6ff}.gal-lb-x,.gal-lb-nav{position:absolute;z-index:3;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:#080c1299;color:#fff;font-size:17px;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gal-lb-x:hover,.gal-lb-nav:hover{background:#1e2836d9}.gal-lb-x{top:10px;right:10px}.gal-lb-nav{top:50%;transform:translateY(-50%);font-size:22px}.gal-lb-nav.is-prev{left:10px}.gal-lb-nav.is-next{right:10px}.gal-lb-panel{flex:0 0 264px;display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:0 21px 21px 0;background:#0c1016db;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--c-text, #e6ebf2);font-size:13px;overflow:auto}.gal-lb-count{font-size:12px;color:var(--c-muted, #9aa4b2)}.gal-lb-group{margin:0;font-size:12px;padding:6px 8px;border-radius:8px;background:#5ac8fa1f;border:1px solid rgba(120,210,255,.28)}.gal-lb-actions{display:flex;flex-wrap:wrap;gap:6px}.gal-group-check{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;font-size:12.5px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);cursor:pointer;-webkit-user-select:none;user-select:none}.gal-group-check input{width:15px;height:15px;accent-color:#2dd4bf;cursor:pointer}.gal-undo{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px;padding:10px 12px;border-radius:12px;background:#2dd4bf14;border:1px solid rgba(45,212,191,.28)}.gal-undo-title{font-size:12.5px;font-weight:600;color:#6ee7a8;white-space:nowrap}.gal-undo-list{display:flex;flex-wrap:wrap;gap:8px}.gal-undo-item{display:flex;align-items:center;gap:10px;padding:4px 6px 4px 10px;border-radius:999px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.gal-undo-what{font-size:12.5px}.gal-undo-left{font-size:11.5px;color:var(--c-muted, #9aa4b2);font-variant-numeric:tabular-nums;white-space:nowrap}.gal-lb-undo{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:8px 10px;border-radius:10px;background:#2dd4bf1a;border:1px solid rgba(45,212,191,.3)}.gal-lb-undo .gal-undo-item{justify-content:space-between;flex-wrap:wrap}.gal-lb-undo .gal-undo-locked{flex-basis:100%}.gal-danger{border-color:#ff787873!important;color:#ffb3b3!important}.btn.gal-btn-danger{background:#b42318!important;color:#fff!important;border:1px solid rgba(255,150,150,.55)!important;text-shadow:0 1px 1px rgba(0,0,0,.35)}.btn.gal-btn-danger:hover{background:#d92d20!important}.btn.gal-btn-danger:disabled{opacity:.55}.gal-picker{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px;border:1px solid rgba(120,190,240,.24);background:#ffffff0a}.gal-picker-head{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;font-weight:600}.gal-picker-x{border:0;background:none;color:inherit;cursor:pointer;font-size:13px}.gal-picker-search{width:100%;padding:6px 8px;border-radius:8px;border:1px solid rgba(120,190,240,.3);background:#00000040;color:inherit;font-size:12.5px}.gal-picker-list{display:flex;flex-direction:column;gap:2px;max-height:240px;overflow:auto}.gal-picker-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border:0;border-radius:8px;background:none;color:inherit;font-size:12.5px;text-align:left;cursor:pointer}.gal-picker-row:hover{background:#5ac8fa29}.gal-picker-photo{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;flex:none;border-radius:50%;overflow:hidden;background:#ffffff1a}.gal-picker-photo img{width:100%;height:100%;object-fit:cover}.gal-picker-name{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gal-picker-note{font-size:10.5px;color:var(--c-muted, #9aa4b2)}.gal-picker-remove{border:1px solid rgba(255,120,120,.45);border-radius:8px;background:none;color:#ffb3b3;font-size:12px;padding:5px 8px;cursor:pointer}.gal-caption{margin-top:auto;display:flex;flex-direction:column;gap:6px}.gal-caption-label{font-size:11.5px;color:var(--c-muted, #9aa4b2)}.gal-caption textarea{width:100%;resize:vertical;padding:7px 8px;border-radius:9px;border:1px solid rgba(120,190,240,.28);background:#00000047;color:inherit;font:inherit;font-size:12.5px}.avatar-img{border-radius:50%;object-fit:cover;display:inline-block;vertical-align:middle;background:#ffffff14}.avatar-empty{display:inline-flex;align-items:center;justify-content:center;color:var(--c-muted, #9aa4b2);border:1px solid rgba(255,255,255,.14)}.avatar-cell{display:flex;align-items:center;gap:8px}.avatar-cell .avatar-img{border-radius:10px;border:1px solid rgba(120,190,240,.3)}.prof-card{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-bottom:18px;border-radius:22px;padding:1px;background:var(--gal-ring)}.prof-card>*{position:relative}.prof-portrait{flex:none;display:flex;align-items:center;justify-content:center;width:180px;height:180px;border-radius:20px;padding:1px;background:var(--gal-ring-hot)}.prof-portrait-img{border-radius:19px!important}.prof-portrait.is-pixel .prof-portrait-img{image-rendering:pixelated}.prof-portrait-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;height:100%;border-radius:19px;background:#0a0e14a6;color:var(--c-muted, #9aa4b2);font-size:11.5px;text-align:center;padding:8px}.prof-side{flex:1 1 260px;min-width:0;padding:14px 20px 14px 0}.prof-name{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;margin-bottom:4px}.prof-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.prof-h3{margin:22px 0 10px;font-size:15px}@media (max-width: 780px){.gal-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.gal-lb-inner{flex-direction:column;max-height:calc(100vh - 16px);width:calc(100vw - 12px)}.gal-lb-frame{border-radius:21px 21px 0 0;max-height:58vh}.gal-lb-media,.gal-lb-media img{max-height:58vh}.gal-lb-panel{flex:1 1 auto;border-radius:0 0 21px 21px;max-height:42vh}.gal-cap{font-size:11px;padding:18px 8px 7px}.gal-cap-chips .gal-chip{font-size:10px}}.prof-certs{display:flex;flex-wrap:wrap;gap:12px}.prof-cert{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;border:1px solid rgba(120,190,240,.34);background:linear-gradient(120deg,#5ac8fa24,#8c78ff14 55%,#5ac8fa0a);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);min-width:300px}.prof-cert-badge{display:flex;align-items:center;justify-content:center;width:46px;height:46px;flex:none;border-radius:12px;color:#8fe3ff;background:#5ac8fa24;border:1px solid rgba(120,210,255,.4)}.prof-cert-meta{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.prof-cert-program{font-weight:600;font-size:13.5px;letter-spacing:.02em}.prof-cert-number{font-family:ui-monospace,JetBrains Mono,monospace;font-size:12.5px;color:var(--c-text, #e6ebf2)}.prof-cert-sub{font-size:11.5px;color:var(--c-muted, #9aa4b2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 780px){.prof-cert{min-width:0;width:100%}}.prof-certs-wrap{overflow-x:auto;border-radius:14px;border:1px solid rgba(120,190,240,.28);background:linear-gradient(120deg,#5ac8fa1a,#8c78ff0f 55%,#5ac8fa08);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.prof-certs-table{width:100%;border-collapse:collapse;font-size:13px}.prof-certs-table thead th{text-align:left;padding:9px 12px;font-size:12px;font-weight:600;letter-spacing:.01em;color:var(--c-muted, #9aa4b2);border-bottom:1px solid rgba(120,190,240,.22);white-space:nowrap}.prof-certs-table tbody td{padding:8px 12px;border-bottom:1px solid rgba(120,190,240,.1);vertical-align:middle}.prof-certs-table tbody tr:last-child td{border-bottom:0}.prof-certs-table tbody tr:hover{background:#5ac8fa14}.prof-certs-table .is-num{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.prof-certs-table .is-pdf{text-align:right;white-space:nowrap}.prof-certs-table .is-pdf .btn+.btn{margin-left:6px}.prof-certs-table td.prof-cert-number{display:flex;align-items:center;gap:8px;white-space:nowrap}.prof-cert-num{font-family:ui-monospace,JetBrains Mono,monospace;font-size:12.5px;color:var(--c-text, #e6ebf2)}.prof-certs-table td.prof-cert-name{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prof-certs-table .prof-cert-date{font-variant-numeric:tabular-nums;color:var(--c-text, #e6ebf2);white-space:nowrap}@media (max-width: 700px){.prof-certs-table thead{display:none}.prof-certs-table,.prof-certs-table tbody,.prof-certs-table tr,.prof-certs-table td{display:block;width:100%}.prof-certs-table tr{padding:10px 12px;border-bottom:1px solid rgba(120,190,240,.18)}.prof-certs-table tbody td{display:flex;justify-content:space-between;gap:12px;padding:3px 0;border:0}.prof-certs-table tbody td:before{content:attr(data-label);color:var(--c-muted, #9aa4b2);font-size:12px;letter-spacing:.01em}.prof-certs-table .is-num,.prof-certs-table .is-pdf{text-align:right}.prof-certs-table td.prof-cert-number,.prof-certs-table td.prof-cert-name{display:flex;max-width:none}}.prof-cert-left{display:block;margin-top:2px;font-size:11px;color:#6ee7a8;white-space:nowrap}.prof-cert-left.is-soon{color:#fbbf24}.prof-cert-left.is-critical,.prof-cert-left.is-expired{color:#f87171}.prof-portrait.is-auto:after{content:""}.gal-lb-panel{flex:0 0 316px}.gal-chat{display:flex;flex-direction:column;gap:6px;min-height:0;padding-top:8px;border-top:1px solid rgba(255,255,255,.09)}.gal-chat-head{display:flex;align-items:center;gap:6px}.gal-chat-title{font-size:12px;font-weight:700;letter-spacing:.01em}.gal-chat-n{min-width:17px;padding:0 5px;border-radius:9px;font-size:11px;line-height:17px;text-align:center;background:#2dd4bf2e;color:#9bf3e5}.gal-chat-list{display:flex;flex-direction:column;gap:6px;min-height:96px;max-height:34vh;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.gal-chat-when{margin-left:auto;font-size:11px;color:var(--c-muted, #9aa4b2)}.gal-chat-row{align-items:flex-end;margin-top:auto}@media (max-width: 780px){.gal-chat-list{max-height:22vh;min-height:64px}.gal-lb-panel{flex:1 1 auto}}.tperm-scroll{overflow-x:auto;max-width:100%}.tperm-select{min-width:104px}.tperm-group-row td{font-weight:700;letter-spacing:.02em;color:var(--c-muted, #9aa4b2);background:#ffffff08}.tperm-th-perm{white-space:nowrap}.cont{margin-top:26px}.cont-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:10px}.cont-head .gal-hint{flex:1 1 320px;margin:0}.cont-actions{display:flex;gap:6px;margin-left:auto}.cont-wrap{overflow-x:auto;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.cont-table{width:100%;border-collapse:collapse;font-size:13px}.cont-table thead th{text-align:left;padding:9px 10px;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--c-muted, #9aa4b2);background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}.cont-table tbody td{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:top}.cont-table tbody tr:last-child td{border-bottom:0}.cont-table tbody tr.is-mine{background:#2dd4bf12}.cont-table a{color:#6ee7a8;text-decoration:none}.cont-table a:hover{text-decoration:underline}.cont-nowrap{white-space:nowrap}.cont-links{display:inline-flex;flex-wrap:wrap;gap:6px}.cont-link{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;color:#cfe3f5;background:#ffffff12;border:1px solid rgba(255,255,255,.12)}.cont-link:hover{color:#0b0e13;background:#6ee7a8;border-color:#6ee7a8}.cont-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:16px;background:#04080cb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.cont-card{width:min(820px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:16px 18px;border-radius:14px;background:var(--c-panel, #141a22);border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 60px #00000080}.cont-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:14px}.cont-x{width:24px;height:24px;border-radius:7px;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;color:inherit;cursor:pointer;line-height:1}.cont-x:hover{background:#f871713d;border-color:#f8717180}.cont-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.cont-field{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--c-muted, #9aa4b2)}.cont-input{padding:7px 9px;border-radius:8px;border:1px solid rgba(255,255,255,.16);background:#ffffff0d;color:var(--c-text, #e6ebf2);font-size:13px;color-scheme:dark}.cont-input:focus{outline:2px solid rgba(45,212,191,.5);outline-offset:1px}.cont-links-h{margin:16px 0 8px;font-size:13px}.cont-links-table{display:flex;flex-direction:column;gap:8px}.cont-link-row{display:grid;grid-template-columns:26px 150px minmax(0,1fr) 24px;align-items:center;gap:8px}.cont-link-row:has(.cont-net-label){grid-template-columns:26px 130px 130px minmax(0,1fr) 24px}.cont-link-ico{display:inline-flex;align-items:center;justify-content:center;color:#9fe8c9}.cont-url{font-family:ui-monospace,JetBrains Mono,monospace;font-size:12.5px}.cont-add-link{align-self:flex-start;margin-top:2px}.cont-card-actions{display:flex;gap:8px;margin-top:14px}@media (max-width: 780px){.cont-wrap{border:0;overflow:visible}.cont-table thead{display:none}.cont-table,.cont-table tbody,.cont-table tr,.cont-table td{display:block;width:100%}.cont-table tbody tr{margin-bottom:10px;border-radius:12px;border:1px solid rgba(255,255,255,.1);padding:6px 4px}.cont-table tbody td{display:flex;justify-content:space-between;gap:12px;padding:4px 10px;border:0}.cont-table tbody td:before{content:attr(data-label);color:var(--c-muted, #9aa4b2);font-size:11.5px}.cont-link-row,.cont-link-row:has(.cont-net-label){grid-template-columns:26px minmax(0,1fr) 24px}.cont-link-row .cont-net,.cont-link-row .cont-net-label{grid-column:2}.cont-link-row .cont-url{grid-column:2 / 3}}.gal-h2cont{display:flex;align-items:center;gap:8px;margin:30px 0 10px;padding-left:10px;font-size:15px;font-weight:600;letter-spacing:.02em;color:var(--c-text, #e6ebf2);border-left:3px solid rgba(45,212,191,.75)}.gal-h2n{padding:2px 7px;border-radius:999px;font-size:11.5px;font-weight:600;color:#9fe8c9;background:#2dd4bf24;border:1px solid rgba(45,212,191,.3)}.gal-page .gal-h2cont:first-of-type{margin-top:18px}.cont-cert{font-family:ui-monospace,JetBrains Mono,monospace;font-size:12px;color:#cfe3f5}.results-table .is-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.cont-th-actions{width:1%;white-space:nowrap}.cont-actions-cell{white-space:nowrap}.cont-act{display:inline-flex;align-items:center;gap:6px}.cont-ico-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;color:#cfe3f5;cursor:pointer;line-height:1}.cont-ico-btn:hover{color:#d6fff4;background:#2dd4bf33;border-color:#2dd4bf80}.cont-ico-btn.is-danger:hover{color:#ffe4e4;background:#f871713d;border-color:#f8717180}.cont-ico-btn:disabled{opacity:.5;cursor:default}.cont-left{font-family:ui-monospace,JetBrains Mono,monospace;font-size:12px;font-variant-numeric:tabular-nums;color:#fbbf24}.cont-field.is-locked .cont-input{color:var(--c-muted, #9aa4b2);background:#ffffff05;border-style:dashed;cursor:not-allowed}.cont-lock-hint{margin:8px 0 0}.cont-table tbody tr.is-raster{background:#ffffff05}.cont-table tbody tr.is-raster td{color:var(--c-muted, #9aa4b2)}.cont-raster{display:inline-block;filter:blur(1.2px);letter-spacing:.09em;-webkit-user-select:none;user-select:none;cursor:default}.results-table tfoot td{padding:9px 10px;font-size:13px;color:var(--c-muted, #9aa4b2);border-top:1px solid rgba(255,255,255,.1);background:#ffffff08}.results-table tfoot strong{color:var(--c-text, #e6ebf2);font-variant-numeric:tabular-nums}.gstat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.gstat-card{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(160deg,#2dd4bf17,#ffffff05)}.gstat-label{font-size:11.5px;letter-spacing:.03em;text-transform:uppercase;color:var(--c-muted, #9aa4b2)}.gstat-value{font-size:22px;line-height:1.15;font-variant-numeric:tabular-nums}.gstat-hint{font-size:11.5px;color:var(--c-muted, #9aa4b2)}.gstat-net-list{display:flex;flex-wrap:wrap;gap:8px}.gstat-net{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;font-size:12.5px;color:#cfe3f5}.gstat-net-n{font-family:ui-monospace,JetBrains Mono,monospace;color:#9fe8c9}.gstat-top-list{display:flex;flex-direction:column;gap:4px;margin:0;padding-left:20px;font-size:13px}.gstat-top-list li{display:flex;justify-content:space-between;gap:12px;max-width:360px}.gstat-top-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cont-table tbody tr.is-deleted{background:#f871710f}.cont-table tbody tr.is-deleted td{color:var(--c-muted, #9aa4b2)}.cont-struck{text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:#f87171d9;opacity:.85}.cont-table tbody tr.is-deleted .cont-actions-cell,.cont-table tbody tr.is-deleted .cont-actions-cell *{text-decoration:none;color:inherit;opacity:1}.gdel{margin-top:28px}.gdel-head .gal-h2cont{margin-bottom:2px}.gdel-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;margin-top:12px}.gdel-group{border:1px solid rgba(248,113,113,.28);border-radius:12px;background:#f871710d;padding:10px 12px 12px}.gdel-h4{margin:0 0 8px;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--c-text, #e8edf5)}.gdel-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.gdel-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:7px 9px;border-radius:9px;background:#0000002e;font-size:13px}.gdel-what{font-weight:600;overflow-wrap:anywhere}.gdel-struck{text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:#f87171d9}.gdel-meta{color:var(--c-muted, #9aa4b2);font-size:12px;overflow-wrap:anywhere}.gdel-none{color:var(--c-muted, #9aa4b2);font-size:12px;font-style:italic}.gdel-item .btn{margin-left:auto}
