@charset "UTF-8";.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}.tippy-box[data-animation=shift-away][data-state=hidden]{opacity:0}.tippy-box[data-animation=shift-away][data-state=hidden][data-placement^=top]{transform:translateY(10px)}.tippy-box[data-animation=shift-away][data-state=hidden][data-placement^=bottom]{transform:translateY(-10px)}.tippy-box[data-animation=shift-away][data-state=hidden][data-placement^=left]{transform:translate(10px)}.tippy-box[data-animation=shift-away][data-state=hidden][data-placement^=right]{transform:translate(-10px)}.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0}@supports (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;padding-left:1.5em;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"\2022"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"\2611"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"\2610"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media(pointer:coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor .ql-code-block-container{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block;max-width:100%}.ql-toolbar svg,.ql-container svg,.ql-editor svg{display:inline-block!important;max-width:none!important;width:18px!important;height:18px!important}.ql-clipboard{position:absolute!important;left:-100000px!important;height:1px!important;width:1px!important;overflow:hidden!important;border:0!important;opacity:0!important;pointer-events:none!important}.ql-container.ql-snow{border:0;height:auto}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}.text-primary{color:#0f172a}.text-secondary{color:#475569}.text-muted{color:#94a3b8}.text-success{color:#16a34a}.text-error{color:#dc2626}.bg-surface{background-color:#fff}.bg-app{background-color:#f8fafc}.rounded{border-radius:8px}.shadow-sm{box-shadow:0 1px 2px #0f172a0f}.shadow-md{box-shadow:0 4px 12px #0f172a14}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html{font-size:14px}body{font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#0f172a;background-color:#f8fafc}h1,h2,h3,h4,h5,h6{margin:0 0 .5rem;font-weight:600;color:#0f172a}p{margin:0 0 1rem;color:#475569}button{cursor:pointer}.app-shell{min-height:100vh;background:#f8fafc}.page-container{padding:1.5rem}.card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 2px #0f172a0f;padding:1.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;border:1px solid transparent;border-radius:4px;font-weight:500;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.btn:focus-visible{outline:2px solid rgba(37,99,235,.35);outline-offset:2px}.btn--primary{background:#2563eb;color:#fff}.btn--primary:hover{background:#1d4ed8}.btn--secondary{background:#fff;border-color:#e2e8f0;color:#0f172a}.btn--secondary:hover{background:#f8fafc}.form-field{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1rem}.form-field label{font-size:12px;font-weight:500;color:#475569}.form-field input,.form-field select,.form-field textarea{width:100%;padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:4px;background:#fff;color:#0f172a}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#2563eb;outline:2px solid rgba(37,99,235,.35);outline-offset:2px}:root{--brand:#1E56C8;--brand-2:#1642A0;--teal:#0E9AA7;--navy:#0C1E3E;--brand-soft:#E9F0FC;--brand-line:#C9DAF6;--teal-soft:#E1F4F6;--teal-line:#BFE6EA;--canvas:#F5F7FB;--panel:#FFFFFF;--panel-2:#EFF3F9;--ink:#0F1B2D;--ink-2:#33425A;--muted:#647087;--faint:#9AA6B8;--line:#E3E9F1;--line-2:#EEF2F7;--u-under:#5B7A99;--u-under-bg:#EAF0F6;--u-heal:#1F9D6B;--u-heal-bg:#E4F5EE;--u-tight:#C6871A;--u-tight-bg:#FBF1DA;--u-over:#D24C43;--u-over-bg:#FBE7E4;--u-idle:var(--teal);--u-idle-bg:var(--teal-soft);--shadow:0 1px 2px rgba(15,27,45,.05),0 8px 24px rgba(15,27,45,.06);--radius:10px}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--canvas);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.mono{font-family:JetBrains Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.02em}h1,h2,h3,.disp{font-family:Space Grotesk,sans-serif;letter-spacing:-.01em;margin:0}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}svg.i{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}svg.i.sm{width:13px;height:13px}.app{display:flex;flex:1;min-height:0;overflow:hidden;background:var(--canvas)}.sidebar{position:absolute;inset:0 auto 0 0;width:56px;display:flex;flex-direction:column;background:linear-gradient(180deg,#eaf6f7,#f3f8fb 48%,#eef3f9);color:var(--ink);height:100%;overflow:hidden;border-right:1px solid var(--teal-line);transform-origin:left center;transition:width .32s cubic-bezier(.22,1,.36,1),box-shadow .32s cubic-bezier(.22,1,.36,1);will-change:width}.sidebar:hover,.sidebar.is-pinned{width:248px;box-shadow:10px 0 28px #0f1b2d1f}.sidebar.is-pinned{box-shadow:none}.sb-tools{flex:none;display:flex;align-items:center;justify-content:center;padding:10px 0 4px}.sidebar:hover .sb-tools,.sidebar.is-pinned .sb-tools{padding:10px 12px 4px;justify-content:flex-end}.sb-pin{display:flex;align-items:center;justify-content:center;width:40px;height:36px;margin:0;padding:0;gap:0;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--ink-2);font:inherit;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;overflow:hidden;transition:background .15s,color .15s,border-color .15s,width .25s ease,gap .25s ease,padding .25s ease}.sidebar:hover .sb-pin,.sidebar.is-pinned .sb-pin{width:auto;gap:10px;padding:9px 11px;justify-content:flex-start}.sb-pin:hover{background:#0e9aa714;color:var(--ink)}.sb-pin.active{background:linear-gradient(90deg,#0e9aa729,#0e9aa70d);color:#0a6f78;border-color:var(--teal-line)}.sb-pin svg{color:#7e93a8;flex:none}.sb-pin:hover svg,.sb-pin.active svg{color:var(--teal)}.sb-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:10px 0 12px;scrollbar-width:none}.sb-nav::-webkit-scrollbar{width:0;height:0}.sidebar:hover .sb-nav,.sidebar.is-pinned .sb-nav{padding:10px 12px 12px;scrollbar-width:thin;scrollbar-color:var(--teal-line) transparent}.sidebar:hover .sb-nav::-webkit-scrollbar,.sidebar.is-pinned .sb-nav::-webkit-scrollbar{width:5px}.sidebar:hover .sb-nav::-webkit-scrollbar-track,.sidebar.is-pinned .sb-nav::-webkit-scrollbar-track{background:transparent}.sidebar:hover .sb-nav::-webkit-scrollbar-thumb,.sidebar.is-pinned .sb-nav::-webkit-scrollbar-thumb{background:var(--teal-line);border-radius:999px}.sidebar:hover .sb-nav::-webkit-scrollbar-thumb:hover,.sidebar.is-pinned .sb-nav::-webkit-scrollbar-thumb:hover{background:var(--faint)}.navgroup{margin-bottom:18px}.navgroup .gl{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7e93a8;padding:0 10px;white-space:nowrap;overflow:hidden;max-height:0;opacity:0;margin-bottom:0;transition:opacity .2s ease,max-height .25s ease,margin .25s ease}.sidebar:hover .navgroup .gl,.sidebar.is-pinned .navgroup .gl{max-height:24px;opacity:1;margin-bottom:8px}.navitem{display:flex;align-items:center;justify-content:center;width:40px;height:36px;margin:0 auto 3px;padding:0;gap:0;border-radius:9px;font-size:13px;font-weight:500;color:var(--ink-2);cursor:pointer;text-decoration:none;border:1px solid transparent;white-space:nowrap;overflow:hidden;transition:background .15s,color .15s,border-color .15s,width .25s ease,height .01s,gap .25s ease,padding .25s ease,margin .25s ease}.sidebar:hover .navitem,.sidebar.is-pinned .navitem{width:auto;height:auto;margin:0 0 3px;gap:10px;padding:9px 11px;justify-content:flex-start}.navitem-label{display:none}.sidebar:hover .navitem-label,.sidebar.is-pinned .navitem-label{display:inline;opacity:1;max-width:none}.navitem:hover{background:#0e9aa714;color:var(--ink)}.navitem.active{background:linear-gradient(90deg,#0e9aa729,#0e9aa70d);color:#0a6f78;border-color:var(--teal-line);box-shadow:inset 3px 0 0 var(--teal)}.navitem svg{color:#7e93a8;flex:none}.navitem:hover svg,.navitem.active svg{color:var(--teal)}.topbar{height:58px;display:flex;align-items:center;gap:16px;padding:0 22px;position:sticky;top:0;z-index:50;background:linear-gradient(180deg,#f7fbfc,#eef6f8);border-bottom:1px solid var(--teal-line)}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-main{display:flex;align-items:center;gap:8px}.brand .mark{font-family:Space Grotesk;font-weight:700;font-size:20px;letter-spacing:-.03em;color:var(--ink);line-height:1}.brand .mark span{color:var(--teal)}.brand .ver{font-size:10px;font-weight:700;letter-spacing:.12em;color:#fff;background:var(--teal);border-radius:999px;padding:3px 8px}.brand .tag{font-size:12px;color:#5a7388;border-left:1px solid var(--teal-line);padding-left:12px}.tb-right{margin-left:auto;display:flex;align-items:center;gap:12px}.tb-search{position:relative;display:flex;align-items:center;gap:8px;min-width:min(280px,36vw);max-width:360px;flex:1 1 220px;height:34px;padding:0 10px 0 11px;border-radius:8px;background:#fff;border:1px solid var(--line);color:var(--muted)}.tb-search:focus-within,.tb-search.open{border-color:var(--brand);outline:2px solid var(--brand-line);outline-offset:0}.tb-search .i{flex:none;color:var(--muted)}.tb-search:focus-within .i,.tb-search.open .i{color:var(--brand)}.tb-search-input{flex:1;min-width:0;border:0;padding:0;background:transparent;box-shadow:none;font-size:12.5px;color:var(--ink);height:100%}.tb-search-input:focus{outline:none;box-shadow:none;border:0}.tb-search-input::-webkit-search-cancel-button{display:none}.tb-search .panel-search-clear{width:24px;height:24px;border:0;background:transparent;color:var(--faint);flex:none}.tb-search .panel-search-clear:hover{color:var(--ink-2)}.tb-search-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:80;max-height:min(420px,70vh);overflow:auto;padding:6px 0;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 36px #0f1b2d2e}.tb-search-group{padding:4px 0}.tb-search-group+.tb-search-group{border-top:1px solid var(--line-2);margin-top:2px;padding-top:6px}.tb-search-group-label{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:4px 14px 6px}.tb-search-item{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;display:flex;align-items:flex-start;gap:10px;padding:8px 14px;color:var(--ink)}.tb-search-item:hover,.tb-search-item.active{background:var(--panel-2)}.tb-search-item-ic{width:28px;height:28px;border-radius:7px;flex:none;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);border:1px solid var(--brand-line)}.tb-search-item-txt{min-width:0;flex:1}.tb-search-item-txt b{display:block;font-size:12.5px;font-weight:600;line-height:1.25}.tb-search-item-txt small{display:block;margin-top:2px;font-size:11px;color:var(--muted);line-height:1.3}.tb-search-empty{padding:18px 16px;text-align:center;font-size:12.5px;color:var(--muted)}@media(max-width:900px){.tb-search{min-width:160px;max-width:240px;flex:1 1 160px}.brand .tag,.me-meta{display:none}}@media(max-width:640px){.tb-search{min-width:120px;max-width:180px;flex:1 1 120px}.tb-search-input{font-size:12px}}.rolesel{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:5px 6px 5px 11px}.rolesel label{font-size:11px;color:var(--muted)}.rolesel select{background:#fff;border:0;border-radius:6px;padding:5px 8px;font-size:12.5px;font-weight:600;color:var(--ink)}.me{display:flex;align-items:center;gap:9px;color:var(--ink);border:0;background:transparent;padding:4px 6px;border-radius:8px;cursor:pointer}.me:hover{background:#0e9aa714}.me .av{width:30px;height:30px;border-radius:8px;background:#0e9aa724;color:#0a6f78;display:grid;place-items:center;font-family:Space Grotesk;font-weight:600;font-size:12px}.me-meta{text-align:left}.me .nm{font-size:12.5px;font-weight:500;color:var(--ink)}.me .rl{font-size:10.5px;color:var(--muted)}.content{flex:1;min-width:0;padding:22px 26px;overflow-y:auto}.toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.toolbar .eyebrow{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--brand);margin-bottom:5px}.toolbar h1{font-size:22px;font-weight:600}.toolbar p,.toolbar .toolbar-desc{margin:3px 0 0;color:var(--muted);font-size:13px;max-width:720px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;line-height:1.45}.toolbar .toolbar-desc-link{color:var(--brand);text-decoration:underline;text-underline-offset:2px;word-break:break-all}.toolbar .toolbar-desc-link:hover{color:var(--ink)}.toolbar .acts{display:flex;gap:9px;flex-wrap:wrap}.crumbs{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);margin-bottom:10px}.crumbs a{color:var(--brand);cursor:pointer}.crumbs svg{width:13px;height:13px;color:var(--faint)}.btn{border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:8px;padding:8px 14px;font-size:12.5px;font-weight:500;display:inline-flex;align-items:center;gap:7px}.btn:hover{filter:brightness(1.06)}.btn.ghost{background:#fff;color:var(--ink-2);border-color:var(--line)}.btn.ghost:hover{border-color:var(--brand);color:var(--brand);filter:none}.btn.ghost.active{border-color:var(--brand);color:var(--brand);background:var(--panel-2)}.btn.sm{padding:5px 9px;font-size:11.5px;border-radius:7px}.btn.danger{background:#fff;color:var(--u-over);border-color:#f3cbc7}.btn.danger:hover{background:var(--u-over-bg)}.iconbtn{width:30px;height:30px;border-radius:7px;border:1px solid var(--line);background:#fff;color:var(--muted);display:grid;place-items:center}.iconbtn:hover{color:var(--brand);border-color:var(--brand-line)}.iconbtn:disabled{opacity:.45;cursor:not-allowed}.iconbtn.busy{opacity:1;cursor:wait;pointer-events:none}.iconbtn.del:hover{color:var(--u-over);border-color:#f3cbc7}.iconbtn.ok{color:var(--u-heal);border-color:color-mix(in srgb,var(--u-heal) 35%,var(--line));background:var(--u-heal-bg)}.iconbtn.ok:hover{color:var(--u-heal);border-color:var(--u-heal);filter:brightness(.98)}.btn-spin{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:iconSpin .55s linear infinite;flex:none}.iconbtn .btn-spin{width:12px;height:12px}.btn .btn-spin{width:13px;height:13px}@keyframes iconSpin{to{transform:rotate(360deg)}}.modal.ws-modal-saving .modal-b{pointer-events:none;opacity:.72}.tippy-box[data-theme~=ethos]{background:var(--ink);color:#fff;font-size:11.5px;font-weight:500;line-height:1.35;border-radius:8px;box-shadow:0 8px 20px #0f1b2d38}.tippy-box[data-theme~=ethos] .tippy-content{padding:6px 10px;white-space:pre-line;max-width:360px;line-height:1.35}.tippy-box[data-theme~=ethos][data-placement^=top]>.tippy-arrow:before{border-top-color:var(--ink)}.tippy-box[data-theme~=ethos][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:var(--ink)}.tippy-box[data-theme~=ethos][data-placement^=left]>.tippy-arrow:before{border-left-color:var(--ink)}.tippy-box[data-theme~=ethos][data-placement^=right]>.tippy-arrow:before{border-right-color:var(--ink)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-h{padding:13px 16px;border-bottom:1px solid var(--line-2);display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-h.panel-h-wrap{flex-wrap:wrap}.panel-h h2{font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.panel-h .sub{font-size:11.5px;color:var(--muted)}.panel-h-title{display:flex;flex-direction:column;gap:2px;min-width:0}.panel-h-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.seg-btn{border:0;background:transparent;padding:5px 10px;font-size:11.5px;font-weight:500;color:var(--ink-2);border-right:1px solid var(--line)}.seg-btn:last-child{border-right:0}.seg-btn:hover:not(.active){color:var(--brand)}.seg-btn.active{background:var(--brand);color:#fff}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.people-access-grid{display:grid;grid-template-columns:1fr minmax(220px,280px);gap:18px;align-items:start}@media(max-width:980px){.grid2,.grid3,.people-access-grid{grid-template-columns:1fr}}.panel-search{padding:12px 16px;border-bottom:1px solid var(--line-2);display:flex;align-items:center;gap:8px}.panel-search .finput{margin:0}.panel-search-clear{flex:none}.proj-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line-2)}.proj-filters .fitem{display:flex;flex-direction:column;gap:4px;margin:0}.proj-filters .flab{font-size:11px;color:var(--muted)}.proj-filters .finput{width:auto;min-width:150px;padding:6px 9px;font-size:12.5px}.proj-filters .btn.sm{align-self:flex-end}.proj-status-multi{position:relative;width:auto}.proj-status-trigger{display:inline-flex;align-items:center;gap:8px;min-width:150px;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:#fff;font-size:12.5px;color:var(--ink-2);cursor:pointer}.proj-status-trigger:hover{border-color:var(--brand-line)}.proj-status-trigger.active{border-color:var(--brand-line);background:var(--brand-soft);color:var(--brand-2)}.proj-status-trigger svg.i{color:var(--muted);transition:transform .15s ease}.proj-status-multi.open .proj-status-trigger svg.i{transform:rotate(180deg)}.proj-status-trigger-label{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.proj-status-trigger-count{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;border-radius:20px;background:var(--brand);color:#fff;font-size:10.5px;font-weight:700}.proj-status-panel{position:absolute;left:0;top:calc(100% + 6px);z-index:300;min-width:220px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 36px #0f1b2d29;overflow:hidden}.proj-status-list{max-height:260px;overflow:auto;padding:6px}.proj-status-opt{display:flex;align-items:center;gap:9px;width:100%;border:0;background:transparent;padding:7px 8px;border-radius:7px;cursor:pointer;text-align:left}.proj-status-opt:hover{background:var(--panel-2)}.proj-status-opt.checked{background:var(--brand-soft)}.proj-status-checkbox{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:none;border:1.5px solid var(--line);border-radius:4px;background:#fff;color:#fff}.proj-status-checkbox svg.i{width:11px;height:11px}.proj-status-opt.checked .proj-status-checkbox{background:var(--brand);border-color:var(--brand)}.dt th.sortable,.heat th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.col-resize-handle{position:absolute;top:0;right:0;width:8px;height:100%;cursor:col-resize;z-index:3;touch-action:none}.col-resize-handle:after{content:"";position:absolute;top:20%;bottom:20%;right:3px;width:2px;border-radius:2px;background:transparent;transition:background .12s ease}.col-resize-handle:hover:after{background:var(--brand)}body.col-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.col-resizing *{cursor:col-resize!important}.dt th.sortable:hover,.heat th.sortable:hover{color:var(--brand)}.dt th.sortable.sorted,.heat th.sortable.sorted{color:var(--ink)}.dt th .sort-ind,.heat th .sort-ind{font-size:10px;margin-left:4px;color:var(--brand)}.drawer{position:fixed;inset:0;z-index:76;display:none}.drawer.open{display:block}.drawer-bg{position:absolute;inset:0;background:#0f1b2d59}.drawer-panel{position:absolute;top:0;right:0;height:100%;width:min(720px,100%);background:var(--panel);border-left:1px solid var(--line);display:flex;flex-direction:column;box-shadow:-12px 0 40px #0f1b2d2e;animation:slidein .22s ease}.drawer-h{padding:15px 18px;border-bottom:1px solid var(--line-2);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.drawer-h h3{font-size:15px;font-weight:600;margin:0}.drawer-h p{margin:4px 0 0;font-size:12px;color:var(--muted)}.drawer-body{flex:1;overflow:auto;padding:12px 16px 18px}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;border:1px solid}.pill.proj{color:var(--brand);background:var(--brand-soft);border-color:var(--brand-line)}.pill.init{color:var(--teal);background:var(--teal-soft);border-color:var(--teal-line)}.pill.under{color:var(--u-under);background:var(--u-under-bg);border-color:#d5e0ea}.pill.heal{color:var(--u-heal);background:var(--u-heal-bg);border-color:#c6e8d8}.pill.tight{color:var(--u-tight);background:var(--u-tight-bg);border-color:#f0dfb0}.pill.over{color:var(--u-over);background:var(--u-over-bg);border-color:#f3cbc7}.pill.ghost{color:var(--muted);background:var(--panel-2);border-color:var(--line)}.pill.idle{color:var(--u-under);background:var(--u-under-bg);border-color:#d5e0ea}.dot{width:7px;height:7px;border-radius:50%;display:inline-block}.cap-track{position:relative;height:11px;background:var(--panel-2);border:1px solid var(--line);border-radius:20px;overflow:hidden;flex:1}.cap-fill{height:100%;border-radius:20px 0 0 20px;min-width:3px;transition:filter .15s ease}.cap-fill.under,.u-under .cap-fill{background:var(--u-under)}.cap-fill.heal,.u-heal .cap-fill{background:var(--u-heal)}.cap-fill.idle,.u-idle .cap-fill{background:var(--u-under)}.cap-fill.tight,.u-tight .cap-fill{background:var(--u-tight)}.cap-fill.over,.u-over .cap-fill{background:var(--u-over)}.row-metric.click:hover .cap-fill{filter:brightness(1.06)}.avatar{width:30px;height:30px;border-radius:8px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-family:Space Grotesk;font-weight:600;font-size:12px;flex:none}.dt{width:100%;border-collapse:collapse}.dt th{text-align:left;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:11px 14px;border-bottom:1px solid var(--line)}.dt td{padding:11px 14px;border-bottom:1px solid var(--line-2);font-size:13px;vertical-align:middle}.dt tr:last-child td{border-bottom:0}.dt tbody tr.click{cursor:pointer}.dt tbody tr.click:hover{background:var(--panel-2)}.dt tbody tr.task-row-highlight{background:var(--brand-soft);outline:1px solid var(--brand-line)}.dt .rowacts{white-space:nowrap}.dt .rowacts-inner{display:flex;gap:6px;justify-content:flex-end;align-items:center}.dt .tip-host{display:inline-flex;line-height:0}.tk{font-weight:500}.tk small{display:block;color:var(--muted);font-weight:400;font-size:11px;margin-top:2px}.tk-desc{display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;max-width:28ch}.tk-row{display:flex;align-items:center;gap:6px;min-width:0}.tk-row-one{max-width:28ch;cursor:default}.tk-outline-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tk-outline-level{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.tk-outline-level .finput{width:56px;padding:4px 6px;font-size:12px}.tk-level-group{display:inline-flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.tk-level-label{font-size:11px;font-weight:600;color:var(--muted);padding:0 6px 0 4px;letter-spacing:.02em}.tk-level-btn{min-width:26px;height:24px;padding:0 6px;border:0;border-radius:6px;background:transparent;color:var(--ink-2);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:650;cursor:pointer;line-height:1}.tk-level-btn:hover{background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--brand)}.tk-level-btn.active{background:var(--panel);color:var(--brand);box-shadow:0 0 0 1px var(--brand-line)}.tk-drag-handle{flex:0 0 auto;width:14px;color:var(--faint);font-size:11px;letter-spacing:-1px;cursor:grab;-webkit-user-select:none;user-select:none;line-height:1}.dt.tk-outline-table th.tk-outline-th,.dt.tk-outline-table td.tk-outline-cell{width:1%;padding:6px 4px 6px 8px;vertical-align:middle;border-right:1px solid var(--line-2);background:color-mix(in srgb,var(--panel-2) 70%,transparent)}.dt.tk-outline-table th.tk-outline-th{border-bottom:1px solid var(--line)}.tk-outline-rail{display:flex;align-items:center;min-height:22px;position:relative}.tk-outline-sym,.tk-outline-sym-spacer{width:16px;height:16px;flex:0 0 16px;box-sizing:border-box;display:inline-grid;place-items:center;line-height:1}.tk-outline-sym{border:1px solid color-mix(in srgb,var(--ink-2) 28%,var(--line));border-radius:2px;background:var(--panel);color:var(--ink-2);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700;padding:0;cursor:pointer}.tk-outline-sym:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.tk-outline-sym.expanded{border-color:color-mix(in srgb,var(--ink-2) 40%,var(--line))}.dt tr.task-row-parent td{font-weight:560}.dt tr.task-row-phase td{background:color-mix(in srgb,var(--panel-2) 85%,transparent)}.dt tr.task-row-phase td.tk{font-weight:700}.dt tr.task-row-phase .tk-name-phase{font-weight:700;letter-spacing:.01em;color:var(--ink)}.dt tr.task-row-group td.tk,.dt tr.task-row-group .tk-name-group{font-weight:620}.dt tr.task-row-leaf td.tk{font-weight:450}.dt tr.task-row-dragging{opacity:.45}.dt tr.task-row-drop td{outline:2px solid color-mix(in srgb,var(--brand) 55%,transparent);outline-offset:-2px;background:color-mix(in srgb,var(--brand) 8%,var(--panel))}.tk-name{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;max-width:100%}.task-code{flex:0 0 auto;font-size:10px;font-weight:650;line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:5px;padding:2px 5px;cursor:default;-webkit-user-select:all;user-select:all}.tk-subcount{flex:0 0 auto;font-size:10px;font-weight:600;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;min-width:18px;height:18px;padding:0 6px;display:inline-grid;place-items:center;line-height:1}.tk-text{min-width:0;flex:1 1 auto}.tk-text .tk-name{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tk-feat{display:inline-flex;align-items:center;max-width:100%;margin-top:4px;padding:2px 8px;border-radius:6px;font-size:10px;font-weight:650;line-height:1.3;color:var(--brand);background:var(--brand-soft);border:1px solid var(--brand-line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:default}.tk-toggle,.tk-toggle-spacer{width:22px;height:22px;flex:0 0 22px;margin-top:1px}.tk-toggle{border:0;background:transparent;color:var(--muted);border-radius:6px;display:grid;place-items:center;cursor:pointer;padding:0}.tk-toggle:hover{color:var(--brand);background:var(--panel-2)}.tk-toggle .i{transition:transform .15s ease;transform:rotate(0)}.tk-toggle.open .i{transform:rotate(90deg)}.dt tr.task-row-sub:not(.task-row-phase):not(.task-row-group) td{background:transparent}.dt tr.task-row-sub .tk{font-weight:450}.dt tr.task-row-group td{background:color-mix(in srgb,var(--panel-2) 40%,transparent)}.status{font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;white-space:nowrap}.status.done{background:var(--u-heal-bg);color:var(--u-heal)}.status.prog{background:var(--brand-soft);color:var(--brand)}.status.todo{background:var(--panel-2);color:var(--muted)}.status.hold{background:var(--u-tight-bg);color:var(--u-tight)}.status.review{background:color-mix(in srgb,var(--brand) 10%,#fff);color:var(--brand)}.status.testing{background:color-mix(in srgb,#6B5CE7 12%,#fff);color:#4f46b8}.status.reopened{background:color-mix(in srgb,var(--u-over) 10%,#fff);color:var(--u-over)}.varc{font-family:JetBrains Mono;font-size:12px;font-weight:600}.varc.pos{color:var(--u-over)}.varc.neg{color:var(--u-heal)}.varc.zero{color:var(--muted)}.assignees{display:flex}.assignees .avatar{width:24px;height:24px;font-size:10px;margin-left:-6px;border:2px solid #fff}.assignees .avatar:first-child{margin-left:0}.assignees-est{display:flex;flex-wrap:nowrap;align-items:center;gap:2px 4px;max-width:none;white-space:nowrap}.assignees-est .avatar{margin-left:0;flex:none}.assignees-est .assignee-h{font-size:10px;color:var(--muted);margin-right:4px;flex:none;white-space:nowrap}.task-assignee-table{width:100%;font-size:12px}.task-assignee-table th,.task-assignee-table td{padding:4px 8px;font-size:12px;line-height:1.25;vertical-align:middle}.task-assignee-table th{padding-top:2px;padding-bottom:4px;font-size:10px}.task-assignee-table .finput{padding:2px 6px;font-size:12px;height:28px;min-height:28px;line-height:1.2}.task-assignee-table .iconbtn{width:26px;height:26px}.empty{padding:40px 20px;text-align:center;color:var(--muted);font-size:13px}.empty svg{width:26px;height:26px;color:var(--faint);margin-bottom:8px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}@media(max-width:1000px){.kpis{grid-template-columns:repeat(2,1fr)}}.kpi{padding:15px 17px}.kpi .l{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.kpi .n{font-family:Space Grotesk;font-size:28px;font-weight:600;margin-top:6px;line-height:1}.kpi .n small{font-size:14px;color:var(--muted);font-weight:500}.kpi .d{font-size:11px;margin-top:6px;color:var(--muted);display:flex;align-items:center;gap:5px}.kpi.accent{border-top:3px solid var(--kpi-accent, var(--line))}.row-metric.click.selected{background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand)}.dash-loading{opacity:.65}.dash-loading .n,.dash-loading .mono{color:var(--faint)}.modal.dash-loading,.scrim .modal{opacity:1}.dash-error{color:var(--u-over);font-size:13px}.row-metric{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line-2)}.row-metric:last-child{border-bottom:0}.row-metric .nm{width:180px;flex:none;font-size:13px;font-weight:500}.row-metric .nm small{display:block;color:var(--muted);font-weight:400;font-size:11px}.row-metric.click{cursor:pointer}.row-metric.click:hover{background:var(--panel-2)}.heat-scroll{overflow-x:auto}.heat{border-collapse:separate;border-spacing:0;width:100%;min-width:760px;table-layout:fixed}.heat th,.heat td{border-bottom:1px solid var(--line-2)}.heat thead th:not(.who),.heat tbody td.ucell{border-left:1px solid var(--line-2)}.heat thead th{font-size:10px;font-weight:600;color:var(--muted);text-align:center;padding:4px 2px;white-space:nowrap;min-width:28px}.heat thead th .dow{display:block;font-size:8.5px;font-weight:600;color:var(--muted);letter-spacing:.03em}.heat thead th .dnum{display:block;font-size:11px;font-weight:700;color:var(--ink-2);line-height:1.1}.heat thead th.who{text-align:left;padding-left:10px;width:240px;min-width:240px;max-width:240px}.person{display:flex;align-items:center;gap:6px;padding:4px 8px}.person .nm{font-weight:500;font-size:11.5px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person .rl{font-size:10px;color:var(--muted);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person .sync{font-size:8.5px;color:var(--brand);border:1px solid var(--brand-line);border-radius:4px;padding:0 4px;margin-top:1px;display:inline-block;background:var(--brand-soft);line-height:1.4}.ucell{padding:1px;text-align:center;cursor:pointer;vertical-align:middle}.ucell .box{border-radius:4px;padding:3px 2px;border:1px solid transparent;transition:transform .12s}.ucell:hover .box{transform:scale(1.05)}.ucell .pct{font-family:JetBrains Mono;font-size:11px;font-weight:600;line-height:1.1}.ucell .hrs{font-family:JetBrains Mono;font-size:9px;opacity:.7;margin-top:0;line-height:1.1}.ucell .box.hours-only{padding:2px;display:flex;align-items:center;justify-content:center;min-height:0}.ucell .box.hours-only .hrs{font-size:11px;font-weight:600;opacity:1;margin:0}.ucell .box.hours-only .hrs.faint{color:var(--faint);font-weight:500}.ucell .box.hours-only.week-total .hrs{font-size:10px}.hrs.hrs-stacked{display:flex;flex-direction:column;align-items:center;line-height:1}.hrs.hrs-stacked .hrs-top{font-weight:700}.hrs.hrs-stacked .hrs-bot{font-size:8.5px;font-weight:500;opacity:.6;border-top:1px solid currentColor;padding-top:1px;margin-top:1px}.box.under{background:var(--u-under-bg);color:var(--u-under)}.box.heal{background:var(--u-heal-bg);color:var(--u-heal)}.box.tight{background:var(--u-tight-bg);color:var(--u-tight)}.box.over{background:var(--u-over-bg);color:var(--u-over);box-shadow:inset 0 0 0 1px var(--u-over)}.box.off{background:repeating-linear-gradient(45deg,#eef2f7,#eef2f7 4px,#e4eaf2 4px 8px);color:var(--faint)}.legend{display:flex;gap:13px;flex-wrap:wrap;font-size:11.5px;color:var(--muted);align-items:center}.legend .k{display:flex;align-items:center;gap:6px}.legend .sw{width:12px;height:12px;border-radius:4px}.ts{width:100%;border-collapse:collapse}.ts th{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:10px;border-bottom:1px solid var(--line);text-align:center}.ts th.tcol{text-align:left;width:250px}.ts td{padding:8px 10px;border-bottom:1px solid var(--line-2);text-align:center}.ts td.tcol{text-align:left}.ts .tsk{font-weight:500;font-size:12.5px}.ts .tsk small{display:block;color:var(--muted);font-weight:400;font-size:11px}.tscell{display:flex;flex-direction:column;align-items:center;gap:3px}.tscell input{width:56px;text-align:center;font-family:JetBrains Mono;font-size:12.5px;padding:6px 4px;border:1px solid var(--line);border-radius:6px}.tscell input:focus{outline:2px solid var(--brand-line);border-color:var(--brand)}.tscell input.off{background:var(--panel-2);color:var(--faint)}.tscell .plan{font-size:10px;color:var(--muted);font-family:JetBrains Mono;font-weight:600;letter-spacing:.02em}.tscell input::placeholder{color:var(--faint);font-size:11px}.ts-day-note{width:26px;height:26px;margin-top:2px;border-radius:6px}.tscell .ts-cell-note{width:22px;height:22px;margin-top:0;padding:0;opacity:.72}.tscell .ts-cell-note:hover:not(:disabled),.tscell .ts-cell-note.ok{opacity:1}.ts-day-h{display:flex;flex-direction:column;align-items:center;gap:4px}.ts-day-h .ts-day-note{margin-top:0}.ts tfoot td{border-top:2px solid var(--line);border-bottom:0;padding-top:11px;font-family:JetBrains Mono;font-weight:600;font-size:12.5px}.ts .totlab{text-align:left;font-family:Inter;font-weight:600;font-size:12px;color:var(--ink-2)}.ts-note-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:10px}.ts-note-mic-row{display:flex;margin-bottom:8px}.ts-mic-toggle{display:inline-flex;align-items:center;gap:8px;width:100%;justify-content:center;min-height:42px;font-weight:650}.ts-note-toolbar .btn.listening,.iconbtn.listening,.ts-mic-toggle.listening{color:#fff;border-color:#dc2626;background:#dc2626;animation:chatMicPulse 1.2s ease-in-out infinite}.ts-voice-hint{font-size:12px;color:var(--muted);margin:0 0 10px}.ts-voice-hint.live{color:#b91c1c;font-weight:600}.scrim{position:fixed;inset:0;background:#0f1b2d75;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:none;align-items:center;justify-content:center;z-index:1000;padding:20px}.scrim.open{display:flex}.modal{background:var(--panel);border:1px solid var(--line);border-radius:14px;width:min(560px,100%);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0f1b2d4d;opacity:1}.modal.wide{width:min(760px,100%)}.modal:has(.combo-input-wrap:focus-within){overflow:visible}.modal-h{padding:17px 20px;border-bottom:1px solid var(--line-2);flex-shrink:0;background:var(--panel);z-index:2;border-radius:14px 14px 0 0}.modal-h h3{font-size:16px;font-weight:600}.modal-h p{margin:5px 0 0;font-size:12.5px;color:var(--muted)}.modal-b{padding:18px 20px;overflow-y:auto;flex:1 1 auto;min-height:0}.modal-b:has(.combo-input-wrap:focus-within){overflow:visible}.modal-f{padding:14px 20px;border-top:1px solid var(--line-2);display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-shrink:0;background:var(--panel);position:relative;z-index:1;border-radius:0 0 14px 14px}.modal-f .btn{line-height:1.2;min-height:34px}.frow{margin-bottom:14px}.frow:last-child{margin-bottom:0}.flab{font-size:11.5px;font-weight:600;color:var(--ink-2);margin-bottom:5px;display:block}.finput{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px 11px;font-size:13px;background:#fff}.finput:focus{outline:2px solid var(--brand-line);border-color:var(--brand)}textarea.finput{resize:vertical;min-height:64px}.checkline{display:flex;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;margin-bottom:7px;font-size:13px}.checkline input{width:16px;height:16px;accent-color:var(--brand)}.hint{font-size:11.5px;color:var(--faint);display:flex;align-items:center;gap:6px;margin-top:12px}.notice{background:var(--brand-soft);border:1px solid var(--brand-line);color:var(--brand-2);border-radius:9px;padding:11px 13px;font-size:12.5px;display:flex;gap:9px;margin-bottom:16px}.matrix{width:100%;border-collapse:collapse;font-size:12.5px}.matrix th{padding:9px 8px;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;text-align:center}.matrix th.cap{text-align:left;width:230px}.matrix td{padding:9px 8px;border-bottom:1px solid var(--line-2);text-align:center;vertical-align:middle}.matrix td.cap{text-align:left;font-weight:500}.matrix td.yes,.matrix td.no{text-align:center}.matrix td.yes svg{display:inline-block;vertical-align:middle}.yes{color:var(--u-heal)}.no{color:var(--faint)}.rolechip{font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;background:var(--panel-2);color:var(--ink-2);border:1px solid var(--line)}.combo{display:flex;flex-direction:column;gap:8px;margin-top:6px}.combo-chips{display:flex;flex-wrap:wrap;gap:6px}.combo-chip{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;padding:3px 8px 3px 10px;border-radius:20px;background:var(--brand-soft);color:var(--brand-2);border:1px solid var(--brand-line)}.combo-chip-x{border:0;background:transparent;color:var(--brand);font-size:15px;line-height:1;padding:0 2px;cursor:pointer;border-radius:4px}.combo-chip-x:hover{background:#0000000f}.combo-input-wrap{position:relative}.combo-input-wrap:focus-within{z-index:30;position:relative}.combo-input{margin:0}.combo-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:300;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 32px #0f1b2d2e;max-height:min(220px,40vh);overflow:auto}.modal .combo-menu{top:auto;bottom:calc(100% + 4px)}.combo-opt{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;border:0;background:transparent;text-align:left;padding:9px 11px;font-size:13px;color:var(--ink);cursor:pointer}.combo-opt:hover,.combo-opt:focus{background:var(--panel-2);outline:none}.combo-opt small{font-size:11px;color:var(--muted);font-weight:400}.combo-empty{padding:12px 11px;font-size:12.5px;color:var(--muted);text-align:center}.rtabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}.rtab{border:1px solid var(--line);background:#fff;color:var(--ink-2);border-radius:20px;padding:7px 14px;font-size:12.5px;font-weight:500}.rtab.active{background:var(--brand);color:#fff;border-color:var(--brand)}.config-list{display:flex;flex-direction:column;gap:8px}.config-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:8px}.config-item .g{flex:1;font-size:13px;font-weight:500}.config-item .g small{color:var(--muted);font-weight:400}.toast-wrap{position:fixed;bottom:22px;left:50%;transform:translate(-50%);z-index:1010;display:flex;flex-direction:column;gap:8px;align-items:center}.toast{background:var(--navy);color:#fff;border-radius:10px;padding:11px 16px;font-size:12.5px;box-shadow:0 12px 30px #00000047;display:flex;align-items:center;gap:10px;max-width:90vw}.toast .mono{color:#9fc0ff}.ver{font-size:10px;font-weight:600;color:var(--navy);background:#7fa8f0;border-radius:5px;padding:1px 5px;vertical-align:middle;margin-left:2px}.tb-icon{position:relative;height:34px;border:1px solid var(--line);background:#fff;color:var(--ink-2);border-radius:8px;padding:0 11px;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.tb-icon:hover{border-color:var(--teal-line);color:var(--teal);background:var(--teal-soft)}.tb-icon.iq{background:var(--teal);color:#fff;border-color:var(--teal)}.tb-icon.iq:hover{filter:brightness(1.06);color:#fff;background:var(--teal)}.tb-attendance-wrap{position:relative;flex:none}.tb-attendance-wrap.open{z-index:85}.tb-attendance{display:flex;align-items:center;gap:10px;padding:4px 6px 4px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;min-height:38px;transition:border-color .15s,box-shadow .15s,background .15s}.tb-attendance.is-in{border-color:#b8e6cb;background:linear-gradient(180deg,#f4fbf7,#fff);box-shadow:0 0 0 1px #22c55e14}.tb-attendance.is-out{border-color:var(--line);background:#fff}.tb-attendance.is-loading{border-color:var(--teal-line);background:var(--teal-soft);box-shadow:0 0 0 2px #00808014}.tb-att-status{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.tb-att-status-text{display:flex;flex-direction:column;gap:1px;min-width:0}.tb-att-status-title{font-size:11.5px;font-weight:700;color:var(--ink);line-height:1.2;white-space:nowrap}.tb-att-status-sub{font-size:10px;color:var(--muted);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.tb-att-dot{width:9px;height:9px;border-radius:50%;flex:none}.tb-att-dot.in{background:#22c55e;box-shadow:0 0 0 3px #22c55e33;animation:attPulse 2s ease-in-out infinite}.tb-att-dot.out{background:#cbd5e1;box-shadow:0 0 0 3px #94a3b826}.tb-att-spin{width:16px;height:16px;color:var(--teal)}.tb-att-action{border:0;border-radius:8px;padding:6px 12px;font-size:11.5px;font-weight:700;cursor:pointer;white-space:nowrap;transition:filter .15s,transform .1s}.tb-att-action.in{background:var(--teal);color:#fff}.tb-att-action.in:hover{filter:brightness(1.06)}.tb-att-action.out{background:#fff;color:#b45309;border:1px solid #fcd9a8}.tb-att-action.out:hover{background:#fff8eb}.tb-att-logs{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;flex:none;border-left:1px solid var(--line-2);margin-left:2px;padding-left:2px}.tb-att-logs:hover,.tb-att-logs.active{background:var(--teal-soft);color:var(--teal)}.tb-att-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:90;width:min(300px,100vw - 24px);background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 36px #0f1b2d2e;overflow:hidden}.tb-att-popover-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line-2);font-size:12px;color:var(--ink)}.tb-att-popover-h strong{font-weight:700;font-size:12.5px}.tb-att-popover-total{font-size:11px;color:var(--muted)}.tb-att-popover-empty{padding:16px 14px;font-size:12px;color:var(--muted);text-align:center}.tb-att-sessions{list-style:none;margin:0;padding:6px 0;max-height:min(280px,50vh);overflow:auto}.tb-att-session{display:flex;align-items:flex-start;gap:10px;padding:8px 14px}.tb-att-session+.tb-att-session{border-top:1px solid var(--line-2)}.tb-att-session.active{background:linear-gradient(90deg,rgba(34,197,94,.06),transparent)}.tb-att-session-num{width:20px;height:20px;border-radius:6px;flex:none;display:grid;place-items:center;font-size:10px;font-weight:700;color:var(--muted);background:var(--panel-2);border:1px solid var(--line-2)}.tb-att-session.active .tb-att-session-num{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.tb-att-session-body{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px}.tb-att-session-times{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2);min-width:0}.tb-att-session-sep{color:var(--faint);font-size:11px}.tb-att-session-live{font-size:11px;font-weight:700;color:#15803d;display:inline-flex;align-items:center;gap:4px}.tb-att-session-live:before{content:"";width:6px;height:6px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 2px #22c55e33;animation:attPulse 2s ease-in-out infinite}.tb-att-session-dur{font-size:11px;color:var(--muted);white-space:nowrap;flex:none}.tb-att-popover-f{padding:8px 10px;border-top:1px solid var(--line-2);display:flex;justify-content:flex-end}@keyframes attPulse{0%,to{box-shadow:0 0 0 3px #22c55e33}50%{box-shadow:0 0 0 5px #22c55e14}}.nbadge{position:absolute;top:-6px;right:-6px;background:var(--u-over);color:#fff;font-size:9px;font-weight:700;border-radius:20px;min-width:16px;height:16px;display:grid;place-items:center;padding:0 4px;border:2px solid #fff}.me{border:0;background:transparent;padding:0}.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.fitem.full{grid-column:1/-1}.fsection{grid-column:1/-1;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line-2);padding-bottom:6px;margin-top:4px}.dp-wrap{position:relative}.dp-wrap.open{z-index:30}.dp-input-wrap{position:relative;display:flex;align-items:stretch}.dp-input{cursor:pointer;padding-right:38px;background:#fff}.dp-input:focus{outline:2px solid var(--brand-line);border-color:var(--brand)}.dp-trigger{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--muted);display:grid;place-items:center;padding:0}.dp-trigger:hover{color:var(--teal);background:var(--teal-soft)}.dp-pop{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:300;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px #0f1b2d2e;padding:12px}.modal .dp-pop{top:auto;bottom:calc(100% + 4px)}.modal:has(.dp-wrap.open){overflow:visible}.modal-b:has(.dp-wrap.open){overflow:visible}.dp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.dp-title{font-family:Space Grotesk,sans-serif;font-size:13.5px;font-weight:600;color:var(--ink);flex:1;text-align:center}.dp-nav{width:28px;height:28px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink-2);font-size:17px;line-height:1;display:grid;place-items:center;padding:0}.dp-nav:hover{border-color:var(--teal-line);color:var(--teal);background:var(--teal-soft)}.dp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.dp-weekdays span{font-size:10px;font-weight:600;color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.04em;padding:2px 0}.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dp-day{border:0;background:transparent;border-radius:7px;padding:7px 0;font-size:12.5px;color:var(--ink-2);cursor:pointer;line-height:1}.dp-day:hover,.dp-day:focus{background:var(--panel-2);outline:none}.dp-day.outside{color:var(--faint)}.dp-day.today{box-shadow:inset 0 0 0 1px var(--teal-line);color:var(--teal);font-weight:600}.dp-day.selected{background:var(--brand);color:#fff;font-weight:600}.dp-day.selected.today{box-shadow:none}.dp-foot{display:flex;justify-content:flex-end;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line-2)}.cal-toggle{display:flex;gap:2px;background:var(--panel-2);border:1px solid var(--line);border-radius:9px;padding:3px}.cal-toggle button{border:0;background:transparent;color:var(--ink-2);font-size:12.5px;font-weight:500;padding:6px 14px;border-radius:6px}.cal-toggle button.active{background:#fff;color:var(--brand);box-shadow:var(--shadow)}.cal-nav{display:flex;align-items:center;gap:4px;background:var(--panel-2);border:1px solid var(--line);border-radius:9px;padding:3px}.cal-nav .btn{padding:5px 10px;min-width:32px;line-height:1}.cal-week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}@media(max-width:900px){.cal-week-grid{grid-template-columns:repeat(2,1fr)}}.cal-day{background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);overflow:hidden;min-height:150px;text-align:left;width:100%}.cal-interactive{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background .15s ease;font:inherit;color:inherit}.cal-interactive:hover{border-color:var(--brand);box-shadow:0 8px 24px #0f1b2d1a;transform:translateY(-1px)}.cal-interactive.selected{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.cal-interactive.off-day:hover{transform:none}.cal-day .dh{padding:10px 12px;border-bottom:1px solid var(--line-2);display:flex;justify-content:space-between;align-items:center}.cal-day .dh .dn{font-weight:600;font-size:13px}.cal-day .dh .dn small{color:var(--faint);font-weight:400}.cal-hours{font-size:11px;color:var(--muted)}.cal-empty{padding:14px;text-align:center;color:var(--faint);font-size:12px}.cal-ev{margin:8px 10px;padding:7px 9px;border-radius:7px;border-left:3px solid var(--brand);background:var(--brand-soft);font-size:11.5px;transition:background .15s ease,transform .15s ease}.cal-day:hover .cal-ev,.cal-detail-modal .cal-ev:hover{background:#d9e6fc;transform:translate(2px)}.cal-ev.init{border-left-color:var(--teal);background:var(--teal-soft)}.cal-ev.init:hover{background:#d4f0ee}.cal-ev .h{font-family:JetBrains Mono;color:var(--muted);font-size:10px}.cal-month{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed}.cal-month th{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:8px;font-weight:600;text-align:center}.cal-month td{border:1px solid var(--line-2);height:92px;vertical-align:top;padding:0;width:14.28%}.cal-month td.out{background:var(--panel-2)}.cal-month-cell{display:block;width:100%;height:100%;min-height:92px;padding:7px 8px;border:0;background:transparent;text-align:left;border-radius:0}.cal-month-cell:hover{background:var(--brand-soft)}.cal-month-cell.selected{background:var(--brand-soft);box-shadow:inset 0 0 0 2px var(--brand)}.cal-month .dnum{font-family:JetBrains Mono;font-size:12px;color:var(--ink-2);font-weight:600}.cal-month .load{margin-top:6px;height:5px;border-radius:5px;background:var(--panel-2);overflow:hidden}.cal-month-cell:hover .load i{filter:brightness(.95)}.cal-month .load i{display:block;height:100%;transition:width .2s ease,filter .15s ease}.cal-month .tag{margin-top:5px;font-size:10px;color:var(--muted)}.cal-month .off-tag{color:var(--faint)}.cal-q{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:900px){.cal-q{grid-template-columns:1fr}}.qbars{display:flex;gap:5px;align-items:flex-end;height:90px;padding:10px 12px}.qbars .qb{flex:1;border-radius:4px 4px 0 0;min-height:3px;border:0;padding:0}.qbars .qb:hover{filter:brightness(1.08);transform:scaleY(1.03);transform-origin:bottom}.qbars .qb.selected{box-shadow:0 0 0 2px var(--brand),0 4px 12px #0f1b2d26}.cal-year{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:760px){.cal-year{grid-template-columns:repeat(2,1fr)}}.ymon{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:13px 15px;box-shadow:var(--shadow);text-align:left;width:100%}.ymon .mn{font-weight:600;font-size:13px}.ymon .mb{margin-top:9px;display:flex}.ymon:hover .cap-fill{filter:brightness(1.05)}.cal-detail-modal{width:min(520px,100%)}.cal-detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}@media(max-width:560px){.cal-detail-stats{grid-template-columns:1fr}}.cal-stat{background:var(--panel-2);border:1px solid var(--line-2);border-radius:9px;padding:10px 12px}.cal-stat .l{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px}.cal-stat .v{font-size:14px;font-weight:600}.cal-detail-section{margin-top:14px}.cal-detail-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.pop{position:fixed;top:56px;right:16px;width:360px;max-width:92vw;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 50px #0f1b2d3d;z-index:75;overflow:hidden;display:none}.pop.open{display:block;animation:popin .18s ease}@keyframes popin{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.pop-h{padding:13px 16px;border-bottom:1px solid var(--line-2);display:flex;justify-content:space-between;align-items:center}.pop-h h3{font-size:14px;font-weight:600}.pop-item{padding:12px 16px;border-bottom:1px solid var(--line-2);display:flex;gap:11px;align-items:flex-start;cursor:pointer}.pop-item:last-child{border-bottom:0}.pop-item:hover{background:var(--panel-2)}.pop-item.unread{background:var(--brand-soft)}.pop-item.unread:hover{background:#e0eafb}.pop-item .pic{width:28px;height:28px;border-radius:7px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:var(--brand);flex:none}.pop-item .pc b{font-size:12.5px;font-weight:600}.pop-item .pc p{margin:2px 0 0;font-size:11.5px;color:var(--muted)}.pop-item .pc .t{font-size:10.5px;color:var(--faint);margin-top:3px}.chat{position:fixed;inset:0;z-index:76;display:none}.chat.open{display:block}.chat.iq-page{display:flex;z-index:1}.chat .cbg{display:none}.chat-panel{position:relative;inset:auto;flex:1;min-width:0;width:auto;height:100%;background:var(--panel);display:flex;flex-direction:column;animation:chatFullscreenIn .2s ease}.iq-page,.iq-page .chat-panel{min-height:100vh;min-height:100dvh}.iq-page .chat-panel{animation:none}.iq-sidebar{width:280px;flex:none;display:flex;flex-direction:column;border-right:1px solid var(--line);background:linear-gradient(180deg,#f7fafd,#eef3f9);min-height:100vh;min-height:100dvh}.iq-sidebar-h{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 14px;border-bottom:1px solid var(--line-2);font-size:13px;font-weight:650}.iq-sidebar-body{flex:1;overflow-y:auto;padding:10px 10px 18px}.iq-sidebar-label{margin:12px 6px 6px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.iq-sidebar-empty{padding:8px 10px;font-size:12px;color:var(--muted)}.iq-chat-item{width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:10px;padding:10px;margin-bottom:4px;display:flex;flex-direction:column;gap:3px}.iq-chat-item b{font-size:12.5px;font-weight:650;color:var(--ink);line-height:1.3}.iq-chat-item small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iq-chat-item:hover{background:#fff;border-color:var(--line)}.iq-chat-item.active{background:#fff;border-color:var(--brand-line);box-shadow:inset 3px 0 0 var(--brand)}.iq-chat-item.shared b{color:var(--ink-2)}.iq-readonly-banner{flex:none;padding:10px 22px;border-bottom:1px solid var(--line-2);background:color-mix(in srgb,var(--brand) 7%,#fff);font-size:12.5px;color:var(--ink-2);display:flex;align-items:center;justify-content:space-between;gap:12px}.iq-readonly-copy{min-width:0;line-height:1.4}.iq-readonly-copy b{font-weight:650;color:var(--ink)}.iq-readonly-banner .btn{flex:none;white-space:nowrap}.iq-share-modal{width:min(520px,100%)}.iq-share-hint{font-size:12.5px;color:var(--muted);padding:6px 2px}.iq-share-link{display:flex;align-items:center;gap:8px}.iq-share-link .finput{flex:1;min-width:0;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.iq-share-link .btn{flex:none;white-space:nowrap}.iq-share-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}.iq-share-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--brand-line);background:var(--brand-soft);color:var(--ink);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600}.iq-share-chip span:last-child{opacity:.7;font-size:14px;line-height:1}.iq-share-hits{display:flex;flex-direction:column;gap:4px;margin-top:8px}.iq-share-hit{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px 12px}.iq-share-hit-main{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.iq-share-hit:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft)}.iq-share-hit.selected{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand)}.iq-share-hit:disabled{opacity:.55;cursor:default}.iq-share-hit b{font-size:13px}.iq-share-hit small{font-size:11.5px;color:var(--muted)}.iq-share-hit-mark{flex:none;font-size:11.5px;font-weight:650;color:var(--brand)}.iq-share-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-2)}.iq-share-row:last-child{border-bottom:0}.iq-share-row b{display:block;font-size:13px}.iq-share-row small{font-size:11.5px;color:var(--muted)}@media(max-width:860px){.iq-sidebar{width:220px}}@media(max-width:720px){.chat.iq-page{flex-direction:column}.iq-sidebar{width:100%;min-height:0;max-height:38vh;border-right:0;border-bottom:1px solid var(--line)}}@keyframes chatFullscreenIn{0%{opacity:.55;transform:scale(.985)}to{opacity:1;transform:none}}.chat-h{padding:16px 22px;border-bottom:1px solid var(--line-2);display:flex;align-items:center;gap:10px;flex:none}.chat-h .ci{width:30px;height:30px;border-radius:8px;background:#7fa8f0;color:var(--navy);display:grid;place-items:center}.chat-h h3{font-size:16px;font-weight:600}.chat-h p{margin:1px 0 0;font-size:12px;color:var(--muted);min-height:14px}.iq-ppt-card{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--brand-line);border-radius:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 8%,#fff),#fff)}.iq-ppt-card.error{border-color:#f3cbc7;background:var(--u-over-bg)}.iq-ppt-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand)}.iq-ppt-card.error .iq-ppt-label{color:var(--u-over)}.iq-ppt-name{margin-top:3px;font-size:13px;font-weight:600;color:var(--ink);word-break:break-all}.iq-ppt-card .btn{flex:none;white-space:nowrap}.chat-thinking{flex:none;padding-top:12px;padding-bottom:10px;border-bottom:1px solid var(--line-2);background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 8%,var(--panel)) 0%,var(--panel) 100%);animation:chatStepIn .18s ease}.chat-thinking-now{display:flex;align-items:flex-start;gap:10px;width:100%}.chat-thinking-copy{min-width:0;flex:1}.chat-thinking-label{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand);margin-bottom:3px}.chat-thinking-latest{font-size:13px;font-weight:600;color:var(--ink);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-thinking-steps{margin-top:10px;display:flex;flex-direction:column;gap:5px;max-height:92px;overflow:hidden;width:100%}.chat-thinking,.chat-body,.chat-sug,.chat-in{padding-left:max(22px,(100% - 960px) / 2);padding-right:max(22px,(100% - 960px) / 2)}.chat-body{flex:1;overflow-y:auto;padding-top:20px;padding-bottom:20px;display:flex;flex-direction:column;gap:14px;width:100%;box-sizing:border-box}.msg{max-width:78%;padding:10px 13px;border-radius:12px;font-size:13.5px;line-height:1.55}.msg.u{align-self:flex-end;background:var(--brand);color:#fff;border-bottom-right-radius:4px}.msg.a{align-self:flex-start;max-width:100%;background:var(--panel-2);border:1px solid var(--line);border-bottom-left-radius:4px;position:relative}.msg.a.streaming{border-color:color-mix(in srgb,var(--brand) 35%,var(--line))}.msg.a .mono{color:var(--brand)}.msg-placeholder{color:var(--muted);font-size:12.5px}.msg-caret{display:inline-block;width:7px;height:14px;margin-left:2px;vertical-align:-2px;background:var(--brand);border-radius:1px;animation:chatCaret 1s steps(1) infinite}@keyframes chatCaret{50%{opacity:0}}.iq-h2{font-size:13.5px;font-weight:650;margin:10px 0 4px;color:var(--ink)}.iq-h3{font-size:12.5px;font-weight:600;margin:8px 0 3px;color:var(--ink-2)}.iq-li{padding-left:12px;position:relative;margin:2px 0}.iq-li:before{content:"\2022";position:absolute;left:0;color:var(--brand)}.iq-table-wrap{margin-top:10px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.iq-table-title{padding:8px 10px;font-size:12px;font-weight:600;color:var(--ink-2);border-bottom:1px solid var(--line-2);background:var(--panel-2)}.iq-table-scroll{overflow-x:auto;max-width:100%}.iq-table{width:100%;border-collapse:collapse;font-size:11.5px}.iq-table th,.iq-table td{padding:7px 9px;border-bottom:1px solid var(--line-2);text-align:left;vertical-align:top}.iq-table th{font-size:10.5px;text-transform:uppercase;letter-spacing:.02em;color:var(--muted);font-weight:650;white-space:nowrap}.iq-table tbody tr:last-child td{border-bottom:0}.iq-table tbody tr:hover td{background:color-mix(in srgb,var(--brand) 5%,transparent)}.iq-table .right{text-align:right;font-variant-numeric:tabular-nums}.iq-table .center{text-align:center}.iq-link{border:0;background:transparent;padding:0;color:var(--brand);font:inherit;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.iq-link:hover{filter:brightness(.92)}.iq-chart-card,.iq-dash{margin-top:12px;width:100%;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.iq-chart{padding:10px 12px 12px}.iq-chart-title{font-size:12.5px;font-weight:650;color:var(--ink-2);margin-bottom:8px}.iq-chart-canvas-wrap{position:relative;height:220px;width:100%}.iq-chart-lg .iq-chart-canvas-wrap{height:min(52vh,420px)}.iq-dash-hd{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line-2);background:var(--panel-2)}.iq-dash-title{font-size:14px;font-weight:650;color:var(--ink)}.iq-dash-hint{font-size:11px;color:var(--muted);white-space:nowrap}.iq-dash-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;padding:12px;align-items:stretch}.iq-dash-widget{grid-column:span var(--w, 12);min-height:calc(var(--h, 1) * 92px);border:1px solid var(--line-2);border-radius:10px;background:var(--panel);overflow:hidden}.iq-dash-widget.kpi{background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 6%,#fff),#fff)}.iq-kpi{padding:14px 14px 12px;height:100%;display:flex;flex-direction:column;justify-content:center}.iq-kpi-label{font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.iq-kpi-value{margin-top:6px;font-size:26px;font-weight:700;color:var(--ink);line-height:1.1;font-variant-numeric:tabular-nums}.iq-kpi-delta{margin-top:6px;font-size:12px;font-weight:600;color:var(--ink-2)}.iq-kpi-delta.up{color:#059669}.iq-kpi-delta.down{color:#dc2626}.iq-dash-chart{display:flex;flex-direction:column;height:100%;min-height:0}.iq-dash-chart-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px 0;font-size:12px;font-weight:650;color:var(--ink-2)}.iq-dash-expand{border:1px solid var(--line);background:#fff;border-radius:7px;width:26px;height:26px;font-size:13px;line-height:1;color:var(--ink-2);cursor:pointer}.iq-dash-expand:hover{border-color:var(--brand);color:var(--brand)}.iq-dash-chart .iq-chart{flex:1;padding:4px 8px 10px}.iq-dash-chart .iq-chart-canvas-wrap{height:100%;min-height:160px}.iq-dash-table{margin:0;border:0;border-radius:0;height:100%}.iq-dash-overlay{position:fixed;inset:0;z-index:90;background:#0f1b2d73;display:grid;place-items:center;padding:24px}.iq-dash-overlay-panel{width:min(920px,100%);background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px #0f1b2d47;padding:12px 14px 16px}.iq-dash-overlay-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.iq-dash-overlay-hd h4{margin:0;font-size:15px;font-weight:650}@media(max-width:720px){.iq-dash-widget{grid-column:span 12!important;min-height:180px}.iq-dash-hint{display:none}}.chat-activity{align-self:flex-start;max-width:92%;display:flex;flex-direction:column;gap:6px;padding:2px 2px 4px;margin-top:-2px}.chat-step{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--muted);animation:chatStepIn .18s ease}.chat-step.active{color:var(--ink-2);font-weight:550}.chat-step.done{opacity:.72}.chat-step-dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--line);box-shadow:0 0 0 2px transparent}.chat-step.active .chat-step-dot{background:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent);animation:chatPulse 1.2s ease-in-out infinite}.chat-step.done .chat-step-dot{background:var(--teal)}@keyframes chatStepIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes chatPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.chat-status-pulse{width:8px;height:8px;border-radius:50%;background:var(--brand);flex:none;margin-top:5px;animation:chatPulse 1.1s ease-in-out infinite}.chat-sug{display:flex;flex-wrap:wrap;gap:7px;padding-top:0;padding-bottom:12px;width:100%;box-sizing:border-box}.chat-sug button{border:1px solid var(--line);background:#fff;border-radius:20px;padding:6px 11px;font-size:11.5px;color:var(--ink-2)}.chat-sug button:hover{border-color:var(--brand);color:var(--brand)}.chat-sug button:disabled,.chat-in button:disabled,.chat-in input:disabled{opacity:.55;cursor:not-allowed}.chat-in{padding-top:14px;padding-bottom:14px;border-top:1px solid var(--line-2);display:flex;gap:8px;width:100%;box-sizing:border-box;align-items:center}.chat-in input{flex:1;border:1px solid var(--line);border-radius:9px;padding:11px 13px;font-size:14px}.chat-in input:focus{outline:2px solid var(--brand-line);border-color:var(--brand)}.chat-mic{width:40px;height:40px;border-radius:9px;flex:none}.chat-mic.listening{color:#fff;border-color:#dc2626;background:#dc2626;animation:chatMicPulse 1.2s ease-in-out infinite}.chat-mic.listening:hover{color:#fff;border-color:#b91c1c;background:#b91c1c}@keyframes chatMicPulse{0%,to{box-shadow:0 0 #dc262659}50%{box-shadow:0 0 0 8px #dc262600}}@media(prefers-reduced-motion:reduce){.msg-caret,.chat-step-dot,.chat-status-pulse{animation:none!important}}.prof-hero{display:flex;align-items:center;gap:14px;padding:4px 0 16px}.prof-hero .pa{width:52px;height:52px;border-radius:12px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-family:Space Grotesk;font-weight:600;font-size:19px}@media(prefers-reduced-motion:reduce){*{animation:none!important}}.mwgrid{border-collapse:separate;border-spacing:0;width:100%}.mwgrid th,.mwgrid td{border-bottom:1px solid var(--line-2)}.mwgrid thead th{font-size:10.5px;color:var(--muted);text-align:center;padding:8px 4px;font-weight:600}.mwgrid thead th.who{text-align:left;padding-left:14px;width:180px}.mwgrid thead th small{display:block;color:var(--faint);font-weight:400;font-size:9px}.mwc{padding:5px 4px;text-align:center;cursor:pointer}.mwc .b{border-radius:6px;padding:6px 2px;border:1px solid transparent}.mwc:hover .b{filter:brightness(.97)}.mwc .p{font-family:JetBrains Mono;font-size:12px;font-weight:600;line-height:1}.mwc .h{font-family:JetBrains Mono;font-size:9px;opacity:.7;margin-top:2px}.b.under{background:var(--u-under-bg);color:var(--u-under)}.b.heal{background:var(--u-heal-bg);color:var(--u-heal)}.b.tight{background:var(--u-tight-bg);color:var(--u-tight)}.b.over{background:var(--u-over-bg);color:var(--u-over);box-shadow:inset 0 0 0 1px var(--u-over)}.b.z{background:var(--panel-2);color:var(--faint)}.b.tent{background-image:repeating-linear-gradient(45deg,transparent,transparent 3px,rgba(15,27,45,.06) 3px,rgba(15,27,45,.06) 6px)}.pnav{display:flex;gap:6px;align-items:center}.pnav button{width:28px;height:28px;border-radius:7px;border:1px solid var(--line);background:#fff;color:var(--ink-2);display:grid;place-items:center;font-size:15px;line-height:1}.pnav button:hover{border-color:var(--brand);color:var(--brand)}.fctable{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed;min-width:100%}.fctable th{font-size:10.5px;color:var(--muted);font-weight:600;padding:6px 4px;text-align:center;border-bottom:1px solid var(--line)}.fctable thead th{position:sticky;top:0;z-index:3;background:var(--panel-2)}.fctable th.tl{text-align:left;padding-left:10px;width:260px;min-width:220px;max-width:360px}.fctable th.fc-total{border-left:1px solid var(--line);width:60px}.fctable th.fc-logs,.fctable td.fc-logs{width:44px;padding:2px 4px;text-align:center;vertical-align:middle}.fctable td.fcagg{border-left:1px solid var(--line-2)}.fctable td.fc-logs .iconbtn{margin:0 auto}.fc-panel-body{position:relative}.fc-panel-body.dash-loading{opacity:.65;pointer-events:none}.fc-panel-body.fc-save-locked{pointer-events:none;cursor:wait;-webkit-user-select:none;user-select:none;opacity:.72}.fc-forecast-panel.fc-is-saving{cursor:wait}.fc-save-banner{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--brand-soft) 55%,#fff)}.fc-save-banner-row{display:flex;align-items:center;justify-content:center;gap:8px;min-height:34px;padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--ink-2)}.fc-save-banner-row .btn-spin{color:var(--brand);width:14px;height:14px}.fc-save-progress{position:relative;height:3px;overflow:hidden;pointer-events:none;background:color-mix(in srgb,var(--brand) 16%,transparent)}.fc-save-progress-bar{display:block;height:100%;width:28%;background:linear-gradient(90deg,transparent,var(--brand),transparent);animation:fcSaveProgress .9s linear infinite}@keyframes fcSaveProgress{0%{transform:translate(-140%)}to{transform:translate(460%)}}.mwc.fc-disabled{cursor:default!important}.fc-forecast-panel{position:relative;min-width:0;max-width:100%;overflow:hidden}.fc-forecast-panel>.fc-forecast-header{width:100%;max-width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.fc-forecast-panel .panel-h-title{flex:1 1 180px;min-width:0}.fc-forecast-panel .panel-h-title .sub{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fc-forecast-panel .fc-forecast-actions{margin-left:auto;flex:0 1 auto;justify-content:flex-end;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.fc-forecast-panel .heat-scroll{max-width:100%;max-height:65vh;overflow-x:auto;overflow-y:auto}.mwc.fc-inline-active{cursor:text!important;padding:3px}.fctable .mwc.fc-editable:hover .b{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 55%,transparent);filter:none}.fctable.fc-edit-mode .mwc.fc-editable .b{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 35%,transparent);background:color-mix(in srgb,var(--brand-soft) 40%,#fff)}.fctable.fc-edit-mode .mwc.fc-editable:hover .b{box-shadow:inset 0 0 0 1px var(--brand);filter:none}.fc-panel-body.fc-editing{outline:1px solid color-mix(in srgb,var(--brand) 28%,transparent);outline-offset:-1px;border-radius:8px}.fc-inline-input{width:100%;min-width:0;max-width:56px;margin:0 auto;display:block;box-sizing:border-box;text-align:center;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;line-height:1.2;padding:6px 2px;border-radius:6px;border:1px solid var(--brand);background:#fff;color:var(--ink);outline:none;appearance:textfield;-moz-appearance:textfield}.fc-inline-input::-webkit-outer-spin-button,.fc-inline-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fctable th small{display:block;color:var(--faint);font-weight:400;font-size:9px}.fctable th .fc-dow{display:block;font-size:9px;line-height:1.15;color:var(--faint);font-weight:600;letter-spacing:.03em;text-transform:uppercase}.fctable th .fc-dnum{display:block;font-size:11px;line-height:1.2;color:var(--muted);font-weight:600}.fctable td{border-bottom:1px solid var(--line-2);padding:2px 4px;text-align:center}.fctable td.tl{text-align:left;padding-left:8px;vertical-align:middle}.fctable td.tl .fc-rowlabel{display:flex;align-items:center;gap:4px;min-width:0;width:100%;max-width:100%;padding:2px 0;overflow:hidden}.fctable td.tl .fc-rowlabel-cont{padding-left:0}.fctable td.tl .fc-row-toggle{width:18px;height:18px;flex:0 0 18px;margin:0}.fctable td.tl .fc-rowname,.fctable td.tl .fc-rowsub{display:block;min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.fctable td.tl .fc-rowname{font-size:12px;font-weight:600;color:var(--ink)}.fctable td.tl .fc-rowsub{font-size:11.5px;font-weight:500;color:var(--ink-2)}.fctable td.tl .task-code{display:inline-block;margin-right:6px;padding:1px 4px;font-size:9.5px;vertical-align:1px}.fctable tbody tr.fc-leaf-row td{background:color-mix(in srgb,var(--panel-2) 55%,transparent)}.fctable tbody tr.fc-leaf-row:hover td{background:color-mix(in srgb,var(--brand-soft) 28%,var(--panel-2))}.fctable tbody tr.fc-row-expanded td.tl{box-shadow:inset 3px 0 0 var(--brand-line)}.fctable th.fc-effort,.fctable td.fc-effort{width:34px;min-width:30px;max-width:38px;text-align:center;font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-2);padding:2px;white-space:nowrap}.fctable th.fc-effort{font-size:9px;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.fctable th.fc-date,.fctable td.fc-date{width:78px;min-width:72px;text-align:center;font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.fctable th.fc-date{font-size:9px;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.fctable td.fc-date{color:var(--ink-2)}.fctable th.fc-cap,.fctable td.fc-cap{width:58px;min-width:52px;text-align:center;padding:2px 3px;vertical-align:middle}.fctable th.fc-cap{font-size:9px;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.fctable .fc-cap-pill{min-width:42px;justify-content:center;padding:2px 6px;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace}.fctable .fc-cap-empty{color:var(--faint);font-size:11px}.fctable tbody tr.fc-group-start td{border-top:1px solid var(--line)}.fctable tbody tr.fc-group-start:first-child td{border-top:0}.fctable .mwc{padding:2px 3px}.fctable .mwc .b{padding:3px 2px}.fctable .mwc .p{font-size:11px}.fctable .trow td{background:var(--panel-2);font-weight:600;font-size:12px}.fctable .trow td.tl{color:var(--ink)}.fcin{width:44px;text-align:center;font-family:JetBrains Mono;font-size:12px;padding:5px 2px;border:1px solid var(--line);border-radius:6px}.fcin:focus{outline:2px solid var(--brand-line);border-color:var(--brand)}.fcin.zero{color:var(--faint)}.fcagg{font-family:JetBrains Mono;font-size:12px;font-weight:600}.fctable tfoot td{border-top:2px solid var(--line);font-family:JetBrains Mono;font-weight:600;font-size:11.5px;padding-top:9px;text-align:center}.fctable tfoot td.tl{text-align:left;font-family:Inter}.brk-row{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--line-2)}.brk-row:last-child{border-bottom:0}.brk-row .bk{flex:1}.brk-row .bk small{display:block;color:var(--muted);font-size:11px}.legend2{display:flex;gap:16px;flex-wrap:wrap;font-size:11px;color:var(--muted);align-items:center;margin-top:10px}.legend2 .k{display:flex;align-items:center;gap:6px}.legend2 .sw{display:inline-block}.hatch{width:14px;height:12px;border-radius:3px;background:var(--u-heal-bg);background-image:repeating-linear-gradient(45deg,transparent,transparent 3px,rgba(15,27,45,.1) 3px,rgba(15,27,45,.1) 6px);display:inline-block}.mwgrid th.wknd,.fctable th.wknd,.heat th.wknd{background:var(--panel-2);color:var(--faint)}.b.wk,.heat .box.wk{opacity:.62}.mwc{padding:4px 3px}.mwgrid thead th{padding:8px 3px}.dash-forecast{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;height:160px;align-items:end;margin:8px 0 4px}.dash-fc-col{display:flex;flex-direction:column;align-items:center;gap:6px;justify-content:flex-end;height:100%}.dash-fc-plot{position:relative;width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center}.dash-fc-cap{position:absolute;left:8%;right:8%;border-top:2px dashed var(--ink-2);pointer-events:none;z-index:1}.dash-fc-bar{width:60%;border-radius:5px 5px 0 0;min-height:4px;transition:filter .15s ease,transform .15s ease,box-shadow .15s ease;cursor:pointer;border:0;padding:0;position:relative;z-index:2}.dash-fc-bar.under{background:var(--u-under)}.dash-fc-bar.heal{background:var(--u-heal)}.dash-fc-bar.tight{background:var(--u-tight)}.dash-fc-bar.over{background:var(--u-over)}.dash-fc-bar:hover,.dash-fc-bar.hovered{filter:brightness(1.08);transform:scaleY(1.03);transform-origin:bottom}.dash-fc-bar.selected{box-shadow:0 0 0 2px var(--brand),0 4px 12px #0f1b2d26}.dash-fc-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);background:var(--ink);color:#fff;padding:8px 10px;border-radius:8px;font-size:11px;line-height:1.5;white-space:nowrap;pointer-events:none;z-index:6;box-shadow:0 8px 20px #0f1b2d38}.dash-fc-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--ink)}.dash-fc-tooltip .dash-fc-over{color:#f5b4ae}.dash-fc-wk{font-size:10.5px;color:var(--muted)}.dash-hours{font-weight:600;padding:4px 9px;border-radius:6px;background:var(--panel-2);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;color:var(--ink-2)}.dash-unassigned .row-metric{border-left:3px solid transparent;transition:border-color .15s ease,background .15s ease}.dash-unassigned .row-metric.click:hover{border-left-color:var(--brand)}@keyframes hubFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.hub-fade-in,.hub-kpi-stagger .hub-kpi-card{animation:hubFadeIn .45s ease both}.hub-kpi-stagger .hub-kpi-card:nth-child(1){animation-delay:.04s}.hub-kpi-stagger .hub-kpi-card:nth-child(2){animation-delay:.08s}.hub-kpi-stagger .hub-kpi-card:nth-child(3){animation-delay:.12s}.hub-kpi-stagger .hub-kpi-card:nth-child(4){animation-delay:.16s}.hub-kpi-stagger .hub-kpi-card:nth-child(5){animation-delay:.2s}.hub-kpi-stagger .hub-kpi-card:nth-child(6){animation-delay:.24s}.hub-kpi-stagger .hub-kpi-card:nth-child(7){animation-delay:.28s}.dash-kpi-grid.kpis{width:100%;grid-template-columns:repeat(var(--dash-kpi-cols, 7),minmax(0,1fr));gap:11px;margin-bottom:14px}.dash-kpi-grid .kpi{padding:12px 14px}@media(max-width:1280px){.dash-kpi-grid.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.dash-kpi-grid.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.dash-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:8px;padding:0 2px 2px}.dash-team-card{padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#fff;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.dash-team-card.click{cursor:pointer}.dash-team-card.click:hover,.dash-team-card.selected{border-color:var(--brand-line);box-shadow:0 2px 10px #0f1b2d0f}.dash-team-card.selected{background:var(--brand-soft)}.dash-team-card-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.dash-team-card-h strong{font-size:13.5px;color:var(--ink)}.dash-team-meta{margin:0 0 8px;font-size:11.5px;color:var(--muted)}.dash-team-stats{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:8px;font-size:11.5px;color:var(--ink-2)}.dash-team-alert{display:inline-flex;align-items:center;gap:4px;color:var(--u-over);font-weight:500}.dash-team-backlog{color:var(--u-tight)}.dash-hours.over{color:var(--u-over);background:var(--u-over-bg)}.dash-team-table,.dash-division-panel,.dash-over-panel,.dash-critical-panel{margin-top:14px}.dash-critical-panel .row-metric{border-left:3px solid transparent}.dash-critical-panel .row-metric.click:hover{border-left-color:var(--u-over)}.dash-team-card .pill.idle{color:var(--u-under);background:var(--u-under-bg);border-color:#d5e0ea}.dash-team-card .cap-fill.idle,.dash-team-card .u-idle .cap-fill{background:var(--u-under)}.dash-team-card .cap-track.u-idle{background:var(--panel-2);border-color:var(--line)}.dash-team-card .cap-track.u-under{background:var(--u-under-bg);border-color:#d5e0ea}.dash-team-card .cap-track.u-heal{background:var(--u-heal-bg);border-color:#c6e8d8}.dash-team-card .cap-track.u-tight{background:var(--u-tight-bg);border-color:#f0dfb0}.dash-team-card .cap-track.u-over{background:var(--u-over-bg);border-color:#f3cbc7}.dash-over-table .pill.idle{color:var(--u-under);background:var(--u-under-bg);border-color:#d5e0ea}.dash-team-card .cap-track{margin-top:2px}.hub-section-stagger{animation:hubFadeIn .5s ease .18s both}.hub-welcome{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;margin-bottom:18px;border-radius:var(--radius);background:linear-gradient(135deg,var(--teal-soft) 0%,var(--brand-soft) 55%,#fff 100%);border:1px solid var(--teal-line);box-shadow:var(--shadow)}.hub-welcome-eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin:0 0 6px}.hub-welcome-title{font-family:Space Grotesk,sans-serif;font-size:26px;font-weight:600;color:var(--ink);margin:0;line-height:1.2}.hub-welcome-sub{margin:8px 0 0;font-size:13px;color:var(--muted);max-width:520px}.hub-welcome-badge{width:48px;height:48px;border-radius:12px;flex:none;display:grid;place-items:center;background:#fff;border:1px solid var(--teal-line);color:var(--teal)}.hub-kpi-card{display:flex;flex-direction:column;min-height:118px}.hub-kpi-cta{align-self:flex-start;margin-top:10px}.hub-panel .panel-h{display:flex;align-items:center;justify-content:space-between;gap:12px}.hub-empty{padding:28px 20px;text-align:center;color:var(--muted);font-size:13px}.hub-empty.compact{padding:20px}.hub-empty-panel{padding:8px 16px 24px}.hub-empty-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin:0 auto 14px;background:linear-gradient(135deg,var(--teal-soft) 0%,var(--brand-soft) 100%);border:1px solid var(--teal-line);color:var(--teal)}.hub-empty-icon svg{width:26px;height:26px}.hub-empty-title{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--ink)}.hub-empty-hint{font-size:12px;color:var(--faint);max-width:420px;margin:6px auto 14px;line-height:1.5}.hub-empty-actions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap}.hub-focus-list{padding:4px 0}.hub-focus-item{padding:12px 16px;border-bottom:1px solid var(--line-2)}.hub-focus-item:last-child{border-bottom:0}.hub-focus-link{display:block;text-decoration:none;color:inherit;transition:background .12s ease}.hub-focus-link:hover{background:var(--panel-2)}.hub-focus-link:hover .hub-focus-title{color:var(--brand)}.hub-focus-title{font-weight:500;font-size:13px}.hub-focus-meta{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:11px;color:var(--muted);flex-wrap:wrap}.mw-task-card{display:block;border:1px solid var(--line);border-radius:8px;padding:8px 9px;text-decoration:none;color:inherit;transition:border-color .12s ease,background .12s ease}.mw-task-card:hover{border-color:var(--brand-line);background:var(--brand-soft)}.mw-task-card:hover .mw-task-name{color:var(--brand)}.mw-task-name{font-weight:500;font-size:12px}.mw-task-meta{display:flex;gap:6px;align-items:center;margin-top:5px;font-size:11px;color:var(--muted);flex-wrap:wrap}.mw-task-project{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:7.5rem}.ts .tsk-link{display:block;text-decoration:none;color:inherit}.ts .tsk-link:hover,.ts .tsk-link:hover small{color:var(--brand)}.tb-breakdown-row{width:100%;border:0;background:transparent;text-align:left;font:inherit;color:inherit}.tb-breakdown-nm{width:auto;flex:1;min-width:0}.tb-breakdown-nm small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tb-day-modal{width:min(440px,100%)}.tb-day-head{display:flex;flex-direction:column;gap:10px}.tb-day-head-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tb-day-head-top h3{font-size:16px;font-weight:600}.tb-day-head-top p{margin:2px 0 0;font-size:12.5px;color:var(--muted)}.tb-day-util{font-family:JetBrains Mono;font-size:12.5px;font-weight:700;padding:3px 9px}.tb-day-meta{display:flex;flex-wrap:nowrap;align-items:baseline;gap:5px;font-size:12px;color:var(--muted);white-space:nowrap}.tb-day-meta-hrs{font-size:15px;font-weight:700;color:var(--ink)}.tb-day-meta-sep{flex:0 0 auto}.tb-day-meta .mono{font-weight:600;color:var(--ink-2)}.tb-day-bar{height:6px;margin-top:0}.tb-day-body{padding:8px}.tb-day-task{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid transparent;border-radius:10px;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:background .12s ease,border-color .12s ease}.tb-day-task+.tb-day-task{margin-top:2px}.tb-day-task:hover{background:var(--panel-2);border-color:var(--line)}.tb-day-task .pill{flex:0 0 auto}.tb-day-task-text{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}.tb-day-task-name{font-size:13px;font-weight:500;color:var(--ink);white-space:normal;overflow-wrap:anywhere}.tb-day-task-text small{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tb-day-task-hrs{flex:0 0 auto;font-size:13.5px;font-weight:700;color:var(--ink)}.tb-day-go{flex:0 0 auto;color:var(--faint);font-size:14px}.tb-day-task:hover .tb-day-go{color:var(--brand)}.tb-day-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 16px;text-align:center;color:var(--muted)}.tb-day-empty-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--u-heal-bg);color:var(--u-heal)}.tb-day-empty p{margin:0;font-size:13px}.tb-breakdown-go{color:var(--faint);font-size:14px;margin-left:4px}.tb-breakdown-row:hover .tb-breakdown-go{color:var(--brand)}.hub-attention-list{padding:6px 0}.hub-attention-item{padding:12px 16px;border-bottom:1px solid var(--line-2);font-size:12.5px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.hub-attention-item:last-child{border-bottom:0}.hub-attention-item b{font-size:13px;color:var(--ink)}.hub-attention-item span{color:var(--muted);line-height:1.45}.hub-attention-item.unread{border-left:3px solid var(--teal);background:#0e9aa70a}.hub-quick{margin-top:18px}.hub-quick-head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.hub-quick-head h2{font-size:15px;font-weight:600}.hub-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:980px){.hub-quick-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.hub-quick-grid{grid-template-columns:1fr}}.hub-quick-card{padding:16px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:8px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;cursor:pointer}.hub-quick-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--teal-line)}.hub-quick-card svg{color:var(--teal)}.hub-quick-label{font-weight:600;font-size:13px;color:var(--ink)}.hub-quick-desc{font-size:11.5px;color:var(--muted)}.hub-team-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:14px 16px;border-bottom:1px solid var(--line-2)}@media(max-width:640px){.hub-team-metrics{grid-template-columns:1fr}}.hub-team-stat{display:flex;flex-direction:column;gap:4px}.hub-team-stat .l{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.hub-team-stat .n{font-size:18px;font-weight:600;font-family:Space Grotesk,sans-serif}.hub-team-unassigned{padding:4px 0}@media(max-width:640px){.hub-welcome{flex-direction:column;align-items:flex-start}.hub-welcome-badge{display:none}}.tb-week-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding:12px 16px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-left:3px solid var(--teal)}.tb-week-nav{display:flex;align-items:center;gap:12px;min-width:0}.tb-week-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tb-week-label{display:flex;align-items:center;gap:8px;color:var(--ink-2)}.tb-week-label svg{color:var(--teal)}.tb-week-text{font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:600;color:var(--ink)}.tb-week-mode{font-size:11.5px;font-weight:500;color:var(--muted);padding:4px 10px;border-radius:20px;background:var(--panel-2);border:1px solid var(--line)}.tb-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}@media(max-width:760px){.tb-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.tb-stat{padding:12px 14px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}.tb-stat .l{display:block;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px}.tb-stat .n{font-size:18px;font-weight:600;font-family:Space Grotesk,sans-serif;color:var(--ink)}.tb-stat-warn{color:var(--u-tight)}.tb-team-select{display:flex;align-items:center;gap:8px;padding:5px 10px 5px 12px;border-radius:9px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.tb-team-select label{font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.tb-team-select .finput{width:auto;min-width:180px;border:0;padding:6px 8px;background:transparent;box-shadow:none}.tb-team-select .finput:focus{outline:none;box-shadow:none}.team-filter-bar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin:-4px 0 16px;padding:0 8px}.team-filter-bar .tb-filter-chip{display:inline-flex;align-items:center;gap:6px}.team-filter-bar .tb-filter-chip:disabled{opacity:.72;cursor:wait}.team-filter-bar.team-filter-busy{pointer-events:none}.team-filter-loading{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--muted)}.team-switch-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 20px;text-align:center;color:var(--muted);min-height:160px}.team-switch-loading p{margin:0;font-size:13px}.team-switch-spin{width:22px;height:22px;border-width:2.5px}.tb-multi{position:relative}.tb-multi-trigger{display:inline-flex;align-items:center;gap:10px;min-width:180px;width:auto;border:0;padding:6px 8px;background:transparent;box-shadow:none;cursor:pointer;text-align:left}.tb-multi-trigger:focus{outline:none;box-shadow:none}.tb-multi-label{flex:1;font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tb-multi-caret{color:var(--muted);font-size:11px;transition:transform .15s ease}.tb-multi.open .tb-multi-caret{transform:rotate(180deg)}.tb-multi-backdrop{position:fixed;inset:0;z-index:40}.tb-multi-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:41;width:280px;max-width:88vw;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #0f1b2d29;overflow:hidden;display:flex;flex-direction:column}.tb-multi-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--line-2);background:var(--panel-2)}.tb-multi-panel-actions{display:inline-flex;align-items:center;gap:10px;flex:none}.tb-linkbtn{border:0;background:transparent;color:var(--brand);font-size:11px;font-weight:600;cursor:pointer;text-transform:none;letter-spacing:0}.tb-linkbtn:hover{text-decoration:underline}.tb-multi-list{max-height:300px;overflow:auto;padding:6px}.tb-multi-opt{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:transparent;cursor:pointer;text-align:left;color:var(--ink);font:inherit}.tb-multi-opt:hover{background:var(--panel-2)}.tb-multi-opt.checked{background:var(--brand-soft)}.tb-check{width:18px;height:18px;flex:0 0 auto;border-radius:5px;border:1.5px solid var(--line);display:grid;place-items:center;color:#fff;background:#fff}.tb-multi-opt.checked .tb-check{background:var(--brand);border-color:var(--brand)}.tb-check svg.i{width:12px;height:12px}.tb-multi-opt-name{flex:1;min-width:0;font-size:13px;font-weight:500;display:flex;flex-direction:column;line-height:1.3}.tb-multi-opt-name small{font-size:11px;color:var(--muted);font-weight:400}.tb-multi-empty{padding:16px 14px;font-size:12.5px;color:var(--muted);text-align:center}.tb-add-panel{left:0;right:auto}.tb-add-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line-2)}.tb-add-search svg.i{color:var(--muted);flex:none}.tb-add-search .finput{flex:1;border:0;padding:4px;box-shadow:none}.tb-add-search .finput:focus{outline:none;box-shadow:none}.tb-add-avatar{width:26px;height:26px;flex:0 0 auto;border-radius:8px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);border:1px solid var(--brand-line);font-size:15px;font-weight:600;line-height:1}.tb-people-tools{display:flex;align-items:center;gap:10px;padding:10px 16px;flex-wrap:wrap;border-bottom:1px solid var(--line-2);background:#fff}.tb-add-person{display:inline-flex;align-items:center;gap:6px}.tb-custom-chip{display:inline-flex;align-items:center;gap:7px;padding:4px 6px 4px 11px;border-radius:20px;font-size:11.5px;font-weight:600;color:#0a6f78;background:var(--teal-soft);border:1px solid var(--teal-line)}.tb-custom-chip svg.i{width:13px;height:13px}.tb-custom-reset{border:0;background:#ffffffb3;color:#0a6f78;border-radius:14px;padding:3px 9px;font-size:11px;font-weight:600;cursor:pointer}.tb-custom-reset:hover{background:#fff}.person{position:relative}.tb-remove-person{position:absolute;top:2px;right:2px;z-index:3;width:18px;height:18px;border-radius:5px;border:1px solid transparent;background:var(--panel);color:var(--faint);font-size:14px;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease,background .12s ease}.heat tbody td.who:hover .tb-remove-person{opacity:1}.tb-remove-person:hover{color:var(--u-over);background:var(--u-over-bg);border-color:var(--u-over-bg)}.tb-remove-person:focus-visible{opacity:1;outline:2px solid var(--brand-line)}.tb-toolbar{margin-bottom:14px;overflow:visible;padding:0;box-shadow:var(--shadow);position:relative;z-index:30}.tb-toolbar>:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.tb-toolbar>:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.tb-search{border-bottom:1px solid var(--line-2);background:var(--panel)}.tb-filter-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;flex-wrap:wrap;border-bottom:1px solid var(--line-2);background:#fff}.tb-filter-chip{border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);border-radius:20px;padding:5px 12px;font-size:11.5px;font-weight:600;transition:all .15s ease}.tb-filter-chip:hover{border-color:var(--teal-line);color:var(--ink);background:var(--panel-2)}.tb-filter-chip.active{background:var(--teal-soft);color:#0a6f78;border-color:var(--teal-line);box-shadow:none}.tb-filter-chip.tb-team-tinted.active{background:color-mix(in srgb,var(--team-accent) 16%,#fff);color:var(--team-accent);border-color:color-mix(in srgb,var(--team-accent) 40%,var(--line))}.tb-chip-clear{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:2px;border-radius:50%;font-size:12px;line-height:1;opacity:.75;font-weight:700}.tb-filter-chip.active:hover .tb-chip-clear{opacity:1}.tb-search svg.i{color:var(--teal);opacity:.75;flex:none}.tb-search .finput{flex:1;border:0;padding:8px 4px;background:transparent;box-shadow:none}.tb-search .finput:focus{outline:none;box-shadow:none}.tb-search-count,.tb-meta-bar .util-pill{margin-left:auto;font-size:11.5px;font-weight:500;color:var(--muted);white-space:nowrap;padding:3px 10px;border-radius:20px;background:var(--panel-2);border:1px solid var(--line)}.tb-meta-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;flex-wrap:wrap;background:var(--panel)}.tb-meta-bar .util-pill{background:var(--panel-2);border-color:var(--line);color:var(--ink-2);font-weight:600}.legend-refined .k{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;border-radius:20px;background:#fff;border:1px solid var(--line);font-size:11px;font-weight:500;color:var(--ink-2)}.legend-refined .sw{flex:none}.tb-legend .sw-under{background:var(--u-under-bg);box-shadow:inset 0 0 0 1px #94aec8;background-image:repeating-linear-gradient(135deg,transparent,transparent 2px,rgba(91,122,153,.15) 2px,rgba(91,122,153,.15) 4px)}.tb-legend .sw-heal{background:var(--u-heal-bg);box-shadow:inset 0 0 0 1px #6bbf98}.tb-legend .sw-tight{background:var(--u-tight-bg);box-shadow:inset 0 0 0 1px #d4a843;background-image:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(198,135,26,.12) 2px,rgba(198,135,26,.12) 4px)}.tb-legend .sw-over{background:var(--u-over-bg);box-shadow:inset 0 0 0 2px var(--u-over)}.tb-legend-range{font-size:10px;color:var(--faint);font-weight:500}.tb-layout{display:grid;grid-template-columns:1fr;gap:18px;align-items:start}.tb-heat-panel{padding:0;overflow-x:auto;overflow-y:visible;box-shadow:var(--shadow)}.heat thead th{position:sticky;top:0;z-index:4;background:var(--panel-2);border-bottom:1px solid var(--line)}.heat thead th.who,.heat tbody td.who{position:sticky;left:0;z-index:2;background:var(--panel);width:240px;min-width:240px;max-width:240px;box-shadow:2px 0 8px #0f1b2d0a}.heat thead th.who{z-index:6;background:var(--panel-2)}.heat th.week-col,.heat td.week-col{border-left:1px solid var(--line);background:var(--panel-2)}.heat thead th.week-col{z-index:4}.heat tbody tr{transition:background .12s ease}.heat tbody tr:hover td{background:#0f1b2d05}.heat tbody tr:hover td.who{background:var(--panel)}.heat tbody tr:hover td.week-col{background:var(--panel-2)}.person .tb-avatar{width:26px;height:26px;border-radius:8px;font-size:10.5px;font-weight:700;background:var(--panel-2);color:var(--ink-2);border:1px solid var(--line)}.person-meta{min-width:0}.tb-util-bar{height:3px;border-radius:999px;background:var(--line-2);margin-top:3px;overflow:hidden;border:1px solid var(--line)}.tb-util-fill{height:100%;border-radius:999px;transition:width .2s ease}.tb-util-fill.under{background:linear-gradient(90deg,var(--u-under),#7A9BB8)}.tb-util-fill.heal{background:linear-gradient(90deg,var(--u-heal),#3BB882)}.tb-util-fill.tight{background:linear-gradient(90deg,var(--u-tight),#D9A030)}.tb-util-fill.over{background:linear-gradient(90deg,var(--u-over),#E06860)}.heat tbody tr.tb-person-row td.who{background:color-mix(in srgb,var(--team-accent) 12%,var(--panel));box-shadow:2px 0 8px #0f1b2d0a,inset 3px 0 0 var(--team-accent, var(--line))}.heat tbody tr.tb-person-row:hover td.who{background:color-mix(in srgb,var(--team-accent) 18%,var(--panel))}.heat tbody tr.tb-person-row.tb-row-expanded td.who{background:color-mix(in srgb,var(--team-accent) 16%,var(--panel));box-shadow:2px 0 8px #0f1b2d0a,inset 3px 0 0 var(--team-accent, var(--brand-line))}.heat tbody tr.tb-task-row td.who{background:color-mix(in srgb,var(--team-accent, var(--brand)) 8%,var(--panel-2));box-shadow:inset 3px 0 0 var(--team-accent, var(--brand-line))}.heat tbody tr.tb-task-row:hover td.who{background:color-mix(in srgb,var(--team-accent, var(--brand)) 14%,var(--panel-2))}.tb-heat-panel .heat thead th{padding:4px 2px;min-width:28px;height:auto;vertical-align:bottom}.tb-heat-panel .heat thead th .dow{font-size:8.5px;line-height:1.15;display:block}.tb-heat-panel .heat thead th .dnum{font-size:11px;line-height:1.15;display:block;color:var(--ink-2)}.tb-heat-panel .heat thead th.who{padding:4px 8px;vertical-align:middle}.tb-heat-panel .heat tbody tr.tb-person-row td{height:18px}.tb-heat-panel .heat tbody tr.tb-person-row .person{padding:0 4px;gap:3px;min-height:18px}.tb-heat-panel .heat tbody tr.tb-person-row .person-meta{display:flex;align-items:center;gap:4px;min-width:0;flex:1}.tb-heat-panel .heat tbody tr.tb-person-row .person .nm{font-size:10.5px;line-height:1}.tb-heat-panel .heat tbody tr.tb-person-row .person .sync{margin:0;padding:0 3px;font-size:8px;line-height:1.25;flex:none}.tb-heat-panel .heat tbody tr.tb-person-row .tk-toggle,.tb-heat-panel .heat tbody tr.tb-person-row .tk-toggle-spacer{width:16px;height:16px;flex:0 0 16px;margin-top:0}.tb-heat-panel .heat tbody tr.tb-person-row .ucell{padding:0}.tb-heat-panel .heat tbody tr.tb-person-row .ucell .box{border-radius:2px;padding:0}.tb-heat-panel .heat tbody tr.tb-person-row .ucell .box.hours-only{padding:0;min-height:16px}.tb-heat-panel .heat tbody tr.tb-person-row .ucell .box.hours-only .hrs{font-size:9.5px;line-height:1}.tb-heat-panel .heat tbody tr.tb-person-row .ucell .box.hours-only.week-total .hrs{font-size:9px}.tb-heat-panel .heat tbody tr.tb-person-row .hrs.hrs-inline{display:inline-flex;align-items:baseline;gap:0;white-space:nowrap;font-variant-numeric:tabular-nums}.tb-heat-panel .heat tbody tr.tb-person-row .hrs-sep{opacity:.45;margin:0 1px;font-weight:500}.tb-heat-panel .heat tbody tr.tb-person-row .off-mark{font-size:8px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;line-height:1;opacity:.9}.tb-heat-panel .heat tbody tr.tb-person-row .tb-half-badge{top:0;right:1px;font-size:7.5px}.tb-heat-panel .tb-remove-person{top:0;right:0;width:14px;height:14px;font-size:11px}.ucell.off-cell{cursor:default}.ucell .box.week-total{font-weight:600}.ucell:not(.off-cell):hover .box{transform:scale(1.03);box-shadow:0 2px 8px #0f1b2d14}.tb-row-toggle{margin-top:1px;flex:0 0 22px}.tb-row-expanded td{border-bottom:1px solid var(--brand-line)}.tb-task-row td{background:var(--panel-2);border-bottom:1px solid var(--line);padding:0}.tb-task-row td.who{position:sticky;left:0;z-index:2}.heat tbody tr.tb-task-row:hover td{background:color-mix(in srgb,var(--brand-soft) 30%,var(--panel-2))}.tb-task-row td{height:22px}.tb-task-cell-wrap{display:flex;align-items:center;gap:2px;width:100%;min-width:0;padding-right:4px}.tb-task-cell-wrap .tb-task-toggle,.tb-task-cell-wrap .tk-toggle-spacer{width:16px;height:16px;flex:0 0 16px;margin:0}.tb-task-cell{display:flex;align-items:center;gap:6px;flex:1;min-width:0;padding:1px 4px 1px 2px;border:0;background:transparent;cursor:pointer;text-align:left;color:inherit;line-height:1.15}.tb-task-child .tb-task-name{font-weight:400;color:var(--ink-2)}.tb-task-hrs.rolled{opacity:.75;font-weight:600}.tb-task-dot{flex:0 0 auto;width:6px;height:6px;border-radius:50%;background:var(--muted)}.tb-task-dot.init{background:var(--brand)}.tb-task-dot.proj{background:var(--teal)}.tb-task-dot.unplanned{background:var(--u-tight)}.tb-task-cell:hover .tb-task-name{color:var(--brand)}.tb-task-text{flex:1;min-width:0;overflow:hidden}.tb-task-name{display:block;max-width:100%;font-size:12px;font-weight:550;color:var(--ink);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tb-task-name .task-code{display:inline-block;margin-right:6px;padding:1px 4px;font-size:9.5px;vertical-align:1px}.tb-effort-col{width:34px;min-width:30px;max-width:38px;text-align:center;font-size:10px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums;padding:2px!important;white-space:nowrap}.heat thead .tb-effort-col{font-size:9px;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);font-weight:650}.tb-person-row .tb-effort-col{background:transparent}.tb-task-row .tb-effort-col{vertical-align:middle}.tb-task-daycell{cursor:default;text-align:center;vertical-align:middle;padding:1px 3px;border-left:1px solid var(--line)}.tb-task-daycell.tb-editable{cursor:pointer}.tb-task-daycell.tb-editable:hover{background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand-line)}.heat td.ucell.wknd{background:color-mix(in srgb,var(--panel-2) 60%,transparent)}.tb-task-daycell.wknd{background:color-mix(in srgb,var(--panel-2) 70%,transparent)}.mwgrid th.opt-day,.fctable th.opt-day,.heat th.opt-day{color:var(--muted)}.heat td.ucell.opt-day{background:color-mix(in srgb,var(--brand-soft) 35%,transparent)}.heat td.ucell.opt-day .box.opt{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand-line) 55%,transparent)}.heat td.ucell.opt-day .box.opt.has-hrs{box-shadow:inset 0 0 0 1px var(--brand-line)}.tb-task-daycell.opt-day{background:color-mix(in srgb,var(--brand-soft) 40%,transparent)}.tb-task-daycell.opt-day.tb-editable{cursor:pointer}.tb-task-daycell.opt-day.tb-editable:hover{background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand-line)}.fctable td.opt-day{background:color-mix(in srgb,var(--brand-soft) 30%,transparent)}.b.opt{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand-line) 45%,transparent)}.tb-task-daycell.tb-task-editing{padding:0;background:var(--panel)}.tb-task-input{width:100%;min-width:34px;height:20px;border:1px solid var(--brand);border-radius:4px;padding:0 2px;text-align:center;font-family:JetBrains Mono;font-size:10.5px;font-weight:600;color:var(--ink);background:#fff;outline:none;-moz-appearance:textfield;appearance:textfield}.tb-task-input::-webkit-outer-spin-button,.tb-task-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tb-task-daycell:hover .box{transform:none;box-shadow:none}.tb-task-daycell.week-col{border-left:1px solid var(--line)}.tb-task-hrs{display:inline-flex;align-items:center;justify-content:center;min-width:22px;font-family:JetBrains Mono;font-size:10.5px;font-weight:600;color:var(--ink-2)}.tb-task-hrs.faint{color:var(--faint);font-weight:400}.tb-task-hrs.muted{color:var(--faint)}.tb-task-hrs.total{color:var(--ink);font-weight:700}.tb-filter-spacer{flex:1 1 auto}.tb-task-filter{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.tb-task-filter svg.i{flex:none;color:var(--muted)}.tb-task-filter .finput{width:auto;max-width:220px;padding:5px 8px;font-size:12px}.tb-expandall{display:inline-flex;gap:6px}.tb-breakdown-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:140px;padding:28px 16px;color:var(--muted);font-size:13px}.tb-breakdown-loading p{margin:0}.tb-breakdown-spin{width:22px;height:22px;border-width:2.5px;color:var(--brand)}.tb-unassigned{box-shadow:var(--shadow)}.tb-unassigned .panel-h{align-items:flex-start}.tb-unassigned .panel-h h2 svg{color:var(--teal)}.tb-help{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;font-size:11px;font-weight:700;color:var(--teal);background:var(--teal-soft);border:1px solid var(--teal-line);cursor:help}.tb-unassigned-help{margin:0;padding:0 14px 10px;font-size:11.5px;line-height:1.45;color:var(--muted);border-bottom:1px solid var(--line-2)}.tb-unassigned-list{padding:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;background:var(--panel)}.tb-unassigned-card{padding:10px 11px;border-radius:9px;border:1px solid var(--line);background:var(--panel);transition:border-color .15s ease,box-shadow .15s ease}.tb-unassigned-card.click{cursor:pointer}.tb-unassigned-card.click:hover{box-shadow:0 2px 8px #0f1b2d0f;border-color:var(--line-2)}.tb-unassigned-card.hot{border-color:var(--u-over);background:var(--u-over-bg)}.tb-unassigned-card.hot:hover{border-color:var(--u-over)}.tb-unassigned-title{font-weight:600;font-size:12.5px;line-height:1.35;color:var(--ink)}.tb-unassigned-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:6px}.tb-unassigned-project{font-weight:500;color:var(--ink-2);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-unassigned-hours{font-weight:600;color:var(--teal)}.tb-unassigned-due{color:var(--faint)}.tb-hot-badge{margin-top:8px;display:inline-flex}.tb-assign-btn,.tb-assign-hot{width:100%;margin-top:8px}.tb-assign-hot{background:#fff;color:var(--u-over);border-color:#f3cbc7}.tb-assign-hot:hover{background:var(--u-over-bg)}.tb-hint{margin-top:14px}.tb-loading{padding:0;text-align:center;overflow:hidden}.tb-loading-label{padding:0 20px 24px;margin:0;font-size:12.5px;color:var(--muted)}.tb-skeleton{padding:24px 20px 12px}@keyframes tbShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tb-skeleton-bar{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--panel-2) 25%,var(--line-2) 50%,var(--panel-2) 75%);background-size:200% 100%;animation:tbShimmer 1.4s ease infinite}.tb-skeleton-bar.wide{width:45%;max-width:280px}.tb-skeleton-bar.medium{width:30%;max-width:180px}.tb-skeleton-bar.short{width:80px;flex:none}.tb-skeleton-grid{display:flex;flex-direction:column;gap:10px;margin-top:8px}.tb-skeleton-row{display:flex;align-items:center;gap:8px}.tb-skeleton-cell{flex:1;height:36px;border-radius:7px;background:linear-gradient(90deg,var(--panel-2) 25%,var(--line-2) 50%,var(--panel-2) 75%);background-size:200% 100%;animation:tbShimmer 1.4s ease infinite}.dash-insight{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;margin-bottom:14px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}.dash-insight-eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);margin:0 0 4px}.dash-insight-title{font-family:Space Grotesk,sans-serif;font-size:19px;font-weight:600;color:var(--ink);margin:0;line-height:1.25}.dash-insight-sub{margin:5px 0 0;font-size:12.5px;color:var(--muted);max-width:560px}.dash-insight-badge{width:40px;height:40px;border-radius:10px;flex:none;display:grid;place-items:center;background:var(--brand-soft);border:1px solid var(--brand-line);color:var(--brand)}.dash-kpi-card{display:flex;flex-direction:column;min-height:106px;transition:box-shadow .15s ease,border-color .15s ease}.dash-kpi-card:hover{box-shadow:0 2px 8px #0f1b2d0f;border-color:var(--line-2)}.dash-kpi-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;margin-bottom:6px;flex:none;background:color-mix(in srgb,var(--kpi-accent, var(--brand)) 12%,#fff);color:var(--kpi-accent, var(--brand));border:1px solid color-mix(in srgb,var(--kpi-accent, var(--brand)) 22%,transparent)}.dash-kpi-icon.skeleton{background:var(--panel-2);border-color:var(--line);animation:tbShimmer 1.4s ease infinite;background-size:200% 100%}.dash-division-panel .dash-team-grid,.dash-team-table .dash-team-grid{padding:10px 12px 12px}.dash-panel .panel-h-title h2{display:flex;align-items:center;gap:8px}.dash-division-panel .panel-h-title h2 app-icon,.dash-division-panel .panel-h-title h2 svg{color:var(--brand)}.dash-team-table .panel-h-title h2 app-icon,.dash-team-table .panel-h-title h2 svg{color:var(--brand)}.dash-forecast-panel .panel-h-title h2 app-icon,.dash-forecast-panel .panel-h-title h2 svg{color:var(--brand)}.dash-over-panel .panel-h-title h2 app-icon,.dash-over-panel .panel-h-title h2 svg{color:var(--u-over)}.dash-critical-panel .panel-h-title h2 app-icon,.dash-critical-panel .panel-h-title h2 svg{color:var(--u-tight)}.dash-unassigned .panel-h-title h2 app-icon,.dash-unassigned .panel-h-title h2 svg{color:var(--u-tight)}.dash-over-table-wrap{overflow-x:auto}.dash-over-table td:last-child,.dash-over-table th:last-child{text-align:right;white-space:nowrap}.dash-over-table td:nth-child(3),.dash-over-table th:nth-child(3){width:120px}.dash-over-table tbody tr.click:hover{background:var(--panel-2)}.dash-over-person{display:flex;align-items:center;gap:10px;min-width:0}.dash-over-person .tk{min-width:0}.dash-over-table tbody tr.click.selected{background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand)}.dash-over-avatar{background:var(--u-over-bg);color:var(--u-over);border:1px solid #f3cbc7}.dash-metric-row{border-left:3px solid transparent;transition:border-color .15s ease,background .15s ease}.dash-metric-row.click:hover{border-left-color:var(--brand);background:var(--panel-2)}.dash-critical-panel .dash-metric-row.click:hover{border-left-color:var(--u-over)}.dash-metric-row .pill.under,.dash-metric-row .pill.idle,.dash-metric-row .pill.heal,.dash-metric-row .pill.tight,.dash-metric-row .pill.over{flex:none}.dash-pct-pill{min-width:52px;justify-content:center;font-variant-numeric:tabular-nums}.dash-forecast-panel{padding:0;overflow:hidden;margin-top:14px}.dash-forecast-body{padding:12px 14px}.dash-forecast-panel .panel-h{padding:11px 14px;margin:0;border-bottom:1px solid var(--line-2)}@media(max-width:640px){.dash-insight{flex-direction:column;align-items:flex-start}.dash-insight-badge{display:none}}.org-divisions{column-count:2;column-gap:16px}.org-division-panel{break-inside:avoid;page-break-inside:avoid;margin-bottom:16px;display:inline-block;width:100%;padding:14px}.org-divisions-empty{column-span:all;margin-bottom:16px;padding:24px;text-align:center;color:var(--muted)}@media(max-width:980px){.org-divisions{column-count:1}}.ws-tabs{margin-bottom:18px}.ws-section-intro{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.ws-mission{padding:18px;margin-bottom:16px}.ws-mission-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.ws-mission .eyebrow{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.ws-mission-text{font-size:16px;font-weight:600;line-height:1.4}.ws-mission-meta{margin-top:12px;display:flex;gap:22px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}.ws-mission-meta-item{display:inline-flex;align-items:center;gap:6px;line-height:1.2}.ws-mission-meta-item svg.i,.ws-inline-hint svg.i{display:block;flex:none}.ws-mission-meta b{color:var(--ink)}.ws-inline-hint{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted);line-height:1.3}.ws-act-list{padding:6px 16px 14px}.act-row{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line-2)}.act-row:last-child{border-bottom:0}.act-ic{width:28px;height:28px;border-radius:8px;background:var(--panel-2);display:grid;place-items:center;color:var(--muted);flex:none}.ws-kudos-list{padding:14px;display:flex;flex-direction:column;gap:10px}.kudo{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.ki{width:28px;height:28px;border-radius:8px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;flex:none}.ws-roster{padding:14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.ws-roster-card{border:1px solid var(--line);border-radius:10px;padding:11px 13px}.ws-roster-top{display:flex;align-items:center;gap:10px}.status-line{margin-top:8px;font-size:12px;color:var(--ink-2);line-height:1.35;min-height:1.35em}.conf-chip{font-size:10px;font-weight:700;padding:2px 10px;border-radius:20px;white-space:nowrap}.conf-on{background:var(--u-heal-bg);color:#2e9e6b}.conf-risk{background:var(--u-tight-bg);color:#c98a1c}.conf-off{background:var(--u-over-bg);color:#d14343}.obj{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:12px;background:var(--panel)}.obj-head{display:flex;align-items:flex-start;gap:12px;justify-content:space-between}.obj-title{font-weight:600;font-size:14.5px;margin-top:7px;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}.lvl-chip{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:6px}.lvl-company{background:#eef2ff;color:#3730a3}.lvl-division{background:#f0fdf4;color:#166534}.lvl-team{background:var(--brand-soft);color:var(--brand)}.kr{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line-2);margin-top:6px}.kt{flex:1;font-size:13px;color:var(--ink)}.kr-metric{font-family:JetBrains Mono,monospace;font-size:12.5px;color:var(--ink);white-space:nowrap}.kr-metric span{color:var(--faint)}.obj-align{margin-top:11px;padding:9px 12px;border-radius:8px;background:var(--panel-2);font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.obj-align-empty{background:var(--u-over-bg);color:var(--u-over)}.cap-track{height:6px;background:var(--line-2);border-radius:4px;overflow:hidden}.cap-fill{height:100%;background:var(--u-heal);border-radius:4px}.ws-prio{padding:14px 16px;margin-bottom:10px}.ws-prio-row{display:flex;align-items:center;gap:14px}.ws-rank{width:34px;height:34px;border-radius:9px;background:var(--navy, #0F1B2D);color:#fff;display:grid;place-items:center;font-family:Space Grotesk,sans-serif;font-weight:600;flex:none}.ws-prio-links{margin-top:5px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}.ws-prio-hours{font-family:JetBrains Mono,monospace;font-weight:600;font-size:15px;color:var(--ink)}.ws-prio-under{color:var(--u-over)}.ws-prio-actions{display:flex;gap:2px;flex:none}.ws-prio-intro{margin-bottom:6px}.ws-prio-intro-copy{font-size:13px;font-weight:600;color:var(--ink)}.ws-prio-block{max-width:100%;min-width:0}.ws-prio-panel{overflow:hidden;max-width:100%}.dt.ws-prio-table{width:100%;border-collapse:collapse;table-layout:fixed}.ws-prio-c-title{width:52%}.ws-prio-c-level{width:44px}.ws-prio-c-status{width:64px}.ws-prio-c-resource{width:14%}.ws-prio-c-date{width:72px}.ws-prio-c-acts{width:56px}.ws-feat-c-hours{width:52px}.ws-feat-c-tasks{width:18%}.dt.ws-feat-table .ws-prio-c-title{width:22%}.dt.ws-feat-table .ws-prio-c-resource{width:10%}.ws-fu-c-own{width:92px}.ws-fu-c-meeting{width:12%}.dt.ws-fu-table .ws-prio-c-title{width:28%}.dt.ws-fu-table .ws-prio-c-resource{width:12%}.ws-fu-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}.ws-fu-intro-sub{margin:4px 0 0;font-size:12px;line-height:1.4;color:var(--muted);font-weight:400;max-width:52ch}.ws-fu-filters{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;flex:none}.ws-fu-filter{display:flex;flex-direction:column;gap:3px;min-width:0}.ws-fu-filter span{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.ws-fu-filter .finput{width:auto;min-width:128px;max-width:200px;padding:5px 8px;font-size:12px}.ws-fu-filter.meeting .finput{min-width:168px;max-width:240px}.ws-fu-filter-clear{align-self:flex-end;flex:none}.ws-fu-filter-count{align-self:flex-end;padding-bottom:6px;font-size:11.5px;font-weight:500;color:var(--muted);white-space:nowrap}.ws-fu-desc{display:block;margin-top:2px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--muted);line-height:1.3}.ws-fu-own{display:inline-flex;align-items:center;max-width:100%;height:20px;padding:0 7px;border-radius:5px;font-size:10px;font-weight:650;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-fu-own[data-own=SMARTDOCS]{background:var(--brand-soft);border-color:var(--brand-line);color:var(--brand)}.ws-fu-own[data-own=CUSTOMER]{background:color-mix(in srgb,var(--teal) 10%,#fff);border-color:var(--teal-line);color:#0a6f78}.ws-fu-empty{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:28px 16px}.ws-fu-empty p{margin:0;max-width:36ch;font-size:12.5px;line-height:1.45;color:var(--muted)}.ws-fu-empty .btn{margin-top:8px}.ws-fu-empty .btn:not(.ghost) svg.i{color:#fff;stroke:currentColor;margin-bottom:0}.ws-fu-inline-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:28px 16px;font-size:13px;color:var(--muted)}.pd-fu-modal .modal-b{overflow:visible}.pd-fu-seg{display:grid;grid-template-columns:1fr 1fr;gap:6px}.pd-fu-seg-btn{border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);border-radius:8px;padding:9px 12px;font-size:12.5px;font-weight:600;cursor:pointer}.pd-fu-seg-btn:hover:not(:disabled){border-color:var(--brand-line);color:var(--brand)}.pd-fu-seg-btn.active[data-own=SMARTDOCS]{background:var(--brand-soft);border-color:var(--brand-line);color:var(--brand)}.pd-fu-seg-btn.active[data-own=CUSTOMER]{background:color-mix(in srgb,var(--teal) 10%,#fff);border-color:var(--teal-line);color:#0a6f78}.pd-fu-seg-btn:disabled{opacity:.55;cursor:not-allowed}.pd-fu-chips{display:flex;flex-wrap:wrap;gap:6px}.pd-fu-chip{border:1px solid var(--line);background:#fff;color:var(--ink-2);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:550;cursor:pointer;line-height:1.2}.pd-fu-chip:hover:not(:disabled){border-color:var(--brand-line);color:var(--brand)}.pd-fu-chip.active{background:var(--brand-soft);border-color:var(--brand-line);color:var(--brand)}.pd-fu-chip.active[data-level="1"]{background:color-mix(in srgb,var(--u-over) 12%,#fff);border-color:color-mix(in srgb,var(--u-over) 35%,var(--line));color:var(--u-over)}.pd-fu-chip.active[data-level="2"]{background:color-mix(in srgb,var(--u-tight) 12%,#fff);border-color:color-mix(in srgb,var(--u-tight) 35%,var(--line));color:#a86e12}.pd-fu-chip.active[data-status=IN_PROGRESS]{background:color-mix(in srgb,var(--teal) 10%,#fff);border-color:var(--teal-line);color:#0a6f78}.pd-fu-chip.active[data-status=HOLD]{background:color-mix(in srgb,var(--u-tight) 12%,#fff);border-color:color-mix(in srgb,var(--u-tight) 35%,var(--line));color:#a86e12}.pd-fu-chip.active[data-status=COMPLETED]{background:var(--u-heal-bg);border-color:#6bbf98;color:#1f7a4d}.pd-fu-chip:disabled{opacity:.55;cursor:not-allowed}.pd-fu-modal .combo-menu{max-height:min(180px,32vh);box-shadow:0 8px 20px #0f1b2d24}.ws-feat-tasks{display:flex;align-items:center;gap:6px;max-width:100%;min-width:0;padding:0;margin:0;border:0;background:transparent;cursor:pointer;text-align:left;color:inherit;font:inherit}.ws-feat-tasks:hover .ws-feat-tasks-names{color:var(--brand)}.ws-feat-tasks-count{flex:0 0 auto;min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:inline-grid;place-items:center;font-size:10px;font-weight:700;color:var(--brand);background:var(--brand-soft);border:1px solid var(--brand-line);font-variant-numeric:tabular-nums;line-height:1}.ws-feat-tasks-names{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;color:var(--ink-2);line-height:1.25}.ws-feat-tasks-empty{color:var(--faint);font-size:12px}.ws-prio-table thead th{padding:5px 8px;font-size:10px;letter-spacing:.04em;background:var(--panel-2);border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.ws-prio-table tbody td{padding:4px 8px;font-size:12px;border-bottom:1px solid var(--line-2);vertical-align:middle;overflow:hidden}.ws-prio-table tbody tr:last-child td{border-bottom:0}.ws-prio-table tbody tr:hover td{background:color-mix(in srgb,var(--brand-soft) 30%,#fff)}.ws-prio-col-acts{text-align:right}.ws-prio-title{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550;color:var(--ink);cursor:default;line-height:1.25;font-size:12px}.ws-prio-resource{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2);font-size:12px}.ws-prio-date{font-size:11px;color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}.ws-prio-level{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;font-size:11px;font-weight:700;font-family:Space Grotesk,sans-serif;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2)}.ws-prio-level[data-level="1"]{background:color-mix(in srgb,var(--u-over) 12%,#fff);border-color:color-mix(in srgb,var(--u-over) 35%,var(--line));color:var(--u-over)}.ws-prio-level[data-level="2"]{background:color-mix(in srgb,var(--u-tight) 12%,#fff);border-color:color-mix(in srgb,var(--u-tight) 35%,var(--line));color:#a86e12}.ws-prio-level[data-level="3"]{background:var(--brand-soft);border-color:var(--brand-line);color:var(--brand)}.ws-prio-level[data-level="4"]{background:var(--panel-2);color:var(--muted)}.ws-prio-status{display:inline-flex;align-items:center;max-width:100%;height:20px;padding:0 6px;border-radius:5px;font-size:10px;font-weight:650;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-prio-status[data-status=NOT_STARTED]{color:var(--muted)}.ws-prio-status[data-status=IN_PROGRESS]{background:color-mix(in srgb,var(--teal) 10%,#fff);border-color:var(--teal-line);color:#0a6f78}.ws-prio-status[data-status=DISCUSSION]{background:var(--brand-soft);border-color:var(--brand-line);color:var(--brand)}.ws-prio-status[data-status=HOLD]{background:color-mix(in srgb,var(--u-tight) 12%,#fff);border-color:color-mix(in srgb,var(--u-tight) 35%,var(--line));color:#a86e12}.ws-prio-status[data-status=COMPLETED]{background:var(--u-heal-bg);border-color:#6bbf98;color:#1f7a4d}.ws-prio-row-acts{display:inline-flex;gap:1px;justify-content:flex-end;opacity:.45}.ws-prio-table tbody tr:hover .ws-prio-row-acts{opacity:1}.ws-prio-under-row td{box-shadow:inset 2px 0 0 var(--u-tight)}.ws-prio-empty{padding:20px 12px}.ws-understaff-warn{margin-top:10px;padding:8px 11px;border-radius:8px;background:var(--u-over-bg);color:var(--u-over);font-size:12px;display:flex;align-items:center;gap:6px}.ws-checkins{padding:4px 16px 14px}.ws-checkin{border-bottom:1px solid var(--line-2);padding:14px 0}.ws-checkin:last-child{border-bottom:0}.ws-checkin-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ws-checkin-note{font-size:13px;color:var(--ink);margin-top:6px;line-height:1.45}.ack-btn{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:20px;padding:4px 12px;cursor:pointer}.ack-btn.on{background:var(--u-heal-bg);color:#2e9e6b;border-color:#b7e4c7}.cmt{display:flex;gap:8px;align-items:flex-start;margin-top:8px}.cmt-box{background:var(--panel-2);border-radius:8px;padding:8px 10px}.cmt-input{flex:1;border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:12.5px;background:#fff}.cmt-input:focus{outline:2px solid var(--brand-line);border-color:var(--brand)}.avatar.ca{flex:none}.ws-mem-grid{columns:2;column-gap:14px}.mem-card{break-inside:avoid;border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:14px;background:var(--panel)}.mem-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.type-chip{font-size:10px;font-weight:700;padding:2px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}.tc-decision{background:#eef2ff;color:#3730a3}.tc-norm{background:#f0fdf4;color:#166534}.tc-stakeholder{background:#fff7ed;color:#c2410c}.tc-learning{background:#fdf4ff;color:#86198f}.tc-link{background:var(--panel-2);color:var(--ink-2)}@media(max-width:800px){.ws-mem-grid{columns:1}}.tts-date-pick{display:inline-flex;align-items:center;gap:6px}.tts-date-lbl{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.tts-date-input{padding:5px 8px;font-size:12px;min-width:0;width:auto}.tts-status-col{width:88px;min-width:88px;font-size:10px!important}.tts-status-cell{text-align:center;padding:4px 6px;vertical-align:middle;border-bottom:1px solid var(--line-2)}.tts-task-link{text-decoration:none;color:inherit;width:100%}.tts-task-link:hover .tb-task-name{color:var(--brand)}.tts-plan-hint{display:block;font-size:9px;font-family:JetBrains Mono;color:var(--muted);line-height:1.1;margin-top:1px}.tts-empty-tasks{display:block;font-size:11.5px;color:var(--muted)}.tts-ready .person .avatar{width:26px;height:26px;font-size:10px;border-radius:7px;flex:none}.tts-ready .tts-person .tk-toggle,.tts-ready .tts-person .tk-toggle-spacer{width:22px;height:22px;flex:0 0 22px;margin-top:0}.tts-ready .tts-task-indent .tk-toggle-spacer{width:22px;height:22px;flex:0 0 22px}.tts-ready .tb-task-daycell{padding:1px}.tts-ready .tts-ratio{font-family:JetBrains Mono;font-size:10.5px;font-weight:600;white-space:nowrap;line-height:1.1}.tts-ready .tb-task-hrs.tts-ratio{font-size:10px}.tts-ready .tb-summary-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:10px}.tts-ready .tb-stat{padding:8px 10px}:root{--leave:#7A5AF0;--leave-bg:#EFEBFD;--leave-line:#DAD0FA}.box.off.leave{background:repeating-linear-gradient(45deg,var(--leave-bg),var(--leave-bg) 4px,#E1D8FA 4px,#E1D8FA 8px);color:var(--leave)}.box.off.leave .pct{color:var(--leave);font-weight:600}.tb-half{position:relative}.tb-half-badge{position:absolute;top:2px;right:3px;font-size:9px;font-weight:700;color:var(--leave);line-height:1}.pill.half{color:var(--leave);background:var(--leave-bg);border-color:var(--leave-line)}.mwc .b.fc-off{background:repeating-linear-gradient(45deg,var(--leave-bg),var(--leave-bg) 4px,#E1D8FA 4px,#E1D8FA 8px);color:var(--leave)}.mwc .b.fc-off .p{color:var(--leave);font-weight:600}.mwc .b.fc-half{position:relative;box-shadow:inset 0 0 0 1px var(--leave-line)}.fc-half-badge{position:absolute;top:1px;right:2px;font-size:9px;font-weight:700;color:var(--leave);line-height:1}.btn.xs{padding:3px 8px;font-size:11px;border-radius:6px}.mp-link,.tb-name-link{color:var(--brand);text-decoration:none;cursor:pointer}.mp-link:hover,.tb-name-link:hover{text-decoration:underline}.tb-name-link{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mp-layout{display:grid;grid-template-columns:minmax(280px,340px) 1fr;gap:18px;align-items:start}@media(max-width:900px){.mp-layout{grid-template-columns:1fr}}.mp-card{padding:18px}.mp-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.mp-avatar{width:46px;height:46px;font-size:16px;border-radius:12px}.mp-name{font-size:16px;font-weight:600;color:var(--ink)}.mp-role{font-size:12px;color:var(--muted)}.mp-meta{display:flex;flex-direction:column;gap:12px;margin:0 0 16px}.mp-meta div{display:flex;flex-direction:column;gap:2px}.mp-meta dt{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.mp-meta dd{margin:0;font-size:13px;color:var(--ink-2)}.mp-mono{font-family:JetBrains Mono;font-size:12px}.mp-cap-edit{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.mp-cap-input{width:70px;margin:0}.mp-legend{display:flex;gap:14px;font-size:11.5px;color:var(--muted);padding:12px 0;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);margin-bottom:14px}.mp-legend span{display:inline-flex;align-items:center;gap:6px}.mp-dot{width:10px;height:10px;border-radius:3px;display:inline-block}.mp-dot.full{background:repeating-linear-gradient(45deg,var(--leave),var(--leave) 3px,#9F87F5 3px,#9F87F5 6px)}.mp-dot.half{background:var(--leave-bg);box-shadow:inset 0 0 0 1px var(--leave-line)}.mp-section-title{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.mp-up-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line-2);font-size:12px}.mp-up-row:last-child{border-bottom:0}.mp-up-date{font-family:JetBrains Mono;font-size:11px;color:var(--ink-2);min-width:76px}.mp-up-note{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.mp-cal-panel{padding:14px 16px}.mp-cal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.mp-month-label{font-size:13px;min-width:150px;text-align:center;display:inline-block}.mp-hint{font-size:11.5px;color:var(--muted)}.mp-cell{position:relative;min-height:74px}.cal-month .mp-cell{min-height:74px}.mp-cell[disabled]{cursor:default}.mp-weekend{background:var(--panel-2)}.mp-today .dnum{color:var(--brand)}.mp-today{box-shadow:inset 0 0 0 1px var(--brand-line)}.mp-off-full{background:repeating-linear-gradient(45deg,var(--leave-bg),var(--leave-bg) 5px,#E1D8FA 5px,#E1D8FA 10px)}.mp-off-half{background:var(--leave-bg)}.mp-tag{margin-top:6px;font-size:10px;font-weight:600;color:var(--leave);display:inline-block;background:#fff;border:1px solid var(--leave-line);border-radius:5px;padding:1px 5px}.mp-day-modal{max-width:420px}.mp-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.mp-field-label{font-size:12px;font-weight:500;color:var(--ink-2)}.mp-portion-grid{display:flex;flex-direction:column;gap:8px}.mp-portion-grid .btn{justify-content:center}.pd-summary{padding:18px}.pd-summary-grid{gap:14px}.pd-progress{padding:18px;display:flex;flex-direction:column;gap:13px}.pd-page>.grid2,.pd-page>.panel{margin-top:16px}.pd-page.compact .crumbs{margin-bottom:6px}.pd-page.compact .toolbar{margin-bottom:10px}.pd-page.compact .toolbar .eyebrow{margin-bottom:2px;font-size:10px}.pd-page.compact .toolbar h1{font-size:18px}.pd-page.compact .toolbar p,.pd-page.compact .toolbar .toolbar-desc{margin-top:2px;font-size:12px}.pd-page.compact>.grid2,.pd-page.compact>.panel{margin-top:11px}.pd-page.compact .pd-summary{padding:11px 13px}.pd-page.compact .pd-summary-grid{gap:9px 14px}.pd-page.compact .pd-summary-grid>div>div:first-child{font-size:10px}.pd-page.compact .pd-progress{padding:11px 13px;gap:8px}.pd-page.compact .pd-progress .cap-track{height:8px}.panel.compact .panel-h{padding:8px 12px}.panel.compact .panel-h h2{font-size:13px}.panel.compact .panel-h .sub{font-size:11px}.panel.compact .panel-search{padding:6px 12px}.panel.compact .dt th{padding:6px 10px;font-size:10px}.panel.compact .dt td{padding:5px 10px;font-size:12px}.panel.compact .dt .tk{font-weight:500}.panel.compact .dt .tk small{font-size:10px;margin-top:0}.panel.compact .dt .pill,.panel.compact .dt .status{font-size:10.5px;padding:1px 7px}.panel.compact .dt .tk-subcount{height:16px;min-width:16px;font-size:9.5px;padding:0 5px}.pd-attach.compact .config-list{padding:0}.pd-attach.compact .config-item{padding:6px 10px}.fc-forecast-panel.compact .panel-h{padding:8px 12px}.fc-forecast-panel.compact .fctable th{padding:4px 3px;font-size:10px}.fc-forecast-panel.compact .fctable td{padding:1px 3px}.fc-forecast-panel.compact .fctable .mwc{padding:1px 2px}.fc-forecast-panel.compact .fctable .mwc .b{padding:2px}.fc-forecast-panel.compact .fctable .mwc .p{font-size:10.5px}.fc-forecast-panel.compact .fctable tfoot td{font-size:11px;padding-top:6px}.pd-align .pd-align-warn{color:var(--u-over)}.pd-align-body{padding:12px 16px;display:flex;flex-direction:column;gap:14px}.pd-align-team+.pd-align-team{margin-top:2px}.pd-align-team-h{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);margin:0 0 6px;display:flex;align-items:center;gap:8px}.pd-align-viastaff{font-size:9.5px;font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--muted);background:var(--surface-2, #f3f4f6);padding:1px 7px;border-radius:99px}.pd-align-prio{display:flex;align-items:center;gap:10px;padding:6px 8px;border:1px solid var(--line);border-radius:9px;margin-bottom:6px}.pd-align-prio.under{border-color:var(--u-over);background:var(--u-over-bg)}.pd-align-prio .ws-rank{width:24px;height:24px;border-radius:7px;font-size:12px}.pd-align-prio-main{flex:1;min-width:0}.pd-align-prio-title{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:28ch}.pd-align-prio-obj{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-align-prio-cap{flex:none;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.pd-align-cap-pct{font-family:JetBrains Mono,monospace;font-weight:600;font-size:12.5px;color:var(--ink)}.pd-align-cap-pct.under{color:var(--u-over)}.pd-align-under{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--u-over);background:var(--u-over-bg);padding:1px 6px;border-radius:99px}.pd-align-empty{font-size:12.5px;color:var(--muted);padding:2px 0}.pd-align-objs,.pd-align-picker{border-top:1px solid var(--line);padding-top:12px}.pd-align-sub{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);margin-bottom:8px}.pd-align-obj{display:flex;align-items:center;gap:8px;padding:3px 0}.pd-align-obj-title{flex:1;min-width:0;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-align-obj-pct{flex:none;font-size:11px;color:var(--muted);font-family:JetBrains Mono,monospace}.pd-page.compact .pd-align-body{padding:8px 12px;gap:10px}.pd-page.compact .pd-align-prio{padding:4px 7px;margin-bottom:4px}.pd-page.compact .pd-align-prio .ws-rank{width:21px;height:21px;font-size:11px}.pd-page.compact .pd-align-prio-title{font-size:12px}.pd-page.compact .pd-align-objs,.pd-page.compact .pd-align-picker{padding-top:9px}.rlinks{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.rlink{display:inline-flex;align-items:center;gap:6px;max-width:220px;padding:4px 10px;border:1px solid var(--line);border-radius:99px;font-size:12px;font-weight:500;color:var(--ink);text-decoration:none;background:var(--panel-2, transparent);transition:border-color .12s ease,background .12s ease}.rlink:hover{border-color:var(--brand);background:var(--u-heal-bg, rgba(0, 0, 0, .03))}.rlink .i{flex:none;color:var(--muted)}.rlink span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-mission-links{margin-top:12px}.pd-page.compact .rlinks{margin-top:10px;padding-top:9px}.pd-page.compact .rlink{padding:2px 8px;font-size:11px}.rlink-editor{display:flex;flex-direction:column;gap:8px}.rlink-row{display:flex;align-items:center;gap:8px}.rlink-row .rlink-label{flex:0 0 32%;min-width:0}.rlink-row .rlink-url{flex:1;min-width:0}.rlink-row .iconbtn{flex:none}.rlink-add{align-self:flex-start}.proj-pref-cell{width:44px;padding-left:10px!important;padding-right:4px!important}.proj-pref-btn{width:28px;height:28px;border-radius:7px;color:var(--faint)}.proj-pref-btn:hover{color:var(--brand);border-color:var(--brand-line)}.proj-pref-btn.active{color:#c9851a;border-color:color-mix(in srgb,#C9851A 40%,var(--line));background:color-mix(in srgb,#C9851A 10%,#fff)}.proj-pref-btn.active:hover{color:#a86e12;border-color:#c9851a}.proj-pref-btn.active .i{fill:currentColor}.btn.proj-pref-toggle.active{color:#c9851a;border-color:color-mix(in srgb,#C9851A 40%,var(--line));background:color-mix(in srgb,#C9851A 8%,#fff)}.btn.proj-pref-toggle.active:hover{color:#a86e12;border-color:#c9851a}.btn.proj-pref-toggle.active .i{fill:currentColor}.pd-review .ws-checkins{padding:0 16px 12px}.pd-review-composer{padding:12px 16px;border-bottom:1px solid var(--line-2);display:flex;flex-direction:column;gap:8px}.pd-review-composer-row{display:flex;gap:8px;flex-wrap:wrap}.pd-review-composer-row .finput{flex:1;min-width:150px}.pd-review-composer-actions{display:flex;justify-content:flex-end;gap:8px}.pd-page.compact .pd-review-composer{padding:9px 13px}.pd-page.compact .pd-review .ws-checkin{padding:10px 0}.ow-prio-team{margin-bottom:18px}.ow-prio-team-h{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:4px 0 8px;padding-left:2px}.ow-prio-team .ws-prio{margin-bottom:8px}.pb-page{display:flex;flex-direction:column;gap:12px}.pb-project-chips{margin:-4px 0 4px!important;width:100%;justify-content:flex-start!important;align-items:center}.pb-project-chips.pb-chips-collapsed{flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden}.pb-project-chips .tb-filter-chip{flex:0 0 auto;max-width:220px;white-space:nowrap;overflow:hidden;line-height:1.2}.pb-chip-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.pb-chips-more{border-style:solid!important;border-color:var(--brand)!important;color:var(--brand)!important;background:var(--brand-soft)!important;font-weight:600;flex:0 0 auto!important;max-width:none!important}.pb-chips-more:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.pb-chip-starred .pb-star{color:#c6871a;flex:0 0 auto;font-size:11px;line-height:1}.pb-sched-grid{overflow:auto}.pb-sched-grid .ucell{cursor:default}.pb-sched-grid .ucell:not(.off-cell):hover .box{transform:none;box-shadow:none}.pb-picker{position:relative}.pb-picker-btn{display:inline-flex;align-items:center;gap:7px}.pb-picker.open .pb-picker-btn,.pb-picker.open .tb-filter-chip{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.pb-picker-backdrop{position:fixed;inset:0;z-index:40}.pb-picker-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:41;width:300px;max-width:90vw;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #0f1b2d29;overflow:hidden;display:flex;flex-direction:column}.pb-picker-panel-left{left:0;right:auto}.pb-picker-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line-2)}.pb-picker-search svg.i{color:var(--muted);flex:none}.pb-picker-search .finput{flex:1;border:0;padding:4px;box-shadow:none}.pb-picker-search .finput:focus{outline:none;box-shadow:none}.pb-picker-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;font-size:11px;font-weight:600;color:var(--muted);background:var(--panel-2);border-bottom:1px solid var(--line-2)}.pb-picker-head .tb-linkbtn:disabled{opacity:.4;cursor:default;text-decoration:none}.pb-picker-list{max-height:280px;overflow:auto;padding:6px}.pb-picker-opt{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;cursor:pointer;text-align:left;color:var(--ink);font:inherit}.pb-picker-opt:hover{background:var(--panel-2)}.pb-picker-opt.checked{background:var(--brand-soft)}.pb-check{width:18px;height:18px;flex:0 0 auto;border-radius:5px;border:1.5px solid var(--line);display:grid;place-items:center;color:#fff;background:#fff}.pb-picker-opt.checked .pb-check{background:var(--brand);border-color:var(--brand)}.pb-check svg.i{width:12px;height:12px;stroke:#fff}.pb-picker-opt-name{display:flex;flex-direction:column;min-width:0;flex:1;font-size:13px;font-weight:500;line-height:1.3}.pb-picker-empty{padding:16px 14px;text-align:center;font-size:12.5px;color:var(--muted)}.pb-toolbar{padding:0;overflow:visible}.pb-toolbar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px;margin:0!important;justify-content:flex-start!important}.pb-search{display:flex;align-items:center;gap:8px;flex:1 1 200px;min-width:180px;max-width:320px;padding:0 10px;height:34px;border-radius:8px;background:var(--panel-2);border:1px solid transparent}.pb-search:focus-within{background:#fff;border-color:var(--brand);outline:2px solid var(--brand-line)}.pb-search svg.i{color:var(--muted);flex:none}.pb-search .finput{flex:1;border:0;padding:0;background:transparent;box-shadow:none;font-size:13px}.pb-search .finput:focus{outline:none;box-shadow:none}.pb-toolbar-row .util-pill,.pb-toolbar .util-pill{font-size:11.5px;font-weight:600;color:var(--ink-2);padding:3px 10px;border-radius:20px;background:var(--panel-2);border:1px solid var(--line)}.pb-sched-grid.tb-heat-panel .heat tbody tr.tb-person-row td.who{background:var(--panel);box-shadow:2px 0 8px #0f1b2d0a,inset 3px 0 0 var(--line)}.pb-sched-grid.tb-heat-panel .heat tbody tr.tb-person-row:hover td.who{background:var(--panel)}.pb-sched-grid.tb-heat-panel .heat tbody tr.tb-person-row.tb-row-expanded td.who{background:var(--panel);box-shadow:2px 0 8px #0f1b2d0a,inset 3px 0 0 var(--brand-line)}.st-page .toolbar{margin-bottom:10px}.st-page .toolbar .eyebrow{margin-bottom:2px;font-size:10px}.st-page .toolbar h1{font-size:18px}.st-page .toolbar p,.st-page .toolbar .toolbar-desc{margin-top:2px;font-size:12px}.wh-controls{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-end;margin:0 0 5px}.wh-controls .finput{width:auto;min-width:118px;padding:4px 7px;font-size:11.5px;border-radius:7px}.wh-controls .cal-toggle{padding:2px;border-radius:8px}.wh-controls .cal-toggle button{padding:3px 8px;font-size:11px;border-radius:5px}.wh-controls .st-view-toggle button{padding:3px 7px;font-size:11px}.st-team-filter{margin:-2px 0 6px;justify-content:center;padding:0;gap:5px}.st-team-filter .tb-filter-chip{padding:3px 9px;font-size:11px;gap:4px}.st-empty{padding:20px 14px;text-align:center;font-size:12.5px;color:var(--muted, #647087)}.wh-controls-actions{margin-left:auto;display:flex;gap:4px}.wh-controls-actions .btn.sm{padding:4px 8px;font-size:11px}.st-page .fl,.wh-controls .fl{font-size:10px;font-weight:600;color:var(--ink-2, #3d4e6b);display:block;margin-bottom:2px;letter-spacing:.02em}.day-control{min-width:0}.day-nav{display:inline-flex;align-items:center;gap:4px;height:26px;padding:1px;border:1px solid var(--line);border-radius:7px;background:var(--panel-2, #f4f7fc)}.day-nav-btn{width:22px;height:22px;flex:none;border-radius:6px;border:1px solid transparent;background:#fff;color:var(--ink-2, #3d4e6b);box-shadow:0 1px 2px #0f1b2d0a;display:grid;place-items:center;padding:0;cursor:pointer}.day-nav-btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.day-nav-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.day-nav-btn .i{width:12px;height:12px}.day-nav-date{font-size:12px;font-weight:650;font-family:Space Grotesk,sans-serif;color:var(--ink, #0f1b2d);min-width:88px;text-align:center;letter-spacing:-.01em;line-height:1;padding:0 2px;white-space:nowrap;font-variant-numeric:tabular-nums}.day-today{margin-left:1px;height:22px;padding:0 7px;font-size:11px;border-radius:6px}.wh-loader{display:flex;align-items:center;justify-content:center;min-height:120px;padding:20px 14px}.wh-spin{width:20px;height:20px;border-width:2.5px;color:var(--brand, #1e56c8)}.panel.compact.is-refreshing{position:relative;min-height:120px}.wh-refresh{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--panel, #fff) 72%,transparent);border-radius:inherit;pointer-events:all}.wh-pad{padding:5px 8px 6px}.day-panel{display:flex;flex-direction:column;min-height:0}.day-panel-h{padding:5px 8px 4px;flex:none;gap:2px}.day-panel-h h2{font-size:11.5px;font-weight:650;line-height:1.15}.day-panel-h .sub{font-size:10px;line-height:1.2}.day-scroll{overflow:auto;overscroll-behavior:contain;flex:1 1 auto;max-height:min(100dvh - 155px,840px);padding:0 6px 1px;min-height:180px;background-color:var(--panel, #fff)}.axis{position:relative;height:11px;margin:0}.axis-sticky{position:sticky;top:0;z-index:10;background-color:var(--panel, #fff);background:var(--panel, #fff);padding:2px 0 1px;margin:0 0 1px;border-bottom:1px solid var(--line-2, #ebf0f7);box-shadow:0 1px #0f1b2d08}.axis span{position:absolute;font-size:8px;color:var(--faint, #93a2bc);transform:translate(-50%);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1;pointer-events:none}.axis .axis-tick{color:#b6c2d4;font-weight:500}.axis .axis-tick:before{content:"";position:absolute;left:50%;bottom:-2px;width:1px;height:3px;background:color-mix(in srgb,var(--line, #d7e0ee) 80%,var(--muted, #93a2bc));transform:translate(-50%)}.axis .axis-tick.major{color:var(--faint, #93a2bc);font-weight:700;font-size:8.5px}.axis .axis-tick.major:before{height:5px;background:var(--muted, #93a2bc)}.axis .axis-tick.no-label{color:transparent;font-size:0}.axis-indent{margin-left:136px}.panel-h .sub-hint{color:var(--muted, #647087);font-weight:500}.teamhdr{font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:5px 0 1px;display:flex;align-items:center;gap:4px;color:var(--ink-2, #3d4e6b)}.teamhdr.day-team{margin:1px 0 0;height:17px;font-size:8.5px;gap:3px;position:sticky;left:0;background-color:#eef2f8;background:#eef2f8;z-index:3;border-radius:3px;padding:0 3px 0 1px}.teamhdr.day-team.collapsed{margin-bottom:0}.teamhdr.day-team .team-toggle{width:13px;height:13px;flex:0 0 13px}.teamhdr.day-team .team-toggle .i{width:9px;height:9px}.teamhdr.day-team .team-count{font-size:8px;padding:0 3px;line-height:1.25}.teamhdr.day-team .sw{width:7px;height:7px;border-radius:2px}.teamhdr.tight{padding:3px 0 0;min-width:0}.teamhdr.collapsed{padding-bottom:2px}.team-toggle{width:18px;height:18px;flex:0 0 18px;border:0;background:transparent;color:var(--muted, #6b7c99);border-radius:4px;display:grid;place-items:center;cursor:pointer;padding:0}.team-toggle:hover{color:var(--brand, #1e56c8);background:var(--panel-2, #f4f7fc)}.team-toggle .i{width:12px;height:12px}.team-name{border:0;background:transparent;padding:0;margin:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;text-align:left;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-name:hover{color:var(--brand, #1e56c8)}.team-count{font-size:9.5px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--muted);background:var(--panel-2, #f4f7fc);border:1px solid var(--line-2, #ebf0f7);border-radius:999px;padding:0 5px;line-height:1.4}.sw{width:10px;height:10px;border-radius:2px;display:inline-block;background:var(--brand);vertical-align:-1px;margin-right:1px;flex:none}.sw.hatch{background:repeating-linear-gradient(45deg,#fff,#fff 3px,var(--line-2, #ebf0f7) 3px,var(--line-2, #ebf0f7) 6px);border:1px solid var(--line)}.vrow{display:grid;grid-template-columns:136px 1fr;gap:5px;align-items:center;padding:2px 0;border-top:1px solid var(--line-2, #ebf0f7);min-height:0}.vrow.dense{grid-template-columns:156px 1fr;gap:4px;padding:0;min-height:26px;height:26px;border-top-color:#f0f3f8}.vrow.dense:hover{background:#0f1b2d05}.vperson{display:flex;align-items:center;gap:5px;min-width:0}.vperson.inline{gap:2px;flex-wrap:nowrap;height:26px;min-width:0;padding-right:0}.vperson .who-id,.gtable.heat .gperson .who-id{display:flex;align-items:center;gap:2px;min-width:0;flex:0 1 auto;overflow:hidden}.vperson.inline .nm{font-size:10px;font-weight:600;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:0 1 auto;color:var(--ink, #0f1b2d)}.vperson.inline .gdot{flex:0 0 auto;color:var(--faint, #93a2bc);font-weight:700;line-height:1;font-size:9px}.vperson.inline .lc{font-size:9px;color:var(--muted);line-height:1;white-space:nowrap;flex:0 0 auto}.vperson.inline .lc.view-hours{font-weight:650;font-variant-numeric:tabular-nums;color:var(--ink-2, #3d4e6b);font-family:JetBrains Mono,ui-monospace,Menlo,monospace;font-size:8.5px;letter-spacing:-.04em}.vmeta{min-width:0;flex:1}.nm-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;min-width:0}.vperson .nm{font-size:12px;font-weight:600;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hours-row{display:flex;align-items:center;gap:3px;min-width:0;margin-top:1px}.vperson .lc{font-size:10px;color:var(--muted);line-height:1.25;min-width:0;flex:0 1 auto;white-space:nowrap}.vperson .lc.view-hours{flex:0 0 auto;overflow:visible;text-overflow:clip;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-2, #3d4e6b)}.vperson.sm .nm{font-size:11.5px}.avatar.sm{width:22px;height:22px;font-size:8.5px;border-radius:6px}.avatar.xs{width:18px;height:18px;font-size:7.5px;border-radius:5px;flex:none}.avatar.rnd{background:var(--teal-soft, #e1f2f3);color:var(--teal, #0e7c86)}.edit-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;margin:0;border:0;background:transparent;color:var(--muted, #647087);border-radius:3px;cursor:pointer;opacity:.72}.vrow.dense:hover .edit-icon,.edit-icon:focus-visible{opacity:1}.edit-icon:hover{color:var(--brand, #1e56c8);background:var(--brand-soft, #e9f0fc);opacity:1}.edit-icon .i{width:10px;height:10px}.day-panel .tl-track{position:relative;height:16px;background:repeating-linear-gradient(90deg,#e8eef6,#e8eef6 calc(4.1666666667% - 1px),#d7e0ee calc(4.1666666667% - 1px) 4.1666666667%);border:1px solid var(--line-2, #ebf0f7);border-radius:2px;overflow:visible;cursor:pointer}.day-panel .vrow.dense .tl-track{height:16px}.day-panel .tl-track:hover{border-color:color-mix(in srgb,var(--brand, #1e56c8) 28%,var(--line-2, #ebf0f7))}.day-panel .tl-track .blk{position:absolute;top:0;bottom:0;border-radius:2px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:9.5px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-family:JetBrains Mono,ui-monospace,Menlo,monospace;background:var(--brand);white-space:nowrap;overflow:hidden;text-overflow:clip;z-index:1;opacity:.95;box-sizing:border-box;padding:0 3px;cursor:pointer;line-height:1}.day-panel .tl-track .blk:hover{opacity:1;filter:brightness(1.05);z-index:2}.day-panel .tl-track .blk.split{box-shadow:inset 0 0 0 1px #ffffff38}.day-panel .off-label{position:absolute;inset:0;display:grid;place-items:center;color:var(--faint, #93a2bc);font-size:9px;font-weight:600;letter-spacing:.02em;text-transform:lowercase;background:repeating-linear-gradient(-45deg,#f0f3f8,#f0f3f8 2px,#dce3ee 2px 4px);border-radius:1px;pointer-events:none}.now{position:absolute;top:-3px;bottom:-3px;width:12px;margin-left:-6px;border:0;background:transparent;z-index:6;cursor:default;pointer-events:auto}.now:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:0;border-left:2px dashed #c23b3b;box-shadow:-1px 0 #fff,1px 0 #fff;transform:translate(-50%)}.now:before{content:"";position:absolute;top:0;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:#c23b3b;border:1px solid #fff;box-shadow:0 0 0 1px #c23b3b59;z-index:1}.leg-now{display:inline-flex;align-items:center;gap:5px}.now-sample{display:inline-block;width:12px;height:10px;position:relative;vertical-align:middle}.now-sample:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px dashed #c23b3b;transform:translate(-50%)}.now-sample:after{content:"";position:absolute;top:0;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:#c23b3b;border:1px solid #fff}.day-footer{flex:none;padding:2px 6px 4px;border-top:1px solid var(--line-2, #ebf0f7);background:var(--panel, #fff)}.insight-toggle{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;margin:0;padding:2px 6px;border:1px solid var(--line-2, #ebf0f7);border-radius:4px;background:var(--panel-2, #f4f7fc);color:var(--ink-2, #3d4e6b);font-size:10px;font-weight:600;cursor:pointer;text-align:left;min-height:20px}.insight-toggle:hover{border-color:var(--line, #d7e0ee);color:var(--brand, #1e56c8)}.insight-toggle .i{width:11px;height:11px;flex:none;color:var(--muted)}.insight-toggle-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.day-insight{margin-top:4px;padding:0;border:0}.covbars,.insight-bars{display:flex;height:14px;align-items:flex-end;gap:0;margin-left:0}.covbars .cb,.insight-bars .cb{flex:1;background:var(--brand);border-radius:1px 1px 0 0;margin:0 .5px;min-height:2px}.insight-overlap{margin-top:3px;margin-left:0;background:var(--panel-2, #f4f7fc);border:1px solid var(--line-2, #ebf0f7);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600;color:var(--ink-2, #3d4e6b)}.insight-overlap.ok{background:var(--teal-soft, #e1f2f3);border-color:#bce0e2;color:var(--teal, #0e7c86)}.insight-overlap.none{color:var(--muted)}.legend{display:flex;gap:12px;flex-wrap:wrap;font-size:10.5px;color:var(--muted);align-items:center;margin-top:6px}.day-legend{margin-top:3px;gap:8px;font-size:9.5px}.ethos-scroll{scrollbar-width:thin;scrollbar-color:var(--teal-line, #bfe6ea) transparent}.ethos-scroll::-webkit-scrollbar{width:8px;height:8px}.ethos-scroll::-webkit-scrollbar-track{background:transparent}.ethos-scroll::-webkit-scrollbar-thumb{background:var(--teal-line, #bfe6ea);border-radius:999px;border:2px solid transparent;background-clip:content-box}.ethos-scroll::-webkit-scrollbar-thumb:hover{background:var(--faint, #9aa6b8);background-clip:content-box;border:2px solid transparent}.ethos-scroll::-webkit-scrollbar-corner{background:transparent}.grid-panel-h{padding:5px 8px}.grid-panel-h h2{font-size:11.5px;font-weight:650;line-height:1.15}.grid-panel-h .sub{font-size:10px;line-height:1.2}.grid-pad{padding:3px 6px 4px}.gwrap{overflow:auto;overflow-x:scroll;overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(100dvh - 175px,780px);border:1px solid var(--line-2, #ebf0f7);border-radius:6px;background:#fff}.gtable.heat{--st-who-w: 172px;--st-day-w: 52px;--st-wknd-w: 24px;border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:1036px;width:100%}.gtable.heat col.col-who{width:var(--st-who-w)}.gtable.heat col.col-day{width:auto}.gtable.heat col.col-day.wknd{width:var(--st-wknd-w)}.grid-panel.st-week .gtable.heat{min-width:480px;--st-day-w: 52px;--st-wknd-w: 24px}.grid-panel.st-month .gtable.heat{min-width:1426px;--st-day-w: 48px;--st-wknd-w: 22px}.gtable.heat.st-compact thead th:not(.who):not(.wknd){min-width:var(--st-day-w);padding:1px 0}.gtable.heat.st-compact thead th.wknd{min-width:var(--st-wknd-w);max-width:var(--st-wknd-w);width:var(--st-wknd-w);padding:1px 0}.gtable.heat.st-compact th .gdow{font-size:7.5px}.gtable.heat.st-compact th .gdate{font-size:9.5px}.gtable.heat.st-compact th.wknd .gdate{font-size:8.5px}.gtable.heat.st-compact td.gcell{height:18px;padding:0}.gtable.heat.st-compact .gcell-inner{height:16px}.gtable.heat.st-compact .gcell-inner .gtrack{height:7px}.gtable.heat.st-compact .gex{font-size:7.5px;top:0;line-height:9px}.gtable.heat.st-compact td.gcell.wknd .gex{font-size:6.5px;letter-spacing:-.06em}.grid-legend{margin-top:4px;gap:10px;font-size:9.5px}.leg-bar{display:inline-flex;align-items:center;gap:5px}.leg-track{display:inline-block;width:22px;height:10px;border-radius:2px;background:var(--panel-2, #f4f7fc);border:1px solid var(--line-2, #ebf0f7);position:relative;overflow:hidden;vertical-align:middle}.leg-track .leg-blk{position:absolute;left:20%;width:45%;top:0;bottom:0;background:var(--brand, #1e56c8);border-radius:1px}.leg-track.off{background:repeating-linear-gradient(-45deg,#f0f3f8,#f0f3f8 2px,#dce3ee 2px 4px)}.gtable.heat thead tr.week-bands th{position:sticky;top:0;z-index:6;height:16px;padding:1px 3px;font-size:8.5px;font-weight:700;text-align:left;border-bottom:1px solid var(--line-2, #ebf0f7);background-color:#eef2f8;background:#eef2f8;background-clip:padding-box;color:var(--ink-2, #3d4e6b);line-height:1;vertical-align:middle}.gtable.heat thead tr.week-bands th.week-band-start{border-left:2px solid color-mix(in srgb,var(--muted, #93a2bc) 55%,var(--line, #d7e0ee))}.gtable.heat .wb-label{margin-right:4px;letter-spacing:.05em;text-transform:uppercase;font-size:8px;font-weight:800;color:var(--ink-2, #3d4e6b)}.gtable.heat .wb-range{font-weight:600;font-variant-numeric:tabular-nums;color:var(--muted, #647087);font-size:8.5px}.gtable.heat thead tr.week-bands th.who{left:0;z-index:8;width:var(--st-who-w);min-width:var(--st-who-w);max-width:var(--st-who-w);box-shadow:2px 0 6px #0f1b2d0d;background-color:#eef2f8;background:#eef2f8}.gtable.heat thead tr.day-heads th{position:sticky;top:0;z-index:5;height:22px;padding:0;font-size:8px;font-weight:600;text-align:center;border-bottom:1px solid var(--line);line-height:1.05;min-width:var(--st-day-w);background-color:var(--panel-2, #f4f7fc);background:var(--panel-2, #f4f7fc);background-clip:padding-box;color:var(--muted);vertical-align:middle}.gtable.heat thead tr.day-heads th.wknd{min-width:var(--st-wknd-w);max-width:var(--st-wknd-w);width:var(--st-wknd-w);padding:0}.gtable.heat.has-week-bands thead tr.day-heads th{top:16px}.gtable.heat th .gdow,.gtable.heat th .gdate{display:block}.gtable.heat th .gdow{font-size:7px;font-weight:600;letter-spacing:.03em;color:var(--faint, #93a2bc);text-transform:uppercase}.gtable.heat th .gdate{font-size:9.5px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-2, #3d4e6b)}.gtable.heat th.today .gdow,.gtable.heat th.today .gdate{color:var(--brand, #1e56c8)}.gtable.heat thead tr.day-heads th.who{text-align:left;width:var(--st-who-w);min-width:var(--st-who-w);max-width:var(--st-who-w);padding-left:2px;left:0;z-index:7;box-shadow:2px 0 6px #0f1b2d0d;background-color:var(--panel-2, #f4f7fc);background:var(--panel-2, #f4f7fc)}.gtable.heat th.wknd{background-color:#e8edf5;background:#e8edf5}.gtable.heat th.week-start,.gtable.heat td.week-start{border-left:2px solid color-mix(in srgb,var(--muted, #93a2bc) 45%,var(--line, #d7e0ee))}.gtable.heat th.today{background-color:#e4ecf9;background:color-mix(in srgb,var(--brand-soft, #e9f0fc) 65%,var(--panel-2, #f4f7fc));box-shadow:inset 0 -2px 0 0 var(--brand, #1e56c8)}.gtable.heat td.today{background:#1e56c80f}.gtable.heat td{border-bottom:1px solid #f0f3f8;padding:0;vertical-align:middle;background:#fff;height:18px}.gtable.heat tr.team-row td{height:17px;border-bottom:1px solid var(--line-2, #ebf0f7)}.gtable.heat td.who{position:sticky;left:0;z-index:2;width:var(--st-who-w);min-width:var(--st-who-w);max-width:var(--st-who-w);padding:0 1px;background-color:#fff;background:#fff;background-clip:padding-box;box-shadow:2px 0 6px #0f1b2d0d}.gtable.heat .gperson{display:flex;align-items:center;gap:2px;height:18px;min-width:0;width:100%}.gtable.heat .gperson .nm{flex:0 1 auto;min-width:0;font-size:10px;font-weight:600;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink, #0f1b2d)}.gtable.heat .gdot{flex:0 0 auto;color:var(--faint, #93a2bc);font-weight:700;line-height:1;font-size:9px}.gtable.heat .gtypical{flex:0 0 auto;font-size:8.5px;font-weight:650;color:var(--ink-2, #3d4e6b);font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1;white-space:nowrap}.avatar.xx{width:14px;height:14px;font-size:6.5px;border-radius:3px;flex:none}.gtable.heat td.who.team-cell{z-index:3;background-color:#eef2f8;background:#eef2f8;padding:0 2px 0 1px}.gtable.heat .teamhdr.tight{padding:0;gap:3px;font-size:8.5px;height:16px;min-width:0;width:100%;overflow:hidden}.gtable.heat .teamhdr.tight .team-name{flex:1 1 auto;min-width:0}.gtable.heat .team-toggle{width:13px;height:13px;flex:0 0 13px}.gtable.heat .team-toggle .i{width:9px;height:9px}.gtable.heat .team-count{font-size:8px;padding:0 3px;line-height:1.25}.gtable.heat td.team-filler{background:#eef2f8;padding:0}.gtable.heat tr.person-row:hover td:not(.who):not(.today){background:#0f1b2d06}.gtable.heat tr.person-row:hover td.today{background:#1e56c817}.gtable.heat tr.person-row:hover td.who{background-color:#fff;background:#fff}.gtable.heat td.wknd{background:#f4f6fa;min-width:var(--st-wknd-w);max-width:var(--st-wknd-w);width:var(--st-wknd-w)}.gtable.heat td.wknd.today{background:#1e56c812}.gtable.heat td.gcell:not(.wknd){min-width:var(--st-day-w)}.gtable.heat td.gcell{cursor:pointer;height:18px;padding:0}.gtable.heat td.gcell:hover{background:color-mix(in srgb,var(--brand-soft, #e9f0fc) 55%,#fff)}.gtable.heat td.gcell.today:hover{background:#1e56c81c}.gcell-inner{position:relative;height:16px;display:flex;align-items:center;justify-content:center}.gcell-inner .gtrack{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:8px;background:#e8eef6;border-radius:1px;overflow:hidden}.gcell-inner.has-ex .gtrack{top:auto;bottom:1px;transform:none}.gcell-inner .gtrack.off{background:repeating-linear-gradient(-45deg,#f0f3f8,#f0f3f8 2px,#d5dde9 2px 4px);border:1px solid #d7e0ee}.gcell-inner .gtrack .blk{position:absolute;top:0;bottom:0;border-radius:1px;opacity:.95}.gex{position:absolute;top:0;left:0;right:0;z-index:1;font-size:7.5px;font-weight:700;line-height:9px;text-align:center;color:#b5541f;letter-spacing:-.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.wknd{background:var(--panel-2, #f4f7fc)}.st-day-modal{width:min(380px,100%)}.st-day-head{display:flex;align-items:flex-start;gap:10px}.st-day-sw{margin-top:4px;width:12px;height:12px;border-radius:3px}.st-day-modal .modal-h{padding:14px 16px 12px}.st-day-modal .modal-h h3{font-size:15px;font-weight:650;color:var(--ink, #0f1b2d);line-height:1.25}.st-day-modal .modal-h p{margin:3px 0 0;font-size:12.5px;color:var(--muted, #647087)}.st-day-body{padding:12px 16px 14px!important}.st-kv{display:flex;flex-direction:column;gap:0;border:1px solid var(--line-2, #ebf0f7);border-radius:10px;overflow:hidden;background:var(--panel, #fff)}.st-kv-row{display:grid;grid-template-columns:88px 1fr;gap:10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--line-2, #ebf0f7);min-height:36px}.st-kv-row:last-child{border-bottom:0}.st-kv-row:nth-child(2n){background:color-mix(in srgb,var(--panel-2, #f4f7fc) 55%,#fff)}.st-k{font-size:11px;font-weight:600;color:var(--muted, #647087)}.st-v{font-size:13px;font-weight:650;color:var(--ink, #0f1b2d);min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px}.st-v.is-off{color:var(--muted, #647087)}.st-v.mono{font-variant-numeric:tabular-nums;letter-spacing:-.02em}.st-tz{font-size:10.5px;font-weight:550;color:var(--muted, #647087);font-family:inherit;letter-spacing:0}.st-day-modal .modal-f{padding:12px 16px}.st-day-modal .st-v .pill{font-size:10.5px;padding:2px 8px}@media(max-width:800px){.vrow,.vrow.dense{grid-template-columns:1fr;height:auto;min-height:26px}.vrow.dense{gap:2px;padding:3px 0 4px}.vperson.inline{height:auto;min-height:20px}.axis-indent,.wh-controls-actions{margin-left:0}.day-scroll{max-height:min(100dvh - 200px,560px)}.gwrap{max-height:min(100dvh - 220px,520px)}.gtable.heat{--st-who-w: 128px}}.att-scopebar{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:0 0 16px}.att-schip{border:1px solid var(--line);background:#fff;border-radius:20px;padding:5px 13px;font-size:12.5px;color:var(--ink-2);cursor:pointer;white-space:nowrap;transition:border-color .15s,background .15s,color .15s}.att-schip:hover{border-color:var(--teal-line)}.att-schip.on{border-color:var(--teal);background:var(--teal-soft);color:var(--teal);font-weight:600}.att-punch-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;margin-bottom:14px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 1px #0f1b2d0a;transition:border-color .15s,background .15s,box-shadow .15s}.att-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.att-period-group{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.att-period-btn{border:0;border-right:1px solid var(--line);background:#fff;color:var(--muted);padding:8px 14px;font-size:11px;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:background .15s,color .15s}.att-period-btn:last-child{border-right:0}.att-period-btn:hover{background:var(--panel-2);color:var(--ink)}.att-period-btn.active{background:var(--teal);color:#fff}.att-view-toggle{display:flex;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.att-view-btn{width:38px;height:34px;border:0;border-right:1px solid var(--line);background:#fff;color:var(--muted);display:grid;place-items:center;cursor:pointer}.att-view-btn:last-child{border-right:0}.att-view-btn.active{background:var(--teal);color:#fff}.att-kpis{margin-bottom:14px}.att-kpi-status{font-size:15px;margin-top:9px}.att-kpi-status .pill{font-size:11px}.att-live-dot{width:7px;height:7px;border-radius:50%;background:var(--u-heal);box-shadow:0 0 0 3px #22c55e33;animation:attPulse 2s ease-in-out infinite}@keyframes attPulse{0%,to{opacity:1}50%{opacity:.55}}.att-today-panel{padding:10px 14px;margin-bottom:10px}.att-today-top h2{font-size:13px;font-weight:600;margin:0 0 2px}.att-today-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.att-today-total{font-size:11.5px;color:var(--muted)}.att-today-total strong{color:var(--ink)}.att-tl-wrap{display:flex;flex-direction:column;gap:5px;min-width:150px}.att-tl-wrap.big{min-width:260px;margin-top:6px;gap:3px}.att-tl-track{position:relative;height:8px;background:var(--panel-2);border-radius:4px;overflow:visible}.att-tl-track.big{height:10px;border-radius:5px}.att-tl-blk{position:absolute;top:0;bottom:0;background:var(--u-heal);border-radius:2px;cursor:default;z-index:1}.att-tl-blk:hover{filter:brightness(1.06);z-index:2}.att-tl-blk.active{background:var(--teal)}.att-tl-now{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--u-over);z-index:3;cursor:default}.att-tl-labels{display:flex;justify-content:space-between;font-size:9.5px;color:var(--faint)}.att-logs-panel{overflow:hidden}.att-my-logs-table{min-width:620px}.att-my-logs-table th,.att-my-logs-table td{padding:8px 12px}.att-my-logs-table th{padding-top:9px;padding-bottom:9px}.att-my-date-col{font-size:13px;font-weight:500;color:var(--ink);white-space:nowrap}.att-log-cards{display:flex;flex-direction:column;gap:10px;padding:12px 14px 16px}.att-log-card{border:1px solid var(--line-2);border-radius:12px;padding:14px 16px;background:#fff;transition:border-color .15s,box-shadow .15s}.att-log-card:hover{border-color:var(--line);box-shadow:0 2px 8px #0f1b2d0a}.att-log-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.att-log-card-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.att-log-card-title strong{font-size:13px;color:var(--ink)}.att-log-card-hours{font-size:13px;font-weight:700;color:var(--teal)}.att-log-card-meta{margin-top:8px}.att-log-sessions{font-size:11.5px;color:var(--ink-2)}.pill.sm{font-size:10px;padding:2px 8px}.att-inline-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px 16px;color:var(--muted);font-size:13px}.att-inline-loading.tall{min-height:220px}.att-calendar-wrap{padding:12px 16px 18px}.att-calendar-head,.att-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.att-calendar-head{margin-bottom:8px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:center}.att-calendar-week{margin-bottom:6px}.att-calendar-cell{min-height:72px;border:1px solid var(--line-2);border-radius:8px;padding:6px;background:#fff;display:flex;flex-direction:column;gap:2px}.att-calendar-cell.muted{opacity:.35;background:transparent;border-color:transparent}.att-calendar-cell.att-in{background:#f4fbf7;border-color:#b8e6cb}.att-calendar-cell.att-missing{background:#fff8eb;border-color:#fcd9a8}.att-calendar-cell.att-out:not(.muted){background:#fafbfc}.att-cal-day{font-size:12px;font-weight:700;color:var(--ink)}.att-cal-hours{font-size:11px;font-weight:700;color:var(--teal)}.att-cal-status{font-size:9px;font-weight:600;color:var(--muted);line-height:1.2}.att-calendar-panel{padding:0}.att-punch-card.is-in{border-color:#b8e6cb;background:linear-gradient(135deg,#f4fbf7,#fff 55%);box-shadow:0 8px 24px #22c55e14}.att-punch-card.is-out{border-color:var(--line);background:linear-gradient(135deg,#f8fafc,#fff 55%)}.att-punch-card.is-loading{border-color:var(--teal-line);background:var(--teal-soft);box-shadow:0 0 0 2px #00808014}.att-punch-left{display:flex;align-items:center;gap:14px;min-width:0}.att-punch-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--panel-2);color:var(--teal);flex:none}.att-punch-card.is-in .att-punch-icon{background:#e8f8ef;color:#1b7a43}.att-punch-card.is-loading .att-punch-icon{background:#fff}.att-punch-spin{width:18px;height:18px}.att-punch-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.att-punch-copy strong{font-size:15px;color:var(--ink)}.att-punch-copy span{font-size:12px;color:var(--muted)}.att-punch-btn{border:0;border-radius:10px;padding:10px 18px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;flex:none;transition:filter .15s,transform .1s}.att-punch-btn.check-in{background:var(--teal);color:#fff}.att-punch-btn.check-in:hover{filter:brightness(1.06)}.att-punch-btn.check-out{background:#fff;color:#b45309;border:1px solid #fcd9a8}.att-punch-btn.check-out:hover{background:#fff8eb}.att-punch-btn-loading{display:inline-flex;align-items:center;gap:8px;background:#ffffffb8;color:var(--teal);border:1px dashed var(--teal-line);cursor:default}.att-team-kpis{margin-bottom:14px}.att-team-kpis .panel.kpi .n{color:var(--teal)}.att-team-kpis .panel.kpi:nth-child(1) .n{color:var(--u-heal)}.att-team-kpis .panel.kpi:nth-child(3) .n{color:var(--u-over)}.att-scopemeta{display:flex;justify-content:flex-start;align-items:center;margin-bottom:10px;gap:12px;flex-wrap:wrap}.att-period-hint{font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.02em}.att-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 12px;margin-bottom:14px;border:1px solid var(--line);border-radius:10px;background:#fff;position:relative;z-index:20}.att-toolbar-team{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.att-team-multi{flex:none}.att-team-trigger{display:inline-flex;align-items:center;gap:8px;min-width:148px;max-width:220px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);cursor:pointer;transition:border-color .15s,background .15s}.att-team-trigger:hover{border-color:var(--teal-line);background:#fff}.att-team-trigger .tb-multi-label{font-size:12.5px;font-weight:600}.att-team-trigger svg.i{color:var(--teal);flex:none}.att-team-multi.open .att-team-trigger{border-color:var(--teal-line);background:var(--teal-soft);box-shadow:0 0 0 2px #00808014}.att-team-panel{left:0;right:auto}.att-team-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 6px 3px 9px;border-radius:14px;font-size:11px;font-weight:600;color:var(--teal);background:var(--teal-soft);border:1px solid var(--teal-line);white-space:nowrap;max-width:140px;overflow:hidden;text-overflow:ellipsis}.att-team-tag-clear{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:0;border-radius:50%;background:#ffffffbf;color:var(--teal);font-size:13px;line-height:1;cursor:pointer;flex:none}.att-team-tag-clear:hover{background:#fff}.att-toolbar-divider{width:1px;height:22px;background:var(--line);flex:none}.att-status-seg{flex:1;min-width:0;flex-wrap:wrap}.att-status-seg button{font-size:12px;padding:6px 12px;white-space:nowrap}.att-status-seg button.active{color:var(--teal)}.att-register-search{background:var(--panel)}.att-register-search .finput{flex:1}.att-register-panel{overflow:hidden;margin-bottom:14px}.att-register-scroll{overflow-x:auto}.att-register-table{min-width:760px}.att-register-table th{color:#0a6f78;border-bottom-color:var(--teal-line)}.att-register-row{cursor:pointer}.att-register-row--expanded{background:var(--panel);box-shadow:inset 3px 0 0 var(--teal)}.att-register-row--expanded td{border-bottom-color:transparent}.att-expand-chevron{display:inline-block;width:14px;flex:none;font-size:14px;line-height:1;color:var(--faint);transition:transform .15s,color .15s}.att-expand-chevron.expanded{transform:rotate(90deg);color:var(--teal)}.att-expand-row>td{padding:0!important;border-top:0;background:var(--panel);box-shadow:inset 3px 0 0 var(--teal)}.att-expand-panel{padding:8px 12px 10px 36px;border-top:1px solid var(--line-2);background:var(--panel);animation:attExpandIn .18s ease}@keyframes attExpandIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.att-expand-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:4px;min-height:0}.att-expand-head strong{font-size:12px;font-weight:600;color:var(--ink)}.att-expand-period{font-size:11px;color:var(--muted);white-space:nowrap}.att-expand-period .mono{color:var(--teal);font-weight:700}.att-expand-days{width:100%;min-width:0}.att-expand-days th,.att-expand-days td{padding:4px 8px;vertical-align:middle}.att-expand-day{border-top:1px solid var(--line-2)}.att-expand-day:first-child{border-top:0}.att-expand-day--current{box-shadow:inset 0 0 0 1px var(--teal-line);background:var(--panel)}.att-expand-date{font-size:11.5px;font-weight:500;color:var(--ink);white-space:nowrap;width:1%}.att-expand-status{width:1%;white-space:nowrap}.att-expand-status .pill.sm{font-size:9.5px;padding:1px 6px}.att-expand-days .att-timeline-col{min-width:120px}.att-expand-days .att-sessions-col{font-size:10.5px;max-width:220px}.att-expand-days .att-total-col{font-size:11.5px;width:1%;white-space:nowrap}.att-expand-more{border:0;background:transparent;padding:2px 0 0;font-size:11px;font-weight:600;color:var(--teal);cursor:pointer}.att-expand-more:hover{text-decoration:underline}.att-expand-empty{padding:6px 0;font-size:11.5px;color:var(--muted)}.att-expand-loading{display:flex;align-items:center;gap:8px;padding:8px 0;font-size:11.5px;color:var(--muted)}.att-register-spin{width:14px;height:14px}.att-emp-cell{display:flex;align-items:center;gap:9px}.att-emp-cell .avatar{background:var(--teal-soft);color:var(--teal)}.att-emp-name{font-weight:500;color:var(--ink)}.att-muted{color:var(--faint)}.att-timeline-col{min-width:150px}.att-sessions-col{font-size:11.5px;color:var(--ink-2);max-width:200px}.att-sessions-summary{display:inline-flex;align-items:center;gap:5px;max-width:100%;min-width:0}.att-sessions-live{flex-shrink:0;width:6px;height:6px}.att-sessions-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.att-total-col{font-size:13px;font-weight:600;white-space:nowrap;color:var(--teal)}.att-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:36px;text-align:center;color:var(--muted)}.att-loading p{margin:0}.att-empty{padding:28px}@media(max-width:900px){.att-kpis{grid-template-columns:repeat(2,1fr)}.att-punch-card{flex-direction:column;align-items:stretch}.att-punch-btn,.att-punch-btn-loading{width:100%;justify-content:center}.att-filter-bar{flex-direction:column;align-items:stretch}.att-toolbar{flex-direction:column;align-items:stretch;gap:10px}.att-toolbar-divider{display:none}.att-status-seg{width:100%}.att-period-group{overflow-x:auto;flex-wrap:nowrap}.att-view-toggle{align-self:flex-end}.att-log-card-head{flex-direction:column;align-items:flex-start}}@media(max-width:600px){.att-kpis{grid-template-columns:1fr}}app-my-timesheet .toolbar .eyebrow{color:var(--teal)}app-my-timesheet .toolbar .acts{margin-left:auto;justify-content:flex-end}app-my-timesheet .btn:not(.ghost):not(.danger){border-color:var(--teal);background:var(--teal);color:#fff}app-my-timesheet .btn.ghost:hover,app-my-timesheet .btn.ghost.active{border-color:var(--teal);color:var(--teal);filter:none}app-my-timesheet .seg-btn:hover:not(.active){color:var(--teal)}app-my-timesheet .seg-btn.active{background:var(--teal);color:#fff}app-my-timesheet .notice{background:var(--teal-soft);border-color:var(--teal-line);color:#0a6f78}app-my-timesheet .pnav button:hover:not(:disabled){border-color:var(--teal);color:var(--teal)}app-my-timesheet .finput:focus,app-my-timesheet .tsi:focus{outline-color:var(--teal-line);border-color:var(--teal)}app-my-timesheet .ts .tsk-link:hover,app-my-timesheet .ts .tsk-link:hover small{color:var(--teal)}app-my-timesheet .ts-week-grid-wrap .tscell input:focus{outline-color:var(--teal-line);border-color:var(--teal)}app-my-timesheet .checkline input{accent-color:var(--teal)}.ts-notice{margin-bottom:8px}.ts-ready{display:flex;flex-direction:column;gap:0}.ts-ready .tb-week-banner{margin-bottom:8px;padding:8px 12px;gap:8px}.ts-ready .tb-week-nav{gap:8px}.ts-ready .tb-week-text{font-size:14px}.ts-ready .tb-week-actions{gap:6px}.ts-ready .tb-summary-strip{gap:6px;margin-bottom:8px}.ts-ready .tb-stat{padding:7px 10px}.ts-ready .tb-stat .l{margin-bottom:2px;font-size:10px}.ts-ready .tb-stat .n{font-size:16px}.ts-status-inline{flex:none;font-size:10px;padding:2px 8px}.ts-view-seg{flex:none}.ts-week-summary-btn{display:inline-flex;align-items:center;gap:6px}.ts-notes-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--teal);color:#fff;font-size:10.5px;font-weight:700;line-height:1}.ts-optional-mark{margin-left:6px;font-size:11px;font-weight:500;color:var(--muted);text-transform:none;letter-spacing:0}.ts-day-task-note-lbl{display:block;margin:0 0 4px;font-size:12px;font-weight:600;color:var(--text-2)}.ts-summary-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.ts-summary-strip .tb-stat .n small{font-size:12px;font-weight:500;color:var(--muted);margin-left:1px}@media(max-width:760px){.ts-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.ts-day-stat .n{font-size:15px}.ts-panel{overflow:hidden}.ts-panel .panel-h{padding:10px 14px;background:linear-gradient(180deg,var(--panel) 0%,color-mix(in srgb,var(--panel-2) 35%,var(--panel)) 100%)}.ts-day-strip{display:grid;grid-template-columns:repeat(7,1fr);width:100%;gap:6px;padding:8px 10px;background:var(--panel-2);border-bottom:1px solid var(--line-2);box-sizing:border-box}.ts-day-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;min-width:0;margin:0;padding:7px 4px!important;border-radius:10px!important;line-height:1.15;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease}.ts-day-chip:hover:not(.active){border-color:var(--teal-line);background:color-mix(in srgb,var(--teal-soft) 40%,var(--panel));color:var(--ink)}.ts-day-chip.active{background:var(--teal-soft);color:#0a6f78;border-color:var(--teal);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal) 25%,transparent)}.ts-day-chip-lbl{font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.ts-day-chip-meta{font-size:10.5px;font-weight:600;white-space:nowrap;opacity:.92}.ts-day-chip.active .ts-day-chip-meta{opacity:1}.ts-day-chip-sep{color:var(--muted);margin:0 1px}.ts-day-chip.active .ts-day-chip-sep{color:color-mix(in srgb,#0a6f78 55%,var(--muted))}.ts-day-chip.ts-day-has-hours:not(.active) .ts-day-chip-lbl{color:var(--ink)}.ts-day-chip.ts-day-today:not(.active){border-color:color-mix(in srgb,var(--teal) 50%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal) 14%,transparent)}@media(max-width:560px){.ts-day-strip{gap:4px;padding:6px 8px}.ts-day-chip{padding:6px 2px!important}.ts-day-chip-lbl{font-size:10.5px}.ts-day-chip-meta{font-size:9.5px}}.ts-day-view{padding:10px 12px 12px}.ts-day-view-h{margin-bottom:8px}.ts-day-view-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.ts-day-view-h h3{margin:0;display:inline-flex;align-items:center;gap:6px;font-family:Space Grotesk,sans-serif;font-size:14.5px;font-weight:600;color:var(--ink)}.ts-day-today-pill{font-size:10px;padding:2px 6px}.ts-day-stats{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.ts-stat-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:none;font-size:11.5px;line-height:1.2}.ts-stat-pill-l{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.ts-stat-pill-v{font-weight:700;color:var(--ink)}.ts-stat-pill.warn{border-color:color-mix(in srgb,var(--u-over) 35%,var(--line));background:color-mix(in srgb,var(--u-over) 8%,var(--panel))}.ts-stat-more{padding:4px 10px!important;font-size:11px!important}.ts-day-notes-row{margin-bottom:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-2)}.ts-day-notes-lbl{margin-bottom:4px;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.ts-day-notes-field{display:flex;align-items:center;gap:6px}.ts-day-note-input{flex:1 1 auto;min-width:0;margin:0;padding:6px 10px;font-size:13px}.ts-day-mic{flex:none;width:28px;height:28px;padding:0;color:var(--muted)}.ts-day-mic.filled{color:#0a6f78;border-color:var(--teal-line);background:var(--teal-soft)}.ts-task-mic-wrap{position:relative;display:inline-flex;flex:none}.ts-day-mic.listening,.ts-task-mic.listening,.iconbtn.listening{color:#fff;background:var(--teal);border-color:var(--teal);box-shadow:0 0 color-mix(in srgb,var(--teal) 35%,transparent);animation:tsMicListenPulse 1.4s ease-in-out infinite}.ts-day-mic.listening:hover:not(:disabled),.ts-task-mic.listening:hover:not(:disabled),.iconbtn.listening:hover:not(:disabled){color:#fff;background:#0a6f78;border-color:#0a6f78;filter:none}.ts-day-mic.listening.filled{color:#fff;background:var(--teal);border-color:var(--teal)}@keyframes tsMicListenPulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--teal) 38%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--teal) 0%,transparent)}}@media(prefers-reduced-motion:reduce){.ts-day-mic.listening,.ts-task-mic.listening,.iconbtn.listening{animation:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 22%,transparent)}}.ts-voice-hint{margin:6px 0 0;font-size:12px;color:var(--muted)}.ts-voice-hint.live{color:#0a6f78;font-weight:600}.ts-empty{padding:28px 20px!important;text-align:center}.ts-empty-hint{font-size:12px;margin-top:6px;color:var(--muted)}.ts-day-none{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px dashed var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--panel-2) 70%,var(--panel));font-size:12px;color:var(--muted)}.ts-later-planned{margin-top:14px;display:flex;flex-direction:column;gap:8px}.ts-later-planned-h{display:flex;flex-direction:column;gap:2px}.ts-later-planned-h strong{font-size:13px}.ts-later-planned-h span{font-size:11px;color:var(--muted)}.ts-later-row{background:color-mix(in srgb,var(--panel-2) 55%,var(--panel))}.ts-day-task-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel);box-shadow:var(--shadow)}.ts-day-task{border-bottom:1px solid var(--line-2);transition:background .12s ease}.ts-day-task:last-child{border-bottom:0}.ts-day-task:hover:not(.off){background:color-mix(in srgb,var(--teal-soft) 35%,var(--panel))}.ts-day-task.has-note{background:color-mix(in srgb,var(--teal-soft) 18%,var(--panel))}.ts-day-task.off{opacity:.52}.ts-day-task-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:6px 10px}.ts-day-task-link{flex:1 1 auto;min-width:0;text-decoration:none;color:inherit;transition:color .12s ease}.ts-day-task-link:hover{color:var(--teal)}.ts-day-task-link:hover small{color:color-mix(in srgb,var(--teal) 65%,var(--muted))}.ts-day-task-name{display:block;font-size:13px;font-weight:600;line-height:1.25;color:var(--ink)}.ts-day-task-link small{display:block;font-size:11px;font-weight:400;color:var(--muted);line-height:1.2;margin-top:1px}.ts-day-task-acts{display:flex;align-items:center;gap:6px;flex:none}.ts-day-task-acts .plan{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;font-weight:600;color:var(--muted);white-space:nowrap;padding:2px 6px;border-radius:4px;background:var(--panel-2)}.ts-task-sub{border-left:2px solid var(--teal-line)}.ts-day-task.ts-task-sub{padding-left:8px;background:color-mix(in srgb,var(--panel-2) 40%,var(--panel))}.ts-day-task.ts-task-parent .ts-day-task-name{font-weight:600}.ts-sub-mark{margin-right:4px;color:var(--muted)}.ts-rollup{font-size:10.5px;font-weight:600;white-space:nowrap;padding:2px 6px;border-radius:4px;color:var(--teal, var(--ink-2));background:var(--teal-soft, var(--panel-2));border:1px solid var(--teal-line, var(--line))}app-my-timesheet .ts tr.ts-task-sub .tcol{background:color-mix(in srgb,var(--panel-2) 40%,var(--panel))}.tsi{box-sizing:border-box;flex:none;width:50px;height:30px;margin:0;padding:0 4px;border:1px solid var(--line);border-radius:7px;background:var(--panel);font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;font-weight:600;text-align:center;line-height:1;appearance:textfield;box-shadow:inset 0 1px 2px #0f1b2d0a;transition:border-color .12s ease,box-shadow .12s ease}.tsi::-webkit-outer-spin-button,.tsi::-webkit-inner-spin-button{appearance:none;margin:0}.tsi:focus{outline:2px solid var(--teal-line);border-color:var(--teal);box-shadow:none}.tsi.off{background:var(--panel-2);color:var(--faint);border-color:var(--line-2);box-shadow:none}.tsi::placeholder{color:var(--faint);font-size:12px;font-weight:500}.ts-day-task-note{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:5px 10px 8px;border-top:1px dashed var(--line-2);background:color-mix(in srgb,var(--panel-2) 55%,var(--panel))}.ts-day-task-note-input{flex:1 1 auto;min-width:0;margin:0;padding:5px 8px;font-size:12px}.ts-week-grid-wrap{overflow-x:auto;padding:8px 12px 10px;background:var(--panel)}app-my-timesheet .ts-week-grid-wrap .ts th{padding:8px 6px;font-size:11px;background:var(--panel-2)}app-my-timesheet .ts-week-grid-wrap .ts td{padding:6px}app-my-timesheet .ts-week-grid-wrap .tscell{flex-direction:row;align-items:center;justify-content:center;gap:4px}app-my-timesheet .ts-week-grid-wrap .tscell .tsi{width:50px;height:30px}app-my-timesheet .ts-week-grid-wrap .tscell .plan{font-size:10.5px}app-my-timesheet .ts-week-grid-wrap .ts tfoot td{padding-top:10px;font-size:12.5px;background:color-mix(in srgb,var(--panel-2) 50%,var(--panel))}app-my-timesheet .ts .ts-col-selected{background:color-mix(in srgb,var(--teal-soft) 70%,var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal-line) 50%,transparent)}.ts-foot-plan{color:var(--muted)}.ts-up-section{border-top:1px solid var(--line-2);padding:10px 12px 12px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-2) 80%,var(--panel)) 0%,var(--panel-2) 100%)}.ts-up-section-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.ts-up-section-h h3{margin:0;display:inline-flex;align-items:baseline;gap:6px;font-family:Space Grotesk,sans-serif;font-size:13.5px;font-weight:600;color:var(--ink)}.ts-up-day-total{font-size:12px;font-weight:700;color:var(--ink-2)}.ts-up-section-meta{display:flex;align-items:center;gap:6px;flex:none}.ts-up-none{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--panel);font-size:12px;color:var(--muted)}.ts-up-grid-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.ts-up-card{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);cursor:pointer;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.ts-up-card:hover:not(.readonly){border-color:color-mix(in srgb,var(--u-tight) 40%,var(--line));background:color-mix(in srgb,var(--u-tight-bg) 30%,var(--panel));box-shadow:0 2px 8px #0f1b2d0f}.ts-up-card.readonly{cursor:default}.ts-up-card-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;flex:1 1 auto;min-width:0}.ts-up-card-title{font-size:13px;font-weight:650;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.ts-up-card-took{font-size:11px;font-weight:600;color:#0a6f78;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.ts-up-card-meta{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.ts-up-card-hrs{flex:none;font-size:12.5px;font-weight:700;color:var(--ink-2);white-space:nowrap;padding:3px 8px;border-radius:6px;background:var(--panel-2)}.ts-up-del{flex:none;width:28px;height:28px;padding:0;color:var(--muted)}.ts-up-del:hover:not(:disabled){color:var(--u-over);border-color:color-mix(in srgb,var(--u-over) 35%,var(--line));background:var(--u-over-bg)}@media(max-width:720px){.ts-up-grid-list{grid-template-columns:1fr}}.ts-action-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;padding:8px 12px;border-top:1px solid var(--line);background:var(--panel);box-shadow:0 -2px 10px #0f1b2d0a;position:sticky;bottom:0;z-index:5}.ts-action-bar-left{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.ts-status-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:16px;border:1px solid var(--line);background:var(--panel-2);font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;flex:none}.ts-status-pill.submitted{border-color:color-mix(in srgb,var(--u-heal) 40%,var(--line));background:var(--u-heal-bg);color:var(--u-heal)}.ts-action-bar-meta{font-size:12px;color:var(--muted);line-height:1.3}.ts-action-bar-sep{margin:0 3px;color:var(--line)}.ts-action-bar-acts{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:none}.ts-action-primary{min-width:108px;font-weight:600;padding:7px 18px!important;font-size:13px!important}.ts-up-modal{width:min(520px,100%)}.ts-st-split-hint{margin:4px 0 0;font-size:12px;color:var(--muted);line-height:1.4}.ts-week-task-cell{display:flex;align-items:flex-start;gap:6px}.ts-week-task-cell .tsk-link{flex:1 1 auto;min-width:0}.ts-week-task-cell .ts-week-subtask{flex:none;margin-top:2px}.ts-week-task-cell .ts-week-subtask-del:hover,.ts-day-subtask-del:hover{color:var(--danger, #b4462c)}.ts-up-modal-spacer{flex:1 1 auto}.ts-up-modal .modal-f{justify-content:flex-start}.ts-up-modal-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px}.ts-up-modal-h h3{font-size:15px}.ts-up-modal-h p{margin:3px 0 0;font-size:12px}.ts-up-modal-b{padding:14px 16px}.ts-up-modal-b .frow{margin-bottom:10px}.ts-up-modal-b .frow:last-child{margin-bottom:0}.ts-up-modal-b .flab{margin-bottom:4px}.ts-up-grid{gap:10px 12px}.ts-up-hint{margin:0 0 6px;font-size:11.5px;color:var(--muted);line-height:1.35}.ts-up-empty{padding:8px 10px;border:1px dashed var(--line);border-radius:var(--radius);font-size:12px;color:var(--muted);background:var(--panel-2)}.ts-up-task-list{max-height:148px;overflow-x:hidden;overflow-y:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.ts-up-task{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;padding:7px 10px;border-bottom:1px solid var(--line-2);cursor:pointer;margin:0;min-width:0}.ts-up-task:last-child{border-bottom:0}.ts-up-task:hover,.ts-up-task.checked{background:var(--teal-soft)}.ts-up-task input{flex:0 0 auto;width:14px;height:14px;margin:0}.ts-up-task-name{flex:1 1 auto;min-width:0;font-size:12.5px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts-up-prio{flex:0 0 auto;width:22px;height:22px;padding:0!important;border-radius:50%;border:1px solid var(--line);display:inline-grid;place-items:center;font-size:11px;font-weight:700;line-height:1}.ts-notes-panel{width:min(640px,100%)}.ts-notes-panel-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.ts-notes-panel-b{display:flex;flex-direction:column;gap:14px}.ts-notes-sec-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.ts-notes-sec-hint{margin:0;font-size:11.5px;color:var(--muted)}.ts-del-modal-h{display:flex;justify-content:space-between;align-items:center}.ts-del-copy{margin:0;font-size:13.5px;line-height:1.45;color:var(--ink-2)}@media(max-width:560px){.ts-day-task-row{flex-wrap:wrap;min-height:0;padding:6px 10px}.ts-day-task-acts{margin-left:auto}.ts-action-bar{flex-direction:column;align-items:stretch}.ts-action-bar-acts{justify-content:stretch}.ts-action-bar-acts .btn{flex:1 1 auto}.ts-ready .tb-week-banner{flex-direction:column;align-items:stretch}.ts-ready .tb-week-actions{justify-content:space-between}}.fc-with-agent{display:flex;align-items:stretch;gap:12px;min-width:0}.fc-with-agent>.fc-main{flex:1 1 auto;min-width:0}app-schedule-agent-panel{display:contents}.sa-panel{flex:0 0 440px;width:440px;max-width:100%;display:flex;flex-direction:column;max-height:760px;background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.sa-panel.sa-wide{flex:0 0 720px;width:720px}.sa-panel :focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-radius:6px}.sa-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.sa-head{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--panel-2)}.sa-head-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.sa-head-text{min-width:0}.sa-head-text h3{display:flex;align-items:center;gap:6px;margin:0;font-size:14px;font-weight:650;color:var(--ink)}.sa-head-text p{margin:2px 0 0;font-size:11px;color:var(--muted)}.sa-body{flex:1 1 auto;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:14px;scroll-behavior:smooth}.sa-disc{display:flex;align-items:center;gap:7px;width:100%;padding:7px 9px;text-align:left;font-size:12.5px;font-weight:600;color:var(--ink-2);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;cursor:pointer}.sa-disc:hover{color:var(--brand);border-color:var(--brand-line)}.sa-disc .i{flex:0 0 auto;color:var(--muted);transition:transform .15s ease}.sa-disc-open .i{transform:rotate(90deg)}.sa-disc-label{flex:1 1 auto;min-width:0}.sa-disc-meta{flex:0 0 auto;font-size:11px;font-weight:650;font-variant-numeric:tabular-nums;color:var(--muted)}.sa-disc-warn{color:var(--danger, #b4462c);border-color:color-mix(in srgb,var(--danger, #b4462c) 30%,transparent);background:color-mix(in srgb,var(--danger, #b4462c) 7%,var(--panel))}.sa-disc-warn .i,.sa-disc-warn .sa-disc-meta{color:inherit}.sa-disc-body{margin-top:6px}.sa-intro{display:flex;flex-direction:column;gap:18px}.sa-section{display:flex;flex-direction:column;gap:8px}.sa-section-label{margin:0;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.sa-muted{margin:0;font-size:12.5px;color:var(--muted)}.sa-actions-list{display:flex;flex-direction:column;gap:6px}.sa-action{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:9px;cursor:pointer}.sa-action:hover{border-color:var(--brand-line);background:var(--brand-soft)}.sa-action .i{flex:0 0 auto;color:var(--muted)}.sa-action:hover .i{color:var(--brand)}.sa-action-text{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.sa-action-label{font-size:13px;font-weight:650;color:var(--ink)}.sa-action-hint{font-size:11.5px;line-height:1.35;color:var(--muted)}.sa-quick{display:flex;flex-wrap:wrap;gap:6px}.sa-chip{padding:6px 11px;font-size:12px;font-weight:600;color:var(--ink-2);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;cursor:pointer}.sa-chip:hover{color:var(--brand);border-color:var(--brand-line);background:var(--brand-soft)}.sa-issues{display:flex;flex-direction:column;gap:6px}.sa-issue{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px 9px 0;text-align:left;color:var(--ink-2);background:var(--panel);border:1px solid var(--line);border-radius:9px;cursor:pointer;overflow:hidden}.sa-issue:hover{border-color:var(--brand-line);background:var(--brand-soft)}.sa-issue .i{flex:0 0 auto;color:var(--muted)}.sa-issue-bar{flex:0 0 auto;align-self:stretch;width:3px;background:var(--brand-line)}.sa-issue.sa-sev-hard .sa-issue-bar{background:var(--danger, #b4462c)}.sa-issue-text{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.sa-issue-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.sa-issue-top strong{font-size:13px;font-weight:650;color:var(--ink)}.sa-issue-count{flex:0 0 auto;font-size:11px;font-weight:650;color:var(--muted)}.sa-issue-summary{font-size:12.5px;line-height:1.4;color:var(--ink-2)}.sa-issue-cta{margin-top:2px;font-size:11.5px;font-weight:650;color:var(--brand)}.sa-convos{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.sa-convo{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 10px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:8px;cursor:pointer}.sa-convo:hover{border-color:var(--brand-line);background:var(--brand-soft)}.sa-convo-preview{font-size:12.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-convo-meta{font-size:11px;color:var(--muted)}.sa-chat{display:flex;flex-direction:column;gap:12px}.sa-turn{display:flex;flex-direction:column}.sa-turn-text{margin:0;font-size:13px;line-height:1.55;color:var(--ink)}p.sa-turn-text{white-space:pre-wrap}.sa-turn-text b{font-weight:650}.sa-turn-text .iq-h2,.sa-turn-text .iq-h3{margin:6px 0 2px;font-weight:650;color:var(--ink)}.sa-turn-text .iq-li{padding-left:13px;text-indent:-13px}.sa-turn-text .iq-li:before{content:"\b7  ";color:var(--muted)}.sa-turn-user{align-items:flex-end}.sa-turn-user .sa-turn-text{max-width:88%;padding:8px 11px;color:var(--ink-2);background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:10px 10px 2px}.sa-thinking{display:flex;flex-direction:column;gap:4px}.sa-working{display:flex;align-items:center;gap:7px;margin:0;font-size:12.5px;color:var(--muted)}.sa-progress{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.sa-progress li{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.sa-progress-active{color:var(--ink-2);font-weight:600}.sa-proposal{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--brand-line);border-radius:10px;background:var(--panel);box-shadow:0 1px 2px #0f1b2d0d}.sa-prop-head{display:flex;flex-direction:column;gap:5px}.sa-prop-tags{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.sa-tag{padding:2px 8px;font-size:11px;font-weight:650;letter-spacing:.02em;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:999px}.sa-tag-op{color:var(--brand);background:var(--brand-soft);border-color:var(--brand-line)}.sa-prop-title{margin:0;font-size:14.5px;font-weight:650;line-height:1.35;color:var(--ink)}.sa-prop-meta{margin:0;font-size:11px;line-height:1.45;color:var(--muted)}.sa-impact{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px}.sa-tile{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2)}.sa-tile-label{font-size:11px;font-weight:650;letter-spacing:.02em;color:var(--muted)}.sa-tile-values{display:flex;align-items:baseline;gap:5px;font-size:13px}.sa-tile-base,.sa-tile-arrow{color:var(--muted)}.sa-tile-now{font-size:15px;font-weight:650;color:var(--ink)}.sa-tile-delta{font-size:11px;font-weight:650;color:var(--muted)}.sa-tile-better{border-color:color-mix(in srgb,var(--ok, #2f7d55) 32%,transparent);background:color-mix(in srgb,var(--ok, #2f7d55) 8%,var(--panel))}.sa-tile-better .sa-tile-now,.sa-tile-better .sa-tile-delta{color:var(--ok, #2f7d55)}.sa-tile-worse{border-color:color-mix(in srgb,var(--danger, #b4462c) 32%,transparent);background:color-mix(in srgb,var(--danger, #b4462c) 8%,var(--panel))}.sa-tile-worse .sa-tile-now,.sa-tile-worse .sa-tile-delta{color:var(--danger, #b4462c)}.sa-rationale{margin:0 0 6px;font-size:12.5px;line-height:1.5;color:var(--ink-2)}.sa-rationale:last-child{margin-bottom:0}.sa-kicker{font-weight:650;color:var(--muted);margin-right:4px}.sa-metrics{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--panel)}.sa-metrics-h,.sa-metrics-row{display:grid;grid-template-columns:1.5fr .8fr .8fr;gap:6px;padding:6px 9px;font-size:12px}.sa-metrics-h{font-weight:650;font-size:11px;color:var(--muted);background:var(--panel-2);border-bottom:1px solid var(--line)}.sa-metrics-row{color:var(--ink-2);border-top:1px solid var(--line);font-variant-numeric:tabular-nums}.sa-metrics-row:first-of-type{border-top:0}.sa-plain,.sa-risks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.sa-plain li,.sa-risks li{padding:7px 9px;font-size:12.5px;line-height:1.45;border-radius:7px;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2)}.sa-risks li.sa-sev-hard{color:var(--danger, #b4462c);background:color-mix(in srgb,var(--danger, #b4462c) 8%,var(--panel));border-color:color-mix(in srgb,var(--danger, #b4462c) 30%,transparent)}.sa-warnings{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.sa-warnings li{display:flex;align-items:flex-start;gap:7px;padding:7px 9px;font-size:12.5px;line-height:1.45;border-radius:7px;color:var(--ink-2);background:var(--panel-2);border:1px solid var(--line)}.sa-warnings li.sa-warn-hard{color:var(--danger, #b4462c);background:color-mix(in srgb,var(--danger, #b4462c) 8%,var(--panel));border-color:color-mix(in srgb,var(--danger, #b4462c) 30%,transparent)}.sa-warnings .i{flex:0 0 auto;margin-top:2px}.sa-changes{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2)}.sa-changes-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.sa-changes-count{font-size:12px;font-weight:650;color:var(--ink)}.sa-link{display:inline-flex;align-items:center;gap:5px;padding:0;font-size:11.5px;font-weight:650;color:var(--brand);background:none;border:0;cursor:pointer}.sa-link:hover{text-decoration:underline}.sa-showall{align-self:flex-start;padding:5px 10px;font-size:11.5px;font-weight:650;color:var(--ink-2);background:var(--panel);border:1px solid var(--line);border-radius:7px;cursor:pointer}.sa-showall:hover{color:var(--brand);border-color:var(--brand-line)}.sa-group{padding:8px 9px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.sa-group+.sa-group{margin-top:-2px}.sa-group-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.sa-group-name{font-size:12.5px;font-weight:650;color:var(--ink)}.sa-group-net{font-size:12px;font-weight:650;color:var(--muted)}.sa-diff{width:100%;border-collapse:collapse;table-layout:fixed}.sa-diff td{padding:4px;font-size:12px;line-height:1.35;border-top:1px solid var(--line);vertical-align:middle}.sa-diff tr:first-child td{border-top:0}.sa-diff-task{width:43%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-diff-taskname{color:var(--ink-2)}.sa-diff-when{width:27%;color:var(--muted);white-space:nowrap}.sa-diff-hours{width:30%;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.sa-before{color:var(--muted);text-decoration:line-through}.sa-arrow{margin:0 3px;color:var(--muted)}.sa-after{font-weight:650;color:var(--ink)}.sa-up{color:var(--danger, #b4462c)}.sa-down{color:var(--ok, #2f7d55)}.sa-stale{padding:9px 10px;font-size:12.5px;line-height:1.45;border-radius:8px;color:var(--danger, #b4462c);background:color-mix(in srgb,var(--danger, #b4462c) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--danger, #b4462c) 30%,transparent)}.sa-stale p{display:flex;align-items:center;gap:6px;margin:0 0 5px;color:inherit;font-weight:600}.sa-stale ul{margin:0;padding-left:18px}.sa-actions{position:sticky;bottom:0;z-index:1;display:flex;gap:7px;margin:2px -12px -12px;padding:10px 12px;background:var(--panel);border-top:1px solid var(--line);border-radius:0 0 9px 9px}.modal.sa-review{width:min(1040px,100%)}.sa-review-h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sa-review-table{width:100%;border-collapse:collapse;font-size:12.5px}.sa-review-table th{position:sticky;top:0;padding:8px 10px;text-align:left;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--panel);border-bottom:1px solid var(--line)}.sa-review-table td{padding:8px 10px;color:var(--ink-2);border-bottom:1px solid var(--line);vertical-align:middle}.sa-review-table tbody tr:hover td{background:var(--panel-2)}.sa-review-table .sa-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.sa-review-when{color:var(--muted);white-space:nowrap}.sa-compose{flex:0 0 auto;padding:10px 12px;border-top:1px solid var(--line);background:var(--panel-2)}.sa-input{width:100%;resize:vertical;min-height:50px;font-size:13px;line-height:1.45}.sa-compose-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:7px}.sa-mic.sa-mic-live{color:var(--danger, #b4462c);background:color-mix(in srgb,var(--danger, #b4462c) 12%,transparent)}@media(max-width:1200px){.fc-with-agent{flex-direction:column}.sa-panel,.sa-panel.sa-wide{flex:1 1 auto;width:100%;max-height:560px}.sa-panel.sa-wide{max-height:720px}}@media(prefers-reduced-motion:reduce){.sa-body{scroll-behavior:auto}.sa-disc .i{transition:none}}
