@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap";@media (prefers-color-scheme:dark){.wmde-markdown,.wmde-markdown-var{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-prettylights-syntax-comment:#8b949e;--color-prettylights-syntax-constant:#79c0ff;--color-prettylights-syntax-entity:#d2a8ff;--color-prettylights-syntax-storage-modifier-import:#c9d1d9;--color-prettylights-syntax-entity-tag:#7ee787;--color-prettylights-syntax-keyword:#ff7b72;--color-prettylights-syntax-string:#a5d6ff;--color-prettylights-syntax-variable:#ffa657;--color-prettylights-syntax-brackethighlighter-unmatched:#f85149;--color-prettylights-syntax-invalid-illegal-text:#f0f6fc;--color-prettylights-syntax-invalid-illegal-bg:#8e1519;--color-prettylights-syntax-carriage-return-text:#f0f6fc;--color-prettylights-syntax-carriage-return-bg:#b62324;--color-prettylights-syntax-string-regexp:#7ee787;--color-prettylights-syntax-markup-list:#f2cc60;--color-prettylights-syntax-markup-heading:#1f6feb;--color-prettylights-syntax-markup-italic:#c9d1d9;--color-prettylights-syntax-markup-bold:#c9d1d9;--color-prettylights-syntax-markup-deleted-text:#ffdcd7;--color-prettylights-syntax-markup-deleted-bg:#67060c;--color-prettylights-syntax-markup-inserted-text:#aff5b4;--color-prettylights-syntax-markup-inserted-bg:#033a16;--color-prettylights-syntax-markup-changed-text:#ffdfb6;--color-prettylights-syntax-markup-changed-bg:#5a1e02;--color-prettylights-syntax-markup-ignored-text:#c9d1d9;--color-prettylights-syntax-markup-ignored-bg:#1158c7;--color-prettylights-syntax-meta-diff-range:#d2a8ff;--color-prettylights-syntax-brackethighlighter-angle:#8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark:#484f58;--color-prettylights-syntax-constant-other-reference-link:#a5d6ff;--color-fg-default:#c9d1d9;--color-fg-muted:#8b949e;--color-fg-subtle:#484f58;--color-canvas-default:#0d1117;--color-canvas-subtle:#161b22;--color-border-default:#30363d;--color-border-muted:#21262d;--color-neutral-muted:#6e768166;--color-accent-fg:#58a6ff;--color-accent-emphasis:#1f6feb;--color-attention-subtle:#bb800926;--color-danger-fg:#f85149;--color-danger-emphasis:#da3633;--color-attention-fg:#d29922;--color-attention-emphasis:#9e6a03;--color-done-fg:#a371f7;--color-done-emphasis:#8957e5;--color-success-fg:#3fb950;--color-success-emphasis:#238636;--color-copied-active-bg:#2e9b33}}@media (prefers-color-scheme:light){.wmde-markdown,.wmde-markdown-var{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-prettylights-syntax-comment:#6e7781;--color-prettylights-syntax-constant:#0550ae;--color-prettylights-syntax-entity:#8250df;--color-prettylights-syntax-storage-modifier-import:#24292f;--color-prettylights-syntax-entity-tag:#116329;--color-prettylights-syntax-keyword:#cf222e;--color-prettylights-syntax-string:#0a3069;--color-prettylights-syntax-variable:#953800;--color-prettylights-syntax-brackethighlighter-unmatched:#82071e;--color-prettylights-syntax-invalid-illegal-text:#f6f8fa;--color-prettylights-syntax-invalid-illegal-bg:#82071e;--color-prettylights-syntax-carriage-return-text:#f6f8fa;--color-prettylights-syntax-carriage-return-bg:#cf222e;--color-prettylights-syntax-string-regexp:#116329;--color-prettylights-syntax-markup-list:#3b2300;--color-prettylights-syntax-markup-heading:#0550ae;--color-prettylights-syntax-markup-italic:#24292f;--color-prettylights-syntax-markup-bold:#24292f;--color-prettylights-syntax-markup-deleted-text:#82071e;--color-prettylights-syntax-markup-deleted-bg:#ffebe9;--color-prettylights-syntax-markup-inserted-text:#116329;--color-prettylights-syntax-markup-inserted-bg:#dafbe1;--color-prettylights-syntax-markup-changed-text:#953800;--color-prettylights-syntax-markup-changed-bg:#ffd8b5;--color-prettylights-syntax-markup-ignored-text:#eaeef2;--color-prettylights-syntax-markup-ignored-bg:#0550ae;--color-prettylights-syntax-meta-diff-range:#8250df;--color-prettylights-syntax-brackethighlighter-angle:#57606a;--color-prettylights-syntax-sublimelinter-gutter-mark:#8c959f;--color-prettylights-syntax-constant-other-reference-link:#0a3069;--color-fg-default:#24292f;--color-fg-muted:#57606a;--color-fg-subtle:#6e7781;--color-canvas-default:#fff;--color-canvas-subtle:#f6f8fa;--color-border-default:#d0d7de;--color-border-muted:#d8dee4;--color-neutral-muted:#afb8c133;--color-accent-fg:#0969da;--color-accent-emphasis:#0969da;--color-attention-subtle:#fff8c5;--color-danger-fg:#d1242f;--color-danger-emphasis:#cf222e;--color-attention-fg:#9a6700;--color-attention-emphasis:#9a6700;--color-done-fg:#8250df;--color-done-emphasis:#8250df;--color-success-fg:#1a7f37;--color-success-emphasis:#1f883d;--color-copied-active-bg:#2e9b33}}[data-color-mode*=dark] .wmde-markdown,[data-color-mode*=dark] .wmde-markdown-var,.wmde-markdown-var[data-color-mode*=dark],.wmde-markdown[data-color-mode*=dark],body[data-color-mode*=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-prettylights-syntax-comment:#8b949e;--color-prettylights-syntax-constant:#79c0ff;--color-prettylights-syntax-entity:#d2a8ff;--color-prettylights-syntax-storage-modifier-import:#c9d1d9;--color-prettylights-syntax-entity-tag:#7ee787;--color-prettylights-syntax-keyword:#ff7b72;--color-prettylights-syntax-string:#a5d6ff;--color-prettylights-syntax-variable:#ffa657;--color-prettylights-syntax-brackethighlighter-unmatched:#f85149;--color-prettylights-syntax-invalid-illegal-text:#f0f6fc;--color-prettylights-syntax-invalid-illegal-bg:#8e1519;--color-prettylights-syntax-carriage-return-text:#f0f6fc;--color-prettylights-syntax-carriage-return-bg:#b62324;--color-prettylights-syntax-string-regexp:#7ee787;--color-prettylights-syntax-markup-list:#f2cc60;--color-prettylights-syntax-markup-heading:#1f6feb;--color-prettylights-syntax-markup-italic:#c9d1d9;--color-prettylights-syntax-markup-bold:#c9d1d9;--color-prettylights-syntax-markup-deleted-text:#ffdcd7;--color-prettylights-syntax-markup-deleted-bg:#67060c;--color-prettylights-syntax-markup-inserted-text:#aff5b4;--color-prettylights-syntax-markup-inserted-bg:#033a16;--color-prettylights-syntax-markup-changed-text:#ffdfb6;--color-prettylights-syntax-markup-changed-bg:#5a1e02;--color-prettylights-syntax-markup-ignored-text:#c9d1d9;--color-prettylights-syntax-markup-ignored-bg:#1158c7;--color-prettylights-syntax-meta-diff-range:#d2a8ff;--color-prettylights-syntax-brackethighlighter-angle:#8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark:#484f58;--color-prettylights-syntax-constant-other-reference-link:#a5d6ff;--color-fg-default:#c9d1d9;--color-fg-muted:#8b949e;--color-fg-subtle:#484f58;--color-canvas-default:#0d1117;--color-canvas-subtle:#161b22;--color-border-default:#30363d;--color-border-muted:#21262d;--color-neutral-muted:#6e768166;--color-accent-fg:#58a6ff;--color-accent-emphasis:#1f6feb;--color-attention-subtle:#bb800926;--color-danger-fg:#f85149}[data-color-mode*=light] .wmde-markdown,[data-color-mode*=light] .wmde-markdown-var,.wmde-markdown-var[data-color-mode*=light],.wmde-markdown[data-color-mode*=light],body[data-color-mode*=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-prettylights-syntax-comment:#6e7781;--color-prettylights-syntax-constant:#0550ae;--color-prettylights-syntax-entity:#8250df;--color-prettylights-syntax-storage-modifier-import:#24292f;--color-prettylights-syntax-entity-tag:#116329;--color-prettylights-syntax-keyword:#cf222e;--color-prettylights-syntax-string:#0a3069;--color-prettylights-syntax-variable:#953800;--color-prettylights-syntax-brackethighlighter-unmatched:#82071e;--color-prettylights-syntax-invalid-illegal-text:#f6f8fa;--color-prettylights-syntax-invalid-illegal-bg:#82071e;--color-prettylights-syntax-carriage-return-text:#f6f8fa;--color-prettylights-syntax-carriage-return-bg:#cf222e;--color-prettylights-syntax-string-regexp:#116329;--color-prettylights-syntax-markup-list:#3b2300;--color-prettylights-syntax-markup-heading:#0550ae;--color-prettylights-syntax-markup-italic:#24292f;--color-prettylights-syntax-markup-bold:#24292f;--color-prettylights-syntax-markup-deleted-text:#82071e;--color-prettylights-syntax-markup-deleted-bg:#ffebe9;--color-prettylights-syntax-markup-inserted-text:#116329;--color-prettylights-syntax-markup-inserted-bg:#dafbe1;--color-prettylights-syntax-markup-changed-text:#953800;--color-prettylights-syntax-markup-changed-bg:#ffd8b5;--color-prettylights-syntax-markup-ignored-text:#eaeef2;--color-prettylights-syntax-markup-ignored-bg:#0550ae;--color-prettylights-syntax-meta-diff-range:#8250df;--color-prettylights-syntax-brackethighlighter-angle:#57606a;--color-prettylights-syntax-sublimelinter-gutter-mark:#8c959f;--color-prettylights-syntax-constant-other-reference-link:#0a3069;--color-fg-default:#24292f;--color-fg-muted:#57606a;--color-fg-subtle:#6e7781;--color-canvas-default:#fff;--color-canvas-subtle:#f6f8fa;--color-border-default:#d0d7de;--color-border-muted:#d8dee4;--color-neutral-muted:#afb8c133;--color-accent-fg:#0969da;--color-accent-emphasis:#0969da;--color-attention-subtle:#fff8c5;--color-danger-fg:#cf222e}.wmde-markdown{-webkit-text-size-adjust:100%;word-wrap:break-word;color:var(--color-fg-default);background-color:var(--color-canvas-default);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;font-size:16px;line-height:1.5}.wmde-markdown details,.wmde-markdown figcaption,.wmde-markdown figure{display:block}.wmde-markdown summary{display:list-item}.wmde-markdown [hidden]{display:none!important}.wmde-markdown a{color:var(--color-accent-fg);background-color:#0000;text-decoration:none}.wmde-markdown a:active,.wmde-markdown a:hover{outline-width:0}.wmde-markdown abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.wmde-markdown b,.wmde-markdown strong{font-weight:600}.wmde-markdown dfn{font-style:italic}.wmde-markdown h1{border-bottom:1px solid var(--color-border-muted);margin:.67em 0;padding-bottom:.3em;font-size:2em;font-weight:600}.wmde-markdown mark{background-color:var(--color-attention-subtle);color:var(--color-text-primary)}.wmde-markdown small{font-size:90%}.wmde-markdown sub,.wmde-markdown sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}.wmde-markdown sub{bottom:-.25em}.wmde-markdown sup{top:-.5em}.wmde-markdown img{box-sizing:content-box;background-color:var(--color-canvas-default);border-style:none;max-width:100%;display:inline-block}.wmde-markdown code,.wmde-markdown kbd,.wmde-markdown pre,.wmde-markdown samp{font-family:monospace;font-size:1em}.wmde-markdown figure{margin:1em 40px}.wmde-markdown hr{box-sizing:content-box;border:0;border-bottom:1px solid var(--color-border-muted);background:0 0;background-color:var(--color-border-default);height:.25em;margin:24px 0;padding:0;overflow:hidden}.wmde-markdown input{font:inherit;font-family:inherit;font-size:inherit;line-height:inherit;margin:0;overflow:visible}.wmde-markdown [type=button],.wmde-markdown [type=reset],.wmde-markdown [type=submit]{-webkit-appearance:button}.wmde-markdown [type=button]::-moz-focus-inner{border-style:none;padding:0}.wmde-markdown [type=reset]::-moz-focus-inner{border-style:none;padding:0}.wmde-markdown [type=submit]::-moz-focus-inner{border-style:none;padding:0}:is(.wmde-markdown [type=button]:-moz-focusring,.wmde-markdown [type=reset]:-moz-focusring,.wmde-markdown [type=submit]:-moz-focusring){outline:1px dotted buttontext}.wmde-markdown [type=checkbox],.wmde-markdown [type=radio]{box-sizing:border-box;padding:0}.wmde-markdown [type=number]::-webkit-inner-spin-button{height:auto}.wmde-markdown [type=number]::-webkit-outer-spin-button{height:auto}.wmde-markdown [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.wmde-markdown [type=search]::-webkit-search-cancel-button{-webkit-appearance:none}.wmde-markdown [type=search]::-webkit-search-decoration{-webkit-appearance:none}.wmde-markdown ::-webkit-input-placeholder{color:inherit;opacity:.54}.wmde-markdown ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.wmde-markdown a:hover{text-decoration:underline}.wmde-markdown hr:before{content:"";display:table}.wmde-markdown hr:after{clear:both;content:"";display:table}.wmde-markdown table{border-spacing:0;border-collapse:collapse;width:max-content;max-width:100%;display:block}.wmde-markdown td,.wmde-markdown th{padding:0}.wmde-markdown details summary{cursor:pointer}.wmde-markdown details:not([open])>:not(summary){display:none!important}.wmde-markdown kbd{color:var(--color-fg-default);vertical-align:middle;background-color:var(--color-canvas-subtle);border:solid 1px var(--color-neutral-muted);border-bottom-color:var(--color-neutral-muted);box-shadow:inset 0 -1px 0 var(--color-neutral-muted);border-radius:6px;padding:3px 5px;font:11px/10px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;display:inline-block}.wmde-markdown h1,.wmde-markdown h2,.wmde-markdown h3,.wmde-markdown h4,.wmde-markdown h5,.wmde-markdown h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.wmde-markdown h2{border-bottom:1px solid var(--color-border-muted);padding-bottom:.3em;font-size:1.5em;font-weight:600}.wmde-markdown h3{font-size:1.25em;font-weight:600}.wmde-markdown h4{font-size:1em;font-weight:600}.wmde-markdown h5{font-size:.875em;font-weight:600}.wmde-markdown h6{color:var(--color-fg-muted);font-size:.85em;font-weight:600}.wmde-markdown p{margin-top:0;margin-bottom:10px}.wmde-markdown blockquote{color:var(--color-fg-muted);border-left:.25em solid var(--color-border-default);margin:0;padding:0 1em}.wmde-markdown ul,.wmde-markdown ol{margin-top:0;margin-bottom:0;padding-left:2em}.wmde-markdown ol ol,.wmde-markdown ul ol{list-style-type:lower-roman}.wmde-markdown ul ul ol,.wmde-markdown ul ol ol,.wmde-markdown ol ul ol,.wmde-markdown ol ol ol{list-style-type:lower-alpha}.wmde-markdown dd{margin-left:0}.wmde-markdown tt,.wmde-markdown code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.wmde-markdown pre{word-wrap:normal;margin-top:0;margin-bottom:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.wmde-markdown .octicon{vertical-align:text-bottom;fill:currentColor;display:inline-block;overflow:visible!important}.wmde-markdown ::placeholder{color:var(--color-fg-subtle);opacity:1}.wmde-markdown input::-webkit-outer-spin-button{appearance:none;margin:0}.wmde-markdown input::-webkit-inner-spin-button{appearance:none;margin:0}.wmde-markdown [data-catalyst]{display:block}.wmde-markdown:before{content:"";display:table}.wmde-markdown:after{clear:both;content:"";display:table}.wmde-markdown>:first-child{margin-top:0!important}.wmde-markdown>:last-child{margin-bottom:0!important}.wmde-markdown a:not([href]){color:inherit;text-decoration:none}.wmde-markdown .absent{color:var(--color-danger-fg)}.wmde-markdown a.anchor{float:left;margin-left:-20px;padding-right:4px;line-height:1}.wmde-markdown .anchor:focus{outline:none}.wmde-markdown p,.wmde-markdown blockquote,.wmde-markdown ul,.wmde-markdown ol,.wmde-markdown dl,.wmde-markdown table,.wmde-markdown pre,.wmde-markdown details{margin-top:0;margin-bottom:16px}.wmde-markdown blockquote>:first-child{margin-top:0}.wmde-markdown blockquote>:last-child{margin-bottom:0}.wmde-markdown sup>a:before{content:"["}.wmde-markdown sup>a:after{content:"]"}.wmde-markdown h1 .octicon-link,.wmde-markdown h2 .octicon-link,.wmde-markdown h3 .octicon-link,.wmde-markdown h4 .octicon-link,.wmde-markdown h5 .octicon-link,.wmde-markdown h6 .octicon-link{color:var(--color-fg-default);vertical-align:middle;visibility:hidden}.wmde-markdown h1:hover .anchor,.wmde-markdown h2:hover .anchor,.wmde-markdown h3:hover .anchor,.wmde-markdown h4:hover .anchor,.wmde-markdown h5:hover .anchor,.wmde-markdown h6:hover .anchor{text-decoration:none}.wmde-markdown h1:hover .anchor .octicon-link,.wmde-markdown h2:hover .anchor .octicon-link,.wmde-markdown h3:hover .anchor .octicon-link,.wmde-markdown h4:hover .anchor .octicon-link,.wmde-markdown h5:hover .anchor .octicon-link,.wmde-markdown h6:hover .anchor .octicon-link{visibility:visible}.wmde-markdown h1 tt,.wmde-markdown h1 code,.wmde-markdown h2 tt,.wmde-markdown h2 code,.wmde-markdown h3 tt,.wmde-markdown h3 code,.wmde-markdown h4 tt,.wmde-markdown h4 code,.wmde-markdown h5 tt,.wmde-markdown h5 code,.wmde-markdown h6 tt,.wmde-markdown h6 code{font-size:inherit;padding:0 .2em}.wmde-markdown ul.no-list,.wmde-markdown ol.no-list{padding:0;list-style-type:none}.wmde-markdown ol[type="1"]{list-style-type:decimal}.wmde-markdown ol[type=a]{list-style-type:lower-alpha}.wmde-markdown ol[type=i]{list-style-type:lower-roman}.wmde-markdown div>ol:not([type]){list-style-type:decimal}.wmde-markdown ul ul,.wmde-markdown ul ol,.wmde-markdown ol ol,.wmde-markdown ol ul{margin-top:0;margin-bottom:0}.wmde-markdown li>p{margin-top:16px}.wmde-markdown li+li{margin-top:.25em}.wmde-markdown dl{padding:0}.wmde-markdown dl dt{margin-top:16px;padding:0;font-size:1em;font-style:italic;font-weight:600}.wmde-markdown dl dd{margin-bottom:16px;padding:0 16px}.wmde-markdown table th{font-weight:600}.wmde-markdown table th,.wmde-markdown table td{border:1px solid var(--color-border-default);padding:6px 13px}.wmde-markdown table tr{background-color:var(--color-canvas-default);border-top:1px solid var(--color-border-muted)}.wmde-markdown table tr:nth-child(2n){background-color:var(--color-canvas-subtle)}.wmde-markdown table img{background-color:#0000}.wmde-markdown img[align=right]{padding-left:20px}.wmde-markdown img[align=left]{padding-right:20px}.wmde-markdown .emoji{vertical-align:text-top;background-color:#0000;max-width:none}.wmde-markdown span.frame{display:block;overflow:hidden}.wmde-markdown span.frame>span{float:left;border:1px solid var(--color-border-default);width:auto;margin:13px 0 0;padding:7px;display:block;overflow:hidden}.wmde-markdown span.frame span img{float:left;display:block}.wmde-markdown span.frame span span{clear:both;color:var(--color-fg-default);padding:5px 0 0;display:block}.wmde-markdown span.align-center{clear:both;display:block;overflow:hidden}.wmde-markdown span.align-center>span{text-align:center;margin:13px auto 0;display:block;overflow:hidden}.wmde-markdown span.align-center span img{text-align:center;margin:0 auto}.wmde-markdown span.align-right{clear:both;display:block;overflow:hidden}.wmde-markdown span.align-right>span{text-align:right;margin:13px 0 0;display:block;overflow:hidden}.wmde-markdown span.align-right span img{text-align:right;margin:0}.wmde-markdown span.float-left{float:left;margin-right:13px;display:block;overflow:hidden}.wmde-markdown span.float-left span{margin:13px 0 0}.wmde-markdown span.float-right{float:right;margin-left:13px;display:block;overflow:hidden}.wmde-markdown span.float-right>span{text-align:right;margin:13px auto 0;display:block;overflow:hidden}.wmde-markdown code,.wmde-markdown tt{background-color:var(--color-neutral-muted);border-radius:6px;margin:0;padding:.2em .4em;font-size:85%}.wmde-markdown code br,.wmde-markdown tt br{display:none}.wmde-markdown del code{-webkit-text-decoration:inherit;text-decoration:inherit}.wmde-markdown pre code{font-size:100%}.wmde-markdown pre>code{word-break:normal;white-space:pre;background:0 0;border:0;margin:0;padding:0}.wmde-markdown pre{background-color:var(--color-canvas-subtle);border-radius:6px;font-size:85%;line-height:1.45}.wmde-markdown pre code,.wmde-markdown pre tt{max-width:auto;line-height:inherit;word-wrap:normal;background-color:#0000;border:0;margin:0;padding:0;display:inline;overflow:visible}.wmde-markdown pre>code{padding:16px;display:block;overflow:auto}.wmde-markdown pre>code::-webkit-scrollbar{background:0 0;width:8px;height:8px}.wmde-markdown pre>code::-webkit-scrollbar-thumb{background:var(--color-fg-muted);border-radius:10px}.wmde-markdown .csv-data td,.wmde-markdown .csv-data th{text-align:left;white-space:nowrap;padding:5px;font-size:12px;line-height:1;overflow:hidden}.wmde-markdown .csv-data .blob-num{text-align:right;background:var(--color-canvas-default);border:0;padding:10px 8px 9px}.wmde-markdown .csv-data tr{border-top:0}.wmde-markdown .csv-data th{background:var(--color-canvas-subtle);border-top:0;font-weight:600}.wmde-markdown .footnotes{color:var(--color-fg-muted);border-top:1px solid var(--color-border-default);font-size:12px}.wmde-markdown .footnotes ol{padding-left:16px}.wmde-markdown .footnotes li{position:relative}.wmde-markdown .footnotes li:target:before{pointer-events:none;content:"";border:2px solid var(--color-accent-emphasis);border-radius:6px;position:absolute;inset:-8px -8px -8px -24px}.wmde-markdown .footnotes li:target{color:var(--color-fg-default)}.wmde-markdown .footnotes .data-footnote-backref g-emoji{font-family:monospace}.wmde-markdown .task-list-item{list-style-type:none}.wmde-markdown .task-list-item label{font-weight:400}.wmde-markdown .task-list-item.enabled label{cursor:pointer}.wmde-markdown .task-list-item+.wmde-markdown .task-list-item{margin-top:3px}.wmde-markdown .task-list-item .handle{display:none}.wmde-markdown .task-list-item-checkbox,.wmde-markdown .contains-task-list input[type=checkbox]{vertical-align:middle;margin:0 .2em .25em -1.6em}.wmde-markdown .contains-task-list:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.wmde-markdown .contains-task-list:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) input[type=checkbox]{margin:0 -1.6em .25em .2em}.wmde-markdown ::-webkit-calendar-picker-indicator{filter:invert(50%)}.wmde-markdown pre{position:relative}.wmde-markdown pre .copied{visibility:hidden;cursor:pointer;color:var(--color-fg-default);background:var(--color-border-default);border-radius:5px;padding:6px;font-size:12px;transition:all .3s;display:flex;position:absolute;top:6px;right:6px}.wmde-markdown pre .copied .octicon-copy{display:block}.wmde-markdown pre .copied .octicon-check{display:none}.wmde-markdown pre:hover .copied{visibility:visible}.wmde-markdown pre:hover .copied:hover{background:var(--color-prettylights-syntax-entity-tag);color:var(--color-canvas-default)}.wmde-markdown pre:hover .copied:active,.wmde-markdown pre .copied.active{background:var(--color-copied-active-bg);color:var(--color-canvas-default)}.wmde-markdown pre .active .octicon-copy{display:none}.wmde-markdown pre .active .octicon-check{display:block}.wmde-markdown .markdown-alert{color:inherit;border-left:.25em solid var(--borderColor-default,var(--color-border-default));margin-bottom:16px;padding:.5rem 1em}.wmde-markdown .markdown-alert>:last-child{margin-bottom:0!important}.wmde-markdown .markdown-alert .markdown-alert-title{align-items:center;font-size:14px;font-weight:500;line-height:1;display:flex}.wmde-markdown .markdown-alert .markdown-alert-title svg.octicon{margin-right:var(--base-size-8,8px)!important}.wmde-markdown .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis,var(--color-accent-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--fgColor-accent,var(--color-accent-fg))}.wmde-markdown .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis,var(--color-success-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--fgColor-success,var(--color-success-fg))}.wmde-markdown .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis,var(--color-done-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--fgColor-done,var(--color-done-fg))}.wmde-markdown .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis,var(--color-attention-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--fgColor-attention,var(--color-attention-fg))}.wmde-markdown .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis,var(--color-danger-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--fgColor-danger,var(--color-danger-fg))}.wmde-markdown .highlight-line{background-color:var(--color-neutral-muted)}.wmde-markdown .code-line.line-number:before{text-align:right;width:1rem;color:var(--color-fg-subtle);content:attr(line);white-space:nowrap;margin-right:16px;display:inline-block}.wmde-markdown .token.comment,.wmde-markdown .token.prolog,.wmde-markdown .token.doctype,.wmde-markdown .token.cdata{color:var(--color-prettylights-syntax-comment)}.wmde-markdown .token.namespace{opacity:.7}.wmde-markdown .token.property,.wmde-markdown .token.tag,.wmde-markdown .token.selector,.wmde-markdown .token.constant,.wmde-markdown .token.symbol,.wmde-markdown .token.deleted{color:var(--color-prettylights-syntax-entity-tag)}.wmde-markdown .token.maybe-class-name{color:var(--color-prettylights-syntax-variable)}.wmde-markdown .token.property-access,.wmde-markdown .token.operator,.wmde-markdown .token.boolean,.wmde-markdown .token.number,.wmde-markdown .token.selector .token.class,.wmde-markdown .token.attr-name,.wmde-markdown .token.string,.wmde-markdown .token.char,.wmde-markdown .token.builtin{color:var(--color-prettylights-syntax-constant)}.wmde-markdown .token.deleted{color:var(--color-prettylights-syntax-markup-deleted-text)}.wmde-markdown .code-line .token.deleted{background-color:var(--color-prettylights-syntax-markup-deleted-bg)}.wmde-markdown .token.inserted{color:var(--color-prettylights-syntax-markup-inserted-text)}.wmde-markdown .code-line .token.inserted{background-color:var(--color-prettylights-syntax-markup-inserted-bg)}.wmde-markdown .token.variable{color:var(--color-prettylights-syntax-constant)}.wmde-markdown .token.entity,.wmde-markdown .token.url,.wmde-markdown .language-css .token.string,.wmde-markdown .style .token.string,.wmde-markdown .token.color,.wmde-markdown .token.atrule,.wmde-markdown .token.attr-value,.wmde-markdown .token.function,.wmde-markdown .token.class-name{color:var(--color-prettylights-syntax-string)}.wmde-markdown .token.rule,.wmde-markdown .token.regex,.wmde-markdown .token.important,.wmde-markdown .token.keyword{color:var(--color-prettylights-syntax-keyword)}.wmde-markdown .token.coord{color:var(--color-prettylights-syntax-meta-diff-range)}.wmde-markdown .token.important,.wmde-markdown .token.bold{font-weight:700}.wmde-markdown .token.italic{font-style:italic}.wmde-markdown .token.entity{cursor:help}.w-md-editor-area{border-radius:5px;overflow:auto}.w-md-editor-text{text-align:left;white-space:pre-wrap;word-break:keep-all;overflow-wrap:break-word;box-sizing:border-box;font-variant-ligatures:common-ligatures;min-height:100%;margin:0;padding:10px;position:relative;font-size:14px!important;line-height:18px!important}.w-md-editor-text-pre,.w-md-editor-text-input,.w-md-editor-text>.w-md-editor-text-pre{box-sizing:inherit;display:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-variant-ligatures:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;tab-size:inherit;text-indent:inherit;text-rendering:inherit;text-transform:inherit;white-space:inherit;overflow-wrap:inherit;word-break:inherit;word-break:normal;background:0 0;border:0;margin:0;padding:0;font-family:var(--md-editor-font-family)!important}.w-md-editor-text-pre{pointer-events:none;position:relative;background-color:#0000!important;margin:0!important}.w-md-editor-text-pre>code{font-family:var(--md-editor-font-family)!important;padding:0!important;font-size:14px!important;line-height:18px!important}.w-md-editor-text-input{resize:none;width:100%;height:100%;color:inherit;padding:inherit;-webkit-font-smoothing:antialiased;-webkit-text-fill-color:transparent;outline:0;position:absolute;top:0;left:0;overflow:hidden}.w-md-editor-text-input:empty{-webkit-text-fill-color:inherit!important}.w-md-editor-text-pre,.w-md-editor-text-input{word-wrap:pre;word-break:break-word;white-space:pre-wrap}@media (-ms-high-contrast:none),(-ms-high-contrast:active){.w-md-editor-text-input{color:#0000!important}.w-md-editor-text-input::selection{color:#0000!important;background-color:#accef7!important}}.w-md-editor-text-pre .punctuation{color:var(--color-prettylights-syntax-comment,#8b949e)!important}.w-md-editor-text-pre .token.url,.w-md-editor-text-pre .token.content{color:var(--color-prettylights-syntax-constant,#0550ae)!important}.w-md-editor-text-pre .token.title.important{color:var(--color-prettylights-syntax-markup-bold,#24292f)}.w-md-editor-text-pre .token.code-block .function{color:var(--color-prettylights-syntax-entity,#8250df)}.w-md-editor-text-pre .token.bold{font-weight:unset!important}.w-md-editor-text-pre .token.title{line-height:unset!important;font-size:unset!important;font-weight:unset!important}.w-md-editor-text-pre .token.code.keyword{color:var(--color-prettylights-syntax-constant,#0550ae)!important}.w-md-editor-text-pre .token.strike,.w-md-editor-text-pre .token.strike .content{color:var(--color-prettylights-syntax-markup-deleted-text,#82071e)!important}.w-md-editor-toolbar-child{box-shadow:0 0 0 1px var(--md-editor-box-shadow-color), 0 0 0 var(--md-editor-box-shadow-color), 0 1px 1px var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);z-index:1;border-radius:3px;display:none;position:absolute}.w-md-editor-toolbar-child.active{display:block}.w-md-editor-toolbar-child .w-md-editor-toolbar{border-bottom:0;border-radius:3px;padding:3px}.w-md-editor-toolbar-child .w-md-editor-toolbar ul>li{display:block}.w-md-editor-toolbar-child .w-md-editor-toolbar ul>li button{width:-webkit-fill-available;height:initial;box-sizing:border-box;margin:0;padding:3px 4px 2px}.w-md-editor-toolbar{border-bottom:1px solid var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);-webkit-user-select:none;user-select:none;border-radius:3px 3px 0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:3px;display:flex}.w-md-editor-toolbar.bottom{border-bottom:0;border-top:1px solid var(--md-editor-box-shadow-color);border-radius:0 0 3px 3px}.w-md-editor-toolbar ul,.w-md-editor-toolbar li{line-height:initial;margin:0;padding:0;list-style:none}.w-md-editor-toolbar li{font-size:14px;display:inline-block}.w-md-editor-toolbar li+li{margin:0}.w-md-editor-toolbar li>button{text-transform:none;cursor:pointer;white-space:nowrap;height:20px;color:var(--color-fg-default);background:0 0;border:none;border-radius:2px;outline:none;margin:0 1px;padding:4px;font-weight:400;line-height:14px;transition:all .3s;overflow:visible}.w-md-editor-toolbar li>button:hover,.w-md-editor-toolbar li>button:focus{background-color:var(--color-neutral-muted);color:var(--color-accent-fg)}.w-md-editor-toolbar li>button:active{background-color:var(--color-neutral-muted);color:var(--color-danger-fg)}.w-md-editor-toolbar li>button:disabled{color:var(--md-editor-box-shadow-color);cursor:not-allowed}.w-md-editor-toolbar li>button:disabled:hover{color:var(--md-editor-box-shadow-color);background-color:#0000}.w-md-editor-toolbar li.active>button{color:var(--color-accent-fg);background-color:var(--color-neutral-muted)}.w-md-editor-toolbar-divider{vertical-align:middle;background-color:var(--md-editor-box-shadow-color);width:1px;height:14px;margin:-3px 3px 0!important}.w-md-editor-bar{cursor:s-resize;z-index:3;-webkit-user-select:none;user-select:none;border-radius:0 0 3px;width:14px;height:10px;margin-top:-11px;margin-right:0;position:absolute;bottom:0;right:0}.w-md-editor-bar svg{margin:0 auto;display:block}.w-md-editor{text-align:left;color:var(--color-fg-default);--md-editor-font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;--md-editor-background-color:var(--color-canvas-default,#fff);--md-editor-box-shadow-color:var(--color-border-default,#d0d7de);box-shadow:0 0 0 1px var(--md-editor-box-shadow-color), 0 0 0 var(--md-editor-box-shadow-color), 0 1px 1px var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);border-radius:3px;flex-direction:column;padding-bottom:1px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;display:flex;position:relative}.w-md-editor.w-md-editor-rtl{text-align:right!important;direction:rtl!important}.w-md-editor.w-md-editor-rtl .w-md-editor-preview{box-shadow:inset -1px 0 0 0 var(--md-editor-box-shadow-color);left:0;right:unset!important;text-align:right!important}.w-md-editor.w-md-editor-rtl .w-md-editor-text{text-align:right!important}.w-md-editor-toolbar{height:fit-content}.w-md-editor-content{border-radius:0 0 3px;height:100%;position:relative;overflow:auto}.w-md-editor .copied{display:none!important}.w-md-editor-input{width:50%;height:100%}.w-md-editor-text-pre>code{word-break:break-word!important;white-space:pre-wrap!important}.w-md-editor-preview{box-sizing:border-box;width:50%;box-shadow:inset 1px 0 0 0 var(--md-editor-box-shadow-color);border-radius:0 0 5px;flex-direction:column;padding:10px 20px;display:flex;position:absolute;top:0;bottom:0;right:0;overflow:auto}.w-md-editor-preview .anchor{display:none}.w-md-editor-preview .contains-task-list li.task-list-item{list-style:none}.w-md-editor-show-preview .w-md-editor-input{background-color:var(--md-editor-background-color);width:0%;overflow:hidden}.w-md-editor-show-preview .w-md-editor-preview{width:100%;box-shadow:inset 0 0}.w-md-editor-show-edit .w-md-editor-input{width:100%}.w-md-editor-show-edit .w-md-editor-preview{width:0%;padding:0}.w-md-editor-fullscreen{z-index:99999;position:fixed;inset:0;overflow:hidden;height:100%!important}.w-md-editor-fullscreen .w-md-editor-content{height:100%}*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#ef413d;--primary-dark:#d93531;--primary-light:#ff6b68;--bg-deep:#231d41;--bg:#1a1533;--bg-raised:#2d2650;--surface:#352e5c;--surface-hover:#3f3770;--text:#f0ecff;--text-muted:#9b93c0;--border:#ffffff14;--border-strong:#ef413d;--success:#22c55e;--danger:#ef4444;--warning:#eab308;--info:#3b82f6;--radius:4px;--shadow:3px 3px 0px black;--shadow-sm:2px 2px 0px black;--shadow-lg:6px 6px 0px black;--control-h:36px;--control-border:2px solid black;--font:"Space Grotesk", -apple-system, BlinkMacSystemFont, sans-serif}body{font-family:var(--font);background:var(--bg-deep);color:var(--text);line-height:1.5}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--bg);border-right:3px solid var(--border);z-index:200;flex-direction:column;width:240px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-header{border-bottom:3px solid var(--border);justify-content:center;align-items:center;height:80px;padding:20px;display:flex}.sidebar-logo{object-fit:contain;width:auto;max-width:100%;height:100px}.sidebar-version{color:var(--text-muted);text-align:center;cursor:pointer;opacity:.6;padding:8px 16px;font-size:.65rem;transition:opacity .15s}.sidebar-version:hover{opacity:1;color:var(--primary)}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px 10px;display:flex;overflow-y:auto}.sidebar-link{color:var(--text-muted);border-radius:var(--radius);border:2px solid #0000;align-items:center;gap:10px;padding:10px 14px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .1s;display:flex}.sidebar-link:hover{color:var(--text);background:var(--bg-raised)}.sidebar-link.active{color:var(--bg-deep);background:var(--primary);box-shadow:var(--shadow-sm);border-color:#000;font-weight:600}.sidebar-link .material-symbols-outlined{font-size:20px}.sidebar-back{color:var(--primary);border:2px dashed var(--primary);border-radius:var(--radius);align-items:center;gap:10px;margin-bottom:8px;padding:10px 14px;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .1s;display:flex}.sidebar-back:hover{background:#ef413d1a}.sidebar-back .material-symbols-outlined{font-size:18px}.sidebar-divider{background:var(--border);height:2px;margin:8px 4px}.sidebar-admin-link{color:var(--primary-light)}.sidebar-admin-link:hover{border-color:var(--primary);background:#ef413d1a}.main-area{flex-direction:column;flex:1;height:100vh;margin-left:240px;display:flex;overflow:hidden}.topbar{background:var(--bg);border-bottom:3px solid var(--border);z-index:100;justify-content:space-between;align-items:center;height:80px;padding:0 24px;display:flex;position:sticky;top:0}.topbar-left{align-items:center;gap:12px;display:flex}.topbar-title{color:var(--text);margin:0;font-size:1.1rem;font-weight:700}.topbar-section-prefix{color:var(--text-muted);font-weight:500}.topbar-right{align-items:center;gap:12px;display:flex;position:relative}.topbar-icon-btn{background:var(--bg-raised);border:var(--control-border);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;width:var(--control-h);height:var(--control-h);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;transition:all .1s;display:flex;position:relative}.topbar-icon-btn:hover{color:var(--text);box-shadow:var(--shadow);transform:translate(-1px,-1px)}.topbar-icon-btn .material-symbols-outlined{font-size:20px}.topbar-user{cursor:pointer;border-radius:var(--radius);align-items:center;gap:10px;padding:4px 8px;transition:background .1s;display:flex}.topbar-user:hover{background:var(--bg-raised)}.user-avatar{border-radius:var(--radius);border:2px solid var(--primary);background:var(--bg-raised);width:34px;height:34px;color:var(--primary);justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex;overflow:hidden}.user-avatar img{object-fit:cover;width:100%;height:100%}.user-info{flex-direction:column;display:flex}.user-name{color:var(--text);font-size:.8rem;font-weight:600;line-height:1.2}.user-role{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.65rem}.avatar-popover{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:300;padding:12px;font-size:.8rem;position:absolute;top:50px;right:50px}.avatar-popover p{margin-bottom:8px;font-weight:600}.main-content{flex:1;width:100%;height:calc(100vh - 80px);padding:24px 40px;overflow-y:auto}.login-page{background:var(--bg-deep);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--surface);border:var(--control-border);box-shadow:var(--shadow-lg);border-radius:var(--radius);width:100%;max-width:420px;padding:40px}.login-logo{height:48px;margin:0 auto 16px;display:block}.login-card h1{text-align:center;color:var(--primary);margin-bottom:4px;font-size:1.5rem}.login-subtitle{text-align:center;color:var(--text-muted);margin-bottom:24px;font-size:.85rem}.login-divider{color:var(--text-muted);align-items:center;gap:12px;margin:16px 0;font-size:.8rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:2px}.btn-google{background:var(--bg-raised);border:var(--control-border);color:var(--text);gap:10px;font-weight:600}.btn-google:hover{border-color:var(--text-muted);box-shadow:var(--shadow-sm);transform:translate(-1px,-1px)}.btn-outline{border:var(--control-border);color:var(--text-muted);background:0 0}.btn-outline:hover{border-color:var(--text-muted);color:var(--text)}.btn{height:var(--control-h);border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);color:var(--text);font-family:var(--font);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:.85rem;font-weight:600;transition:all 80ms;display:inline-flex}.btn:hover{box-shadow:var(--shadow);transform:translate(-1px,-1px)}.btn:active{box-shadow:none;transform:translate(2px,2px)}.btn-primary{background:var(--primary);color:#fff;border-color:#000}.btn-primary:hover{background:var(--primary-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-sm{height:var(--control-h);padding:0 10px;font-size:.8rem}.btn-xs{height:24px;padding:0 8px;font-size:.7rem;box-shadow:1px 1px #000}.btn-full{justify-content:center;width:100%}.btn-approve{background:var(--success);color:#fff;border-color:#16a34a}.btn-reject{background:var(--danger);color:#fff;border-color:#dc2626}select{height:var(--control-h);border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);color:var(--text);font-family:var(--font);cursor:pointer;box-shadow:var(--shadow-sm);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239b93c0' stroke-width='3'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding:0 28px 0 10px;font-size:.85rem;font-weight:500}select:focus{border-color:var(--primary);box-shadow:var(--shadow);outline:none}select option{background:var(--bg-raised);color:var(--text);padding:8px}.nb-select{display:inline-block;position:relative}.nb-select-trigger{height:var(--control-h);border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);min-width:120px;color:var(--text);font-family:var(--font);cursor:pointer;box-shadow:var(--shadow-sm);text-align:left;white-space:nowrap;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-size:.85rem;font-weight:500;transition:all 80ms;display:flex}.nb-select-trigger:hover{box-shadow:var(--shadow);transform:translate(-1px,-1px)}.nb-select-open{border-color:var(--primary);box-shadow:var(--shadow)}.nb-select-placeholder .nb-select-label{color:var(--text-muted)}.nb-select-arrow{color:var(--text-muted);font-size:.7rem}.nb-select-dropdown{z-index:300;background:var(--surface);border:var(--control-border);border-radius:var(--radius);width:max-content;min-width:100%;max-width:400px;box-shadow:var(--shadow);max-height:240px;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden auto}.nb-select-option{cursor:pointer;word-break:break-word;border-bottom:1px solid #ffffff0a;padding:8px 12px;font-size:.85rem;transition:all 50ms}.nb-select-option:last-child{border-bottom:none}.nb-select-option:hover{background:var(--primary);color:#fff}.nb-select-active{background:#ef413d26;font-weight:600}.form-group .nb-select,.form-group .nb-select-trigger{width:100%}.nb-multi-option{align-items:center;gap:8px;display:flex}.nb-multi-check{border:var(--control-border);background:var(--bg-raised);color:#fff;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:.65rem;font-weight:700;display:flex}.nb-multi-checked{background:var(--primary);border-color:#000}.nb-multi-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.nb-select-clear{color:var(--text-muted);font-size:.75rem;font-weight:600;border-bottom:1px solid #ffffff14!important}.form-group{margin-bottom:16px}.form-group label{color:var(--text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.8rem;font-weight:600;display:block}.form-group input,.form-group textarea{width:100%;height:var(--control-h);border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);color:var(--text);font-family:var(--font);box-shadow:var(--shadow-sm);padding:0 12px;font-size:.85rem;transition:all 80ms}.form-group select{width:100%}.form-group textarea{height:auto;padding:8px 12px}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:var(--shadow);outline:none}.form-group select{cursor:pointer}input[type=checkbox]{appearance:none;border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);cursor:pointer;width:20px;height:20px;box-shadow:var(--shadow-sm);flex-shrink:0;transition:all 80ms;position:relative}input[type=checkbox]:checked{background:var(--primary);border-color:#000}input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:14px;font-weight:700;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}input[type=checkbox]:hover{border-color:var(--primary)}.workday-counter{background:var(--bg-raised);border-radius:var(--radius);color:var(--text);align-items:center;gap:6px;margin-bottom:16px;padding:8px 12px;font-size:.85rem;display:flex}.workday-counter strong{color:var(--primary);font-size:1.1rem}.multi-day-picker{flex-direction:column;gap:6px;display:flex}.multi-day-row{align-items:center;gap:6px;display:flex}.multi-day-row input{border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);color:var(--text);font-family:var(--font);flex:1;padding:6px 10px;font-size:.85rem}.color-input{border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);cursor:pointer;height:36px;width:44px!important;padding:2px!important}.color-input::-webkit-color-swatch-wrapper{padding:2px}.color-input::-webkit-color-swatch{border:none;border-radius:2px}.form-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);margin:12px 0 4px;padding-bottom:4px;font-size:.7rem;font-weight:700}.form-row{gap:16px;display:flex}.form-row .form-group{flex:1}.card{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;padding:20px}.form-card h3{color:var(--primary);margin-bottom:16px}.alert{border-radius:var(--radius);border:2px solid;margin-bottom:16px;padding:10px 16px;font-size:.875rem;font-weight:600}.alert-error{color:#fca5a5;border-color:var(--danger);background:#ef444426}.alert-success{color:#86efac;border-color:var(--success);background:#22c55e26}.alert-warning{color:#fde047;border-color:var(--warning);background:#eab30826}.page-header{z-index:50;background:color-mix(in srgb, var(--bg-deep) 75%, transparent);-webkit-backdrop-filter:blur(12px);flex-wrap:wrap;align-items:center;gap:10px;margin:0 -40px 20px;padding:24px 40px 12px;display:flex;position:sticky;top:-24px}@media (width<=768px){.page-header{margin:0 -12px 20px;padding:12px 12px 10px;top:-12px}}.page-header h2{color:var(--text);margin-right:auto;font-size:1.25rem}.month-nav{align-items:center;gap:0;display:flex}.month-nav .btn{border-right:none;border-radius:0}.month-nav .btn:first-child{border-radius:var(--radius) 0 0 var(--radius)}.month-nav .month-label-btn{border-radius:0}.month-nav .btn:last-child,.month-nav>:last-child{border-radius:0 var(--radius) var(--radius) 0;border-right:var(--control-border)}.month-nav .btn,.month-nav .month-label-btn{box-shadow:none}.month-nav{box-shadow:var(--shadow-sm);border-radius:var(--radius)}.month-label{text-align:center;min-width:160px;color:var(--text);font-weight:700}.nfc-grid{grid-template-columns:repeat(auto-fill,minmax(450px,1fr));gap:10px;display:grid}.nfc-card{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.nfc-weekend{opacity:.5}.nfc-today{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger), var(--shadow);background:color-mix(in srgb, var(--danger) 3%, var(--surface))}.nfc-today .nfc-header{background:color-mix(in srgb, var(--danger) 6%, var(--bg-raised))}.nfc-today-tag{color:#fff;background:var(--danger);letter-spacing:.05em;border-radius:3px;padding:1px 6px;font-size:.6rem;font-weight:700}.nfc-holiday{background:#a855f70a}.nfc-header{background:var(--bg-raised);border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.nfc-day-info{align-items:baseline;gap:6px;display:flex}.nfc-day-num{font-size:1.1rem;font-weight:700}.nfc-today .nfc-day-num{color:var(--primary)}.nfc-day-name{color:var(--text-muted);font-size:.75rem;font-weight:500}.nfc-badges{gap:4px;display:flex}.nfc-badge{color:#fff;border-radius:var(--radius);text-transform:uppercase;white-space:nowrap;padding:2px 6px;font-size:.55rem;font-weight:700}.nfc-projects{flex-direction:column;flex:1;gap:2px;padding:6px;display:flex}.nfc-project{border-radius:var(--radius);background:var(--bg-raised);border:1px solid #ffffff0a;margin-bottom:2px;overflow:hidden}.nfc-project[open]{border-color:#ffffff14}.nfc-project-summary{cursor:pointer;border-radius:var(--radius);align-items:center;gap:6px;padding:5px 8px;font-size:.8rem;list-style:none;transition:background 80ms;display:flex}.nfc-project-summary::-webkit-details-marker{display:none}.nfc-project-summary::marker{content:""}.nfc-project-summary:hover{background:var(--bg-raised)}.nfc-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.nfc-pname{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:600;overflow:hidden}.nfc-hours-area{cursor:pointer;text-align:right;min-width:44px;margin-left:auto}.nfc-hours{color:var(--text-muted);border-radius:var(--radius);padding:2px 6px;font-size:.8rem;font-weight:700;transition:all 80ms}.nfc-hours:hover{color:var(--text);background:#ffffff0f}.nfc-hours-filled{color:var(--primary)}.nfc-project-body{padding:0 8px 8px 22px}.nfc-hours-input{border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);width:60px;height:26px;color:var(--text);font-family:var(--font);text-align:center;box-shadow:var(--shadow-sm);padding:0 6px;font-size:.8rem;font-weight:700}.nfc-hours-input:focus{border-color:var(--primary);outline:none}.nfc-hours-input::-webkit-outer-spin-button{-webkit-appearance:none}.nfc-hours-input::-webkit-inner-spin-button{-webkit-appearance:none}.nfc-chat{border-top:1px solid #ffffff0f;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.nfc-bubble{border-radius:12px 12px 12px 4px;max-width:90%;padding:8px 14px;font-size:.75rem;line-height:1.5}.nfc-bubble p{margin:0}.bubble-time{color:var(--text-muted);opacity:.7;margin-top:2px;font-size:.6rem;display:block}.bubble-edited{opacity:.8;font-style:italic}.typing-indicator{color:var(--text-muted);align-items:center;gap:6px;padding:4px 8px;font-size:.7rem;display:flex}.typing-dots{gap:3px;display:inline-flex}.typing-dots span{background:var(--text-muted);border-radius:50%;width:4px;height:4px;animation:1.4s ease-in-out infinite typingBounce}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.nfc-bubble-note{color:#fef3c7;background:#eab30826;border:1px solid #eab30840;align-self:flex-start}.nfc-bubble-admin{background:#ef413d1f;border-radius:12px 12px 4px;align-self:flex-end}.nfc-bubble-user{background:#22c55e1f;border-radius:12px 12px 12px 4px;align-self:flex-start}.nfc-bubble-author{color:var(--text-muted);margin-bottom:1px;font-size:.65rem;font-weight:700;display:block}.nfc-note-input,.nfc-reply-input{margin-top:4px}.nfc-note-input input,.nfc-reply-input input{background:var(--bg-raised);width:100%;height:26px;color:var(--text);font-family:var(--font);border:1px solid #ffffff0f;border-radius:13px;padding:0 8px;font-size:.7rem}.nfc-note-input input:focus,.nfc-reply-input input:focus{border-color:var(--primary);outline:none}.nfc-note-input input::placeholder,.nfc-reply-input input::placeholder,.nfc-msg-input input::placeholder{color:var(--text-muted)}.nfc-msg-input input{background:var(--bg-raised);width:100%;height:28px;color:var(--text);font-family:var(--font);border:1px solid #ffffff0f;border-radius:14px;padding:0 10px;font-size:.75rem}.nfc-msg-input input:focus{border-color:var(--primary);outline:none}.nfc-bubble{position:relative}.nfc-msg-actions{opacity:0;gap:2px;transition:opacity .1s;display:flex;position:absolute;top:2px;right:4px}.nfc-bubble:hover .nfc-msg-actions{opacity:1}.nfc-msg-actions button{background:var(--bg-raised);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;border:1px solid #ffffff1a;justify-content:center;align-items:center;width:22px;height:22px;padding:2px;display:flex}.nfc-msg-actions button .material-symbols-outlined{font-size:13px}.nfc-msg-actions button:hover{color:var(--primary);border-color:var(--primary)}.nfc-confirm-delete{border-radius:var(--radius);color:#fca5a5;background:#ef44441a;border:1px solid #ef44444d;align-items:center;gap:6px;margin-top:4px;padding:4px 8px;font-size:.65rem;display:flex}.nfc-confirm-yes{background:var(--danger);color:#fff;border-radius:var(--radius);font-family:var(--font);cursor:pointer;border:none;padding:2px 8px;font-size:.6rem;font-weight:700}.nfc-confirm-no{color:var(--text-muted);font-family:var(--font);cursor:pointer;background:0 0;border:none;font-size:.6rem}.nfc-confirm-no:hover{color:var(--text)}.nfc-edit-input{border:1px solid var(--primary);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--text);font-family:var(--font);padding:4px 8px;font-size:.75rem}.nfc-edit-input:focus{outline:none}.nfc-strikethrough{opacity:.4;margin:0;text-decoration:line-through}.nfc-removed{color:var(--text-muted);opacity:.5;margin:0;font-size:.7rem;font-style:italic}.nfc-deleted-own{opacity:.5}.nfc-deleted-other{opacity:.6}.nf-calendar{border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow);background:var(--bg);overflow:hidden}.nf-cal-header{background:var(--bg-raised);border-bottom:var(--control-border);grid-template-columns:repeat(7,1fr);display:grid}.nf-cal-dow{text-align:center;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:8px 4px;font-size:.75rem;font-weight:700}.nf-cal-weekend-header{color:var(--text-muted);opacity:.5}.nf-cal-week{border-bottom:1px solid #ffffff0a;grid-template-columns:repeat(7,1fr);display:grid}.nf-cal-week:last-child{border-bottom:none}.nf-cal-cell{border-right:1px solid #ffffff0a;flex-direction:column;min-height:100px;padding:0;display:flex}.nf-cal-cell:last-child{border-right:none}.nf-cal-empty{background:var(--bg-deep)}.nf-cal-weekend{background:#ffffff05}.nf-cal-holiday{background:#a855f70f}.nf-cal-today{background:#ef413d0f}.nf-cal-day-header{background:#ffffff05;border-bottom:1px solid #ffffff0a;align-items:center;gap:6px;padding:4px 8px;display:flex}.nf-cal-day-num{font-size:.85rem;font-weight:700}.nf-cal-today .nf-cal-day-num{color:var(--primary)}.nf-cal-day-name{color:var(--text-muted);font-size:.65rem}.nf-cal-badge{color:#fff;border-radius:var(--radius);text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;max-width:80px;margin-left:auto;padding:1px 6px;font-size:.55rem;font-weight:700;overflow:hidden}.nf-cal-projects{flex-direction:column;flex:1;gap:3px;max-height:300px;padding:4px 6px;display:flex;overflow-y:auto}.nf-cal-project{font-size:.75rem}.nf-cal-project-row{align-items:center;gap:4px;display:flex}.nf-cal-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.nf-cal-pname{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:600;overflow:hidden}.nf-cal-hours{color:var(--primary);cursor:pointer;border-radius:var(--radius);padding:0 4px;font-weight:700}.nf-cal-hours:hover{background:var(--bg-raised)}.nf-cal-hours-input{border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);width:40px;height:22px;color:var(--text);font-family:var(--font);text-align:center;box-shadow:var(--shadow-sm);padding:0 4px;font-size:.75rem;font-weight:700}.nf-cal-hours-input:focus{border-color:var(--primary);outline:none}.nf-cal-hours-input::-webkit-outer-spin-button{-webkit-appearance:none}.nf-cal-hours-input::-webkit-inner-spin-button{-webkit-appearance:none}.nf-cal-thread{border-left:2px solid #ffffff14;margin-top:2px;padding:3px 0 3px 12px}.nf-cal-note{color:var(--text);font-size:.7rem;line-height:1.3}.nf-cal-reply{border-radius:var(--radius);margin-top:2px;padding:2px 6px;font-size:.65rem;line-height:1.3}.nf-cal-reply strong{font-size:.6rem}.nf-cal-reply-admin{background:#ef413d14}.nf-cal-reply-user{background:#22c55e14}.nf-cal-reply-btn{color:var(--text-muted);cursor:pointer;font-size:.6rem;font-family:var(--font);background:0 0;border:none;padding:1px 0}.nf-cal-reply-btn:hover{color:var(--primary)}.nf-cal-reply-form{gap:4px;margin-top:3px;display:flex}.nf-cal-reply-form input{border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);height:22px;color:var(--text);font-family:var(--font);box-shadow:var(--shadow-sm);flex:1;padding:0 6px;font-size:.7rem}.nf-cal-reply-form input:focus{border-color:var(--primary);outline:none}.nf-cal-add-btn{color:var(--text-muted);cursor:pointer;font-size:.65rem;font-family:var(--font);background:0 0;border:none;padding:4px 0}.nf-cal-add-btn:hover{color:var(--primary)}.view-toggle{border:var(--control-border);border-radius:var(--radius);height:var(--control-h);box-shadow:var(--shadow-sm);display:flex;overflow:hidden}.view-toggle-btn{background:var(--bg-raised);color:var(--text-muted);font-family:var(--font);cursor:pointer;border:none;border-right:1px solid #0000004d;align-items:center;gap:4px;height:100%;padding:0 12px;font-size:.8rem;font-weight:600;transition:all .1s;display:flex}.view-toggle-btn:last-child{border-right:none}.view-toggle-btn.active{background:var(--primary);color:#fff}.view-toggle-btn:not(.active):hover{background:var(--surface-hover);color:var(--text)}.view-toggle-btn .material-symbols-outlined{font-size:16px}.date-picker-wrap{position:relative}.month-label-btn{background:var(--bg-raised);border:var(--control-border);color:var(--text);font-family:var(--font);height:var(--control-h);text-align:center;cursor:pointer;border-radius:var(--radius);min-width:160px;box-shadow:var(--shadow-sm);padding:0 12px;font-size:.85rem;font-weight:700;transition:all 80ms}.month-label-btn:hover{box-shadow:var(--shadow);transform:translate(-1px,-1px)}.date-picker-dropdown{z-index:200;background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow);min-width:240px;padding:12px;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.picker-year-row{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.picker-year-label{font-size:.9rem;font-weight:700}.picker-arrow{color:var(--text-muted);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;padding:2px 8px;font-size:1rem;transition:all .1s}.picker-arrow:hover{color:var(--text);background:var(--bg-raised)}.picker-month-grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.picker-month-cell{background:var(--bg-raised);color:var(--text);font-family:var(--font);border-radius:var(--radius);cursor:pointer;border:none;padding:8px 4px;font-size:.8rem;font-weight:600;transition:all .1s}.picker-month-cell:hover{background:var(--primary);color:#fff}.picker-active{background:var(--primary)!important;color:#fff!important}.picker-has-content{color:var(--success);background:#22c55e26;font-weight:700}.picker-has-content.picker-active{background:var(--primary)!important;color:#fff!important}.picker-content-dot{background:var(--success);vertical-align:super;border-radius:50%;width:4px;height:4px;margin-left:2px;display:inline-block}.picker-active .picker-content-dot{background:#fff}.timesheet-table-wrapper{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}.timesheet-table{border-collapse:collapse;width:100%;font-size:.85rem}.timesheet-table th,.timesheet-table td{border:1px solid var(--border);text-align:center;white-space:nowrap;padding:6px 8px}.timesheet-table th{background:var(--bg-raised);z-index:1;vertical-align:top;color:var(--text);font-weight:700;position:sticky;top:0}.sticky-col{background:var(--surface);z-index:2;min-width:100px;position:sticky;left:0}th.sticky-col{background:var(--bg-raised);z-index:3}.sticky-col-right{background:var(--surface);z-index:2;border-left:2px solid var(--border);min-width:56px;position:sticky;right:0}th.sticky-col-right{background:var(--bg-raised);z-index:3}.day-header{flex-direction:column;justify-content:flex-start;align-items:center;line-height:1.2;display:flex}.day-number{font-weight:700}.day-name{color:var(--text-muted);font-size:.7rem}.project-cell{text-align:left;white-space:nowrap;min-width:140px;font-weight:600}.weekend-col{background:var(--bg)!important}.hours-input{border-radius:var(--radius);text-align:center;width:46px;font-size:.85rem;font-family:var(--font);color:var(--text);pointer-events:none;background:0 0;border:2px solid #0000;padding:4px 6px;font-weight:600;transition:all .1s}.hours-input.input-active{pointer-events:auto}.hours-input:hover{border-color:var(--border);background:var(--bg-raised)}.hours-input:focus{background:0 0;border-color:#0000;outline:none}.hours-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.hours-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.hours-input[type=number]{appearance:textfield}.total-cell{color:var(--primary);font-weight:700}.grand-total{background:var(--bg-raised);font-size:1rem}.data-table{border-collapse:collapse;background:var(--surface);border:var(--control-border);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);font-size:.85rem;overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 14px}.data-table th{background:var(--bg-raised);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.75rem;font-weight:700}.data-table tbody tr:hover{background:var(--surface-hover)}.inactive-row{opacity:.4}.status-badge{border-radius:var(--radius);color:#fff;text-transform:uppercase;letter-spacing:.05em;border:2px solid #0003;padding:2px 10px;font-size:.7rem;font-weight:700;display:inline-block}.role-badge{border-radius:var(--radius);text-transform:uppercase;border:2px solid;padding:2px 10px;font-size:.7rem;font-weight:700;display:inline-block}.role-admin{color:var(--primary-light);border-color:var(--primary);background:#ef413d26}.role-user{color:#93c5fd;border-color:var(--info);background:#3b82f626}.color-dot{border-radius:var(--radius);border:2px solid #0003;width:16px;height:16px;display:inline-block}.review-actions{align-items:center;gap:6px;display:flex}.review-note-input{height:var(--control-h);border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);color:var(--text);font-family:var(--font);width:150px;box-shadow:var(--shadow-sm);padding:0 8px;font-size:.8rem}.review-note-input:focus{border-color:var(--primary);box-shadow:var(--shadow);outline:none}.reviewed-info{color:var(--text-muted);font-size:.8rem}.cell-with-note{cursor:pointer;transition:background .1s;position:relative}.cell-with-note:hover{background:var(--surface-hover)!important}.cell-focused{outline:2px solid var(--primary);outline-offset:-2px;background:var(--bg-raised)!important}.cell-inner{justify-content:center;align-items:center;display:flex;position:relative}.cell-commit-btn{color:#8b5cf6;cursor:pointer;opacity:.7;background:0 0;border:none;padding:1px;line-height:1;position:absolute;top:0;left:0}.cell-commit-btn .material-symbols-outlined{font-size:14px!important}.cell-commit-btn:hover{opacity:1}.timeline-commits{color:#8b5cf6;font-size:.55rem;font-weight:700;line-height:1;display:block}.day-detail-commits{margin-top:6px;padding-left:4px}.day-detail-commits-summary{color:#8b5cf6;cursor:pointer;align-items:center;gap:4px;font-size:.75rem;display:flex}.day-detail-commits-summary::-webkit-details-marker{display:none}.day-detail-commits-summary::marker{color:#8b5cf6}.note-btn{cursor:pointer;color:var(--text-muted);opacity:0;pointer-events:none;z-index:1;background:0 0;border:none;border-radius:2px;padding:1px 2px;font-size:.6rem;line-height:1;transition:all .1s;position:absolute;top:1px;right:1px}.cell-with-note:hover .note-btn{opacity:.5;pointer-events:auto}.cell-with-note:hover .note-btn:hover{opacity:1;background:var(--bg-raised)}.note-btn.has-note{opacity:1;color:var(--primary);pointer-events:auto}.note-btn.has-reply{opacity:1;color:var(--success);pointer-events:auto}@keyframes cellFlash{0%{background:#22c55e4d}to{background:0 0}}.cell-flash{animation:.4s ease-out cellFlash}.input-saving{color:var(--text-muted)!important}.holiday-col{background:#a855f714!important}.leave-col-vacation{background:#eab30814!important}.leave-col-remote{background:#22c55e14!important}.leave-col-medical,.leave-col-other{background:#ef444414!important}.leave-col-schedule_change{background:#a855f714!important}.leave-col-shift_change{background:#3b82f614!important}.day-holiday-dot{background:#a855f7;border-radius:50%;width:5px;height:5px;margin:1px auto 0}.day-leave-label{text-align:center;color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:3px;width:fit-content;margin:2px auto 0;padding:2px 5px;font-size:.6rem;font-weight:700;line-height:1;display:block}.day-shift-badge{text-align:center;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);letter-spacing:.05em;border-radius:3px;width:fit-content;margin:2px auto 0;padding:2px 5px;font-size:.6rem;font-weight:600;line-height:1;display:block}.badge-legend{color:var(--text-muted);flex-wrap:wrap;gap:10px 16px;margin-top:8px;padding:8px 12px;font-size:.7rem;display:flex}.badge-legend-item{align-items:center;gap:4px;display:flex}.holiday-tooltip{background:var(--surface);color:#d8b4fe;box-shadow:var(--shadow);border-radius:var(--radius);white-space:nowrap;z-index:1000;pointer-events:none;border:2px solid #a855f7;align-items:center;gap:8px;padding:6px 14px;font-size:.8rem;font-weight:600;display:flex;position:fixed;transform:translate(-50%)}.today-col{background:#ef413d14!important}th.today-col{background:#ef413d26!important}th.today-col .day-number{color:var(--primary)}.total-over{color:var(--danger)!important}.note-overlay{z-index:500;background:#0d0a1ab3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.note-popup{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);text-align:left;flex-direction:column;width:500px;max-width:90vw;max-height:85vh;padding:20px;display:flex}.note-popup-chat{height:500px}.changelog-popup{width:560px;max-height:80vh}.changelog-popup-full{width:640px;max-height:85vh}.changelog-body{flex:1;padding:8px 0;overflow-y:auto}.changelog-version{margin-bottom:20px}.changelog-version-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.changelog-version-tag{background:var(--primary);color:#fff;letter-spacing:.03em;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:700}.changelog-version-date{color:var(--text-muted);font-size:.75rem}.changelog-version-title{margin:4px 0 8px;font-size:.9rem}.changelog-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.changelog-list li{align-items:flex-start;gap:6px;font-size:.78rem;line-height:1.5;display:flex}.changelog-type{color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:3px;flex-shrink:0;margin-top:2px;padding:1px 5px;font-size:.55rem;font-weight:700}.commit-popup-body{flex:1;min-height:0;padding:8px 0;overflow-y:auto}.commit-project-group{margin-bottom:14px}.commit-project-header{border-bottom:1px solid var(--border);align-items:center;gap:6px;margin-bottom:6px;padding-bottom:4px;font-size:.8rem;display:flex}.commit-repo-name{color:var(--text-muted);font-size:.65rem;font-style:italic;font-weight:400}.commit-count{background:var(--bg-raised);color:var(--text-muted);border-radius:10px;margin-left:auto;padding:1px 6px;font-size:.65rem}.commit-list{flex-direction:column;gap:4px;display:flex}.commit-item{background:var(--bg-raised);border-radius:var(--radius);border-left:3px solid #8b5cf6;padding:6px 10px}.commit-hash{color:#8b5cf6;font-family:monospace;font-size:.65rem;font-weight:700}.commit-hash a{color:#8b5cf6;text-decoration:none}.commit-hash a:hover{text-decoration:underline}.commit-header-row{align-items:center;gap:6px;display:flex}.commit-branch{color:var(--text-muted);border:1px solid var(--border);background:#ffffff14;border-radius:3px;padding:1px 5px;font-family:monospace;font-size:.55rem}.commit-branch-default{color:#22c55e;background:#22c55e26;border-color:#22c55e4d}.commit-message{word-break:break-word;margin:2px 0;font-size:.78rem;line-height:1.4}.commit-meta{color:var(--text-muted);align-items:center;gap:8px;font-size:.65rem;display:flex}.commit-time{opacity:.7}.commit-stats{gap:4px;font-family:monospace;font-size:.6rem;display:flex}.commit-add{color:#22c55e}.commit-del{color:#ef4444}.error-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:60vh;display:flex}.error-code{color:var(--primary);opacity:.8;font-size:5rem;font-weight:900;line-height:1}.error-page h2{margin:0;font-size:1.4rem}.error-page p{color:var(--text-muted);margin:0 0 16px;font-size:.9rem}.gitlab-search-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);width:180px;color:var(--text);padding:4px 8px;font-size:.75rem}.gitlab-search-input:focus{border-color:var(--primary);outline:none}.gitlab-search-dropdown{background:var(--surface);border:var(--control-border);border-radius:var(--radius);width:300px;max-height:200px;box-shadow:var(--shadow-lg);position:absolute;top:100%;left:0;overflow-y:auto}.gitlab-dropdown-flip{z-index:20;margin-bottom:4px;top:auto;bottom:100%}.gitlab-search-item{cursor:pointer;padding:6px 10px;font-size:.75rem}.gitlab-search-item:hover{background:var(--surface-hover)}.gitlab-link-panel{min-width:200px}.gitlab-suggestions{flex-direction:column;gap:2px;display:flex}.gitlab-suggestions-label{color:var(--text-muted);margin-bottom:2px;font-size:.68rem}.gitlab-suggestion-item{cursor:pointer;border-radius:var(--radius);background:var(--bg-raised);border:1px solid var(--border);padding:5px 8px;font-size:.75rem;transition:border-color .15s}.gitlab-suggestion-item:hover{border-color:var(--primary)}.gitlab-suggestion-name{color:var(--text)}.gitlab-flip{flex-direction:column-reverse;display:flex}.changelog-footer{border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end;padding-top:10px;display:flex}.note-popup-header{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.8rem;display:flex}.note-popup-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:0 4px;font-size:1.2rem}.note-popup-close:hover{color:var(--primary)}.note-popup textarea{border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);width:100%;color:var(--text);font-family:var(--font);resize:vertical;padding:8px;font-size:.8rem}.note-popup textarea:focus{border-color:var(--primary);outline:none}.note-popup-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:8px;display:flex}.np-chat{flex-direction:column;flex:1;gap:6px;min-height:0;padding:8px 0;display:flex;overflow-y:auto}.np-bubble{border-radius:12px 12px 12px 4px;max-width:90%;padding:8px 14px;font-size:.8rem;line-height:1.5;position:relative}.np-bubble p{margin:0}.np-bubble-note{background:var(--surface);color:var(--text);z-index:1;border:1px solid #eab30859;border-left:3px solid #eab308;align-self:stretch;max-width:100%;position:sticky;top:0}.np-bubble-input{width:100%;max-width:100%;padding:6px}.np-bubble-input textarea{color:#fef3c7;width:100%;font-family:var(--font);resize:vertical;background:0 0;border:none;font-size:.85rem;line-height:1.5}.np-bubble-input textarea::placeholder{color:#fef3c766}.np-bubble-input textarea:focus{outline:none}.np-bubble-admin{background:#ef413d1f;border-radius:12px 12px 4px;align-self:flex-end}.np-bubble-user{background:#22c55e1f;border-radius:12px 12px 12px 4px;align-self:flex-start}.np-bubble-author{color:var(--text-muted);margin-bottom:2px;font-size:.7rem;font-weight:700;display:block}.np-bubble:hover .nfc-msg-actions{opacity:1}.np-bubble-editing{outline:2px solid var(--primary);outline-offset:-2px;opacity:.85}.np-edit-banner{color:var(--primary);border-radius:var(--radius);background:#ef413d14;align-items:center;gap:6px;margin-bottom:4px;padding:4px 8px;font-size:.7rem;display:flex}.np-edit-cancel{color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:1rem;line-height:1}.np-edit-cancel:hover{color:var(--danger)}.np-input-editing{border-color:var(--primary)!important;background:#ef413d0d!important}.np-reply-area{border-top:1px solid var(--border);flex-shrink:0;margin-top:4px;padding-top:8px}.np-reply-input{align-items:center;gap:6px;display:flex}.np-reply-input input{background:var(--bg-raised);height:34px;color:var(--text);font-family:var(--font);border:1px solid #ffffff14;border-radius:17px;flex:1;padding:0 12px;font-size:.8rem}.np-reply-input input:focus{border-color:var(--primary);outline:none}.np-input-actions{gap:2px;display:flex}.np-input-actions button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;align-items:center;padding:4px;transition:color .15s;display:flex}.np-input-actions button:hover{color:var(--primary)}.np-input-actions .material-symbols-outlined{font-size:18px}.emoji-picker-dropdown{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:10;grid-template-columns:repeat(8,1fr);gap:2px;max-height:200px;margin-bottom:4px;padding:8px;display:grid;position:absolute;bottom:100%;right:0;overflow-y:auto}.emoji-picker-dropdown button{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:1.2rem;line-height:1}.emoji-picker-dropdown button:hover{background:#ffffff1a}.gif-picker-dropdown{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:10;width:320px;margin-bottom:4px;padding:8px;position:absolute;bottom:100%;right:0}.gif-search-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-raised);width:100%;color:var(--text);margin-bottom:6px;padding:6px 10px;font-size:.8rem}.gif-search-input:focus{border-color:var(--primary);outline:none}.gif-results{grid-template-columns:repeat(3,1fr);gap:4px;max-height:200px;display:grid;overflow-y:auto}.gif-results img{cursor:pointer;border-radius:4px;width:100%;transition:opacity .15s}.gif-results img:hover{opacity:.8}.gif-loading{text-align:center;color:var(--text-muted);grid-column:1/-1;padding:12px;font-size:.75rem}.gif-powered{color:var(--text-muted);text-align:right;margin-top:4px;font-size:.55rem}.chat-gif{border-radius:6px;max-width:180px;margin:4px 0;display:block}.note-reply-by{color:var(--text-muted);font-size:.75rem;font-style:italic}.notif-wrapper{position:relative}.notif-badge{background:var(--primary);color:#fff;border-radius:var(--radius);border:2px solid var(--bg);justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.6rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.notif-dropdown{z-index:300;background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);flex-direction:column;width:360px;max-height:420px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.notif-dropdown-header{border-bottom:2px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px;font-size:.875rem;display:flex}.notif-list{max-height:360px;overflow-y:auto}.notif-item{border-bottom:1px solid var(--border);cursor:pointer;padding:10px 14px;transition:background .1s;position:relative}.notif-item:hover{background:var(--surface-hover)}.notif-delete-btn{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:50%;padding:2px;line-height:1;transition:opacity .15s;position:absolute;top:6px;right:6px}.notif-delete-btn .material-symbols-outlined{font-size:14px}.notif-item:hover .notif-delete-btn{opacity:1}.notif-delete-btn:hover{color:var(--danger)}.notif-unread{border-left:3px solid var(--primary);background:#ef413d14}.notif-title{font-size:.8rem;font-weight:700}.notif-message{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.75rem;overflow:hidden}.notif-time{color:var(--text-muted);margin-top:4px;font-size:.65rem}.notif-empty{text-align:center;color:var(--text-muted);padding:24px;font-size:.85rem}.notes-page .page-header{margin-bottom:16px}.unread-banner{border:2px solid var(--primary);border-radius:var(--radius);color:var(--primary-light);background:#ef413d1a;align-items:center;gap:10px;padding:6px 12px;font-size:.85rem;font-weight:600;display:flex}.notes-filters{gap:10px;margin-bottom:16px;display:flex}.notes-list{flex-direction:column;gap:4px;display:flex}.notes-user-group,.notes-project-group{margin-bottom:20px}.notes-group-title{border-left:3px solid var(--primary);margin-bottom:8px;padding-left:10px;font-size:1rem}.notes-group-count{color:var(--text-muted);margin-left:6px;font-size:.75rem;font-weight:400}.note-thread{background:var(--surface);border:var(--control-border);border-radius:var(--radius);overflow:hidden}.note-thread.note-unread{border-left:3px solid var(--primary)}.note-thread-header{cursor:pointer;padding:10px 14px;transition:background .1s}.note-thread-header:hover{background:var(--surface-hover)}.note-thread-meta{align-items:center;gap:8px;margin-bottom:2px;font-size:.85rem;display:flex}.note-project-tag{color:var(--text-muted);border-left:3px solid;padding-left:6px;font-size:.75rem}.note-date{color:var(--text-muted);margin-left:auto;font-size:.75rem}.note-thread-preview{color:var(--text-muted);align-items:center;gap:8px;font-size:.8rem;display:flex}.reply-count{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);white-space:nowrap;padding:1px 6px;font-size:.7rem}.note-thread-body{border-top:2px solid var(--border);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.note-message{border-radius:var(--radius);padding:8px 10px;font-size:.85rem}.note-original{background:var(--bg-raised);border:1px solid var(--border)}.note-reply-admin{background:#ef413d1a;border:1px solid #ef413d4d;margin-left:16px}.note-reply-user{background:#22c55e1a;border:1px solid #22c55e4d;margin-left:16px}.note-message-author{align-items:center;gap:6px;margin-bottom:2px;font-size:.8rem;font-weight:700;display:flex}.note-message p{margin:0}.note-message-time{color:var(--text-muted);font-size:.7rem}.note-reply-input{align-items:center;gap:6px;margin-top:4px;display:flex}.note-reply-input input{border:var(--control-border);border-radius:var(--radius);background:var(--bg-raised);color:var(--text);font-family:var(--font);flex:1;padding:6px 10px;font-size:.8rem}.note-reply-input input:focus{border-color:var(--primary);outline:none}.stats-page{max-width:1000px}.stats-summary{gap:16px;margin-bottom:20px;display:flex}.stat-card{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);text-align:center;flex:1;padding:16px}.stat-value{color:var(--primary);font-size:1.75rem;font-weight:700}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px;font-size:.75rem;font-weight:600}.heatmap-container{overflow:hidden}.heatmap-scroll{padding-bottom:8px;overflow-x:auto}.heatmap-svg{display:block}.heatmap-label{fill:var(--text-muted);font-size:10px}.heatmap-cell{cursor:pointer;transition:opacity .15s}.heatmap-cell:hover{stroke:var(--text);stroke-width:1px}.heatmap-legend{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:4px;padding:12px 8px 4px;font-size:.75rem;display:flex}.legend-cell{border:1px solid var(--border);border-radius:2px;width:12px;height:12px;display:inline-block}.heatmap-tooltip{background:var(--surface);color:var(--text);border:var(--control-border);box-shadow:var(--shadow);border-radius:var(--radius);pointer-events:none;white-space:nowrap;z-index:1000;padding:4px 10px;font-size:.75rem;font-weight:600;position:fixed;transform:translate(-50%,-100%)}.day-detail{margin-top:16px}.day-detail-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.day-detail-header h3{font-size:1rem}.stat-inline{color:var(--primary);margin-right:8px;font-weight:700}.day-detail-entries{flex-direction:column;gap:12px;display:flex}.day-detail-entry{border:var(--control-border);border-radius:var(--radius);padding:10px 14px;overflow:hidden}.day-detail-note-btn{color:#eab308;cursor:pointer;background:#eab30826;border:1px solid #eab3084d;border-radius:4px;align-items:center;gap:3px;padding:2px 6px;font-size:.7rem;transition:background .15s;display:inline-flex}.day-detail-note-btn:hover{background:#eab30840}.day-detail-note-count{color:#eab308;font-size:.6rem;font-weight:700}.day-detail-project{align-items:center;gap:8px;margin-bottom:6px;display:flex}.day-detail-hours{color:var(--primary);margin-left:auto;font-weight:700}.day-detail-note{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px;font-size:.85rem}.day-detail-note-text{margin-bottom:6px}.day-detail-reply{border-radius:var(--radius);margin-top:4px;padding:4px 8px;font-size:.8rem}.day-detail-reply.reply-admin{background:#ef413d1a}.analytics-page .page-header{flex-wrap:wrap}.analytics-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tab-group{border:var(--control-border);border-radius:var(--radius);height:var(--control-h);box-shadow:var(--shadow-sm);display:flex;overflow:hidden}.tab-btn{background:var(--bg-raised);color:var(--text-muted);font-family:var(--font);cursor:pointer;border:none;border-right:1px solid #0000004d;height:100%;padding:0 14px;font-size:.85rem;font-weight:600;transition:all .1s}.tab-btn:last-child{border-right:none}.tab-btn.active{background:var(--primary);color:#fff}.tab-btn:not(.active):hover{background:var(--surface-hover);color:var(--text)}.analytics-summary{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.analytics-summary .stat-card{flex:0 auto;min-width:120px}.analytics-timeline{flex-direction:column;gap:12px;display:flex}.breakdown-period{padding:16px}.breakdown-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.period-label{margin:0;font-size:.95rem;font-weight:700}.breakdown-total{color:var(--primary);font-size:.9rem;font-weight:700}.breakdown-group{border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:12px}.breakdown-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.breakdown-group-header{align-items:center;gap:8px;margin-bottom:8px;font-size:.9rem;display:flex}.breakdown-group-total{color:var(--primary);margin-left:auto;font-size:.85rem;font-weight:700}.breakdown-bars{flex-direction:column;gap:4px;padding-left:24px;display:flex}.breakdown-bar-row{align-items:center;gap:8px;display:flex}.breakdown-bar-label{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;min-width:130px;font-size:.8rem;display:flex;overflow:hidden}.color-dot-sm{border-radius:var(--radius);border:1px solid #0003;flex-shrink:0;width:10px;height:10px;display:inline-block}.breakdown-bar-track{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);flex:1;height:18px;overflow:hidden}.breakdown-bar-fill{border-radius:var(--radius);min-width:2px;height:100%;transition:width .3s}.breakdown-bar-value{text-align:right;min-width:50px;color:var(--text-muted);font-size:.8rem;font-weight:700}.project-picker{margin-bottom:20px;padding:14px}.picker-columns{gap:24px;display:flex}.picker-col{flex:1}.picker-col h4{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:6px;margin-bottom:6px;font-size:.75rem;font-weight:700;display:flex}.picker-count{background:var(--bg);border-radius:var(--radius);padding:1px 6px;font-size:.65rem;font-weight:600}.picker-scroll{max-height:180px;overflow-y:auto}.picker-search{border:var(--control-border);border-radius:var(--radius);background:var(--bg);width:100%;height:28px;color:var(--text);font-family:var(--font);box-shadow:var(--shadow-sm);margin-bottom:6px;padding:0 10px;font-size:.8rem}.picker-search:focus{border-color:var(--primary);outline:none}.picker-search::placeholder{color:var(--text-muted)}.picker-list{list-style:none}.picker-list li{border-radius:var(--radius);align-items:center;gap:6px;padding:4px 8px;font-size:.8rem;transition:background .1s;display:flex}.picker-list li:hover{background:var(--surface-hover)}.picker-list li span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8rem;overflow:hidden}.picker-list li .color-dot{flex-shrink:0;width:10px;height:10px}.empty-state-sm{color:var(--text-muted);padding:8px;font-size:.85rem}.page-header-actions{gap:8px;display:flex}.filter-group{align-items:center;gap:8px;display:flex}.filter-reset-btn{color:var(--text-muted);cursor:pointer;font-size:.7rem;font-family:var(--font);background:0 0;border:none;padding:2px 6px;text-decoration:underline}.filter-reset-btn:hover{color:var(--primary)}.empty-state{text-align:center;color:var(--text-muted);padding:40px;font-weight:500}.loading{text-align:center;color:var(--text-muted);padding:40px}.timeline-page{max-width:100%}.timeline-legend{z-index:7;background:var(--bg,var(--surface));flex-wrap:wrap;gap:16px;margin-bottom:16px;padding:8px 4px;font-size:.8rem;display:flex;position:sticky;top:0}.legend-item{align-items:center;gap:6px;display:flex}.legend-swatch{border-radius:var(--radius);border:2px solid #0003;flex-shrink:0;width:16px;height:16px;display:inline-block}.timeline-table-wrapper{padding:0;overflow-x:auto}.timeline-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:.8rem}.timeline-table th,.timeline-table td{text-align:center;white-space:nowrap;padding:0}.timeline-sticky-col{z-index:5;background:var(--surface);text-align:left;min-width:140px;box-shadow:3px 0 0 0 var(--border);border-right:none;padding:6px 12px;font-weight:600;position:sticky;left:0}thead .timeline-sticky-col{z-index:6;background:var(--bg-raised)}.timeline-day-header{background:var(--bg-raised);min-width:36px;padding:6px 4px}.timeline-day-num{font-size:.75rem;font-weight:700;line-height:1.2}.timeline-day-name{color:var(--text-muted);text-transform:uppercase;font-size:.6rem}.timeline-weekend .timeline-day-num,.timeline-weekend .timeline-day-name{color:var(--text-muted);opacity:.4}.timeline-cell{cursor:pointer;vertical-align:middle;width:36px;height:34px;transition:box-shadow .1s;position:relative}.timeline-cell:hover{box-shadow:inset 0 0 0 2px var(--primary)}.timeline-cell-selected{box-shadow:inset 0 0 0 2px var(--primary)!important}.timeline-hours,.timeline-icon{color:#ffffffe6;text-shadow:0 1px 2px #00000080;font-size:.65rem;font-weight:700}.timeline-user-cell{font-size:.85rem}.timeline-detail{margin-top:16px}.timeline-tooltip{background:var(--surface);color:var(--text);border:var(--control-border);box-shadow:var(--shadow);border-radius:var(--radius);pointer-events:none;white-space:nowrap;z-index:1000;padding:8px 12px;font-size:.75rem;position:fixed;transform:translate(-50%,-100%)}.tooltip-projects{flex-direction:column;gap:2px;margin-top:4px;display:flex}.tooltip-project{align-items:center;gap:4px;display:flex}.tooltip-dot{border-radius:var(--radius);flex-shrink:0;width:8px;height:8px;display:inline-block}.vacation-balance-group{background:var(--surface);border-radius:var(--radius);align-items:center;gap:10px;padding:6px 14px;display:flex}.req-stats-bar{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:14px;margin-top:16px;padding:12px 16px;display:flex}.req-stats-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);white-space:nowrap;font-size:.75rem;font-weight:700}.req-stats-chips{flex-wrap:wrap;gap:8px;display:flex}.req-stat{background:var(--bg-raised);border-radius:var(--radius);align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;display:flex}.req-stat-value{color:var(--text);font-size:.85rem;font-weight:700}.req-stat-label{color:var(--text-muted);font-size:.7rem}.req-stat-green .req-stat-value{color:var(--success)}.req-stat-yellow .req-stat-value{color:var(--warning)}.req-stat-red .req-stat-value{color:var(--danger)}.req-stat-teal .req-stat-value{color:#22d3ee}.balance-group-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);white-space:nowrap;font-size:.65rem;font-weight:700}.vacation-balance-inline{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.balance-chip{background:var(--bg-raised);border-radius:var(--radius);white-space:nowrap;align-items:center;gap:4px;padding:4px 12px;font-size:.8rem;display:flex}.balance-chip-value{color:var(--primary);font-size:1rem;font-weight:700}.balance-chip-of{color:var(--text-muted);font-size:.7rem;font-weight:500}.balance-chip-label{color:var(--text-muted);font-size:.7rem}.balance-chip-pending{color:var(--warning);font-size:.65rem;font-weight:600}.balance-chip-transfer{background:#22c55e1a}.balance-chip-transfer .balance-chip-value{color:var(--success)}.balance-chip-deadline{color:var(--warning);font-size:.6rem;font-weight:600}.balance-chip-expired{opacity:.4;text-decoration:line-through}.balance-chip-total{background:#ef413d1a}.balance-inline{font-size:.85rem}.balance-pending-tag{color:var(--warning);font-size:.7rem}.timeline-holiday-header{background:#a855f726!important}.timeline-holiday-dot{display:none}.tooltip-holiday{color:#d8b4fe;margin-bottom:2px;font-weight:700}.timeline-vacation-header{background:var(--bg-raised);min-width:100px;padding:4px 8px;font-size:.75rem}.timeline-vacation-cell{white-space:nowrap;padding:4px 8px}.vacation-badge{align-items:center;gap:6px;font-size:.75rem;font-weight:700;display:inline-flex}.vacation-bar{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:40px;height:6px;display:inline-block;overflow:hidden}.vacation-bar-fill{background:var(--warning);border-radius:var(--radius);height:100%;transition:width .3s;display:block}.timeline-holidays-summary{padding:14px 18px}.timeline-holidays-summary h4{margin-bottom:8px;font-size:.9rem}.holidays-list{flex-direction:column;gap:4px;display:flex}.holiday-item{align-items:center;gap:8px;font-size:.85rem;display:flex}.holiday-item .color-dot{width:12px;height:12px}.transfer-warning-banner{border-bottom:2px solid var(--warning);color:#fde047;background:#eab30826;align-items:center;gap:12px;padding:10px 24px;font-size:.85rem;display:flex}.transfer-warning-banner .material-symbols-outlined{color:var(--warning);font-size:22px}.transfer-warning-text{flex:1}.balance-bucket{border-bottom:1px solid var(--border);padding:8px 0}.balance-bucket:last-of-type{border-bottom:none}.bucket-transfer{border-radius:var(--radius);background:#22c55e0d;margin:4px -10px;padding:8px 10px}.bucket-expired{opacity:.5}.balance-bucket-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.balance-bucket-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:700}.balance-bucket-value{color:var(--primary);font-size:1.1rem;font-weight:700}.balance-bucket-of{color:var(--text-muted);font-size:.75rem;font-weight:500}.balance-bucket-expired-tag{color:var(--text-muted);font-size:.7rem;font-weight:700;text-decoration:line-through}.balance-bar-transfer-used{background:var(--success);height:100%;transition:width .3s}.balance-dot.transfer-used{background:var(--success)}.balance-deadline{color:var(--warning);margin-left:auto;font-weight:600}.balance-total-row{color:var(--text-muted);justify-content:space-between;align-items:center;padding-top:8px;font-size:.85rem;display:flex}.balance-total-row strong{color:var(--primary);font-size:1rem}.balance-transfer{color:var(--success);font-weight:700}.balance-transfer-expired{color:var(--text-muted);font-size:.7rem}.ats-users{flex-direction:column;gap:16px;display:flex}.ats-user-block{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.ats-user-block .timesheet-table-wrapper{box-shadow:none;border:none;border-radius:0}.ats-user-header{background:var(--bg-raised);border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.ats-user-header strong{font-size:.9rem}.ats-user-total{color:var(--primary);font-size:1rem;font-weight:700}.admin-timesheets-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px;display:grid}.admin-ts-card{padding:16px 20px}.admin-ts-header{justify-content:space-between;align-items:flex-start;margin-bottom:14px;display:flex}.admin-ts-header h3{margin:0;font-size:1rem}.admin-ts-stats{flex-direction:column;align-items:flex-end;display:flex}.admin-ts-total{color:var(--primary);font-size:1.25rem;font-weight:700}.admin-ts-meta{color:var(--text-muted);font-size:.7rem}.admin-ts-projects{flex-direction:column;gap:8px;display:flex}.admin-ts-project-header{align-items:center;gap:8px;font-size:.85rem;display:flex}.admin-ts-project-name{flex:1}.admin-ts-project-hours{text-align:right;min-width:40px;font-weight:700}.admin-ts-project-pct{color:var(--text-muted);text-align:right;min-width:32px;font-size:.75rem}.admin-ts-bar{background:var(--bg);border-radius:var(--radius);height:6px;margin-top:3px;overflow:hidden}.admin-ts-bar-fill{border-radius:var(--radius);height:100%;transition:width .3s}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;max-width:380px;display:flex;position:fixed;top:16px;right:16px}.toast{pointer-events:auto;background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow);align-items:flex-start;gap:10px;min-width:280px;padding:12px 14px;animation:.2s ease-out toastSlideIn;display:flex}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-success{border-left:4px solid var(--success)}.toast-error{border-left:4px solid var(--danger)}.toast-warning{border-left:4px solid var(--warning)}.toast-info{border-left:4px solid var(--info)}.toast-notification{border-left:4px solid var(--primary)}.toast-content{flex:1;align-items:flex-start;gap:8px;display:flex}.toast-icon{flex-shrink:0;margin-top:1px;font-size:20px}.toast-success .toast-icon{color:var(--success)}.toast-error .toast-icon{color:var(--danger)}.toast-warning .toast-icon{color:var(--warning)}.toast-info .toast-icon{color:var(--info)}.toast-notification .toast-icon{color:var(--primary)}.toast-text{flex:1;min-width:0}.toast-title{margin-bottom:2px;font-size:.85rem;font-weight:700}.toast-message{color:var(--text-muted);word-break:break-word;font-size:.8rem;line-height:1.4}.toast-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:1.2rem;line-height:1}.toast-close:hover{color:var(--text)}.ustats-year-info{color:var(--text-muted);margin-left:auto;font-size:.75rem}.ustats-user-section{margin-bottom:24px}.ustats-user-title{border-bottom:var(--control-border);align-items:baseline;gap:10px;margin-bottom:10px;padding-bottom:6px;display:flex}.ustats-user-title strong{font-size:1.1rem}.ustats-user-meta{color:var(--text-muted);font-size:.75rem}.ustats-cards{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-bottom:10px;display:grid}.ustats-stat-card{background:var(--surface);border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:12px 14px}.ustats-stat-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:4px;font-size:.65rem;font-weight:700}.ustats-stat-big{color:var(--primary);font-size:1.6rem;font-weight:700;line-height:1.2}.ustats-stat-big small{color:var(--text-muted);font-size:.75rem;font-weight:500}.ustats-stat-bar{background:var(--bg);border-radius:var(--radius);height:6px;margin:6px 0 4px;overflow:hidden}.ustats-stat-fill{border-radius:var(--radius);height:100%;transition:width .3s}.ustats-stat-sub{color:var(--text-muted);font-size:.65rem}.ustats-date-list{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.ustats-date-chip{background:var(--bg-raised);border-radius:var(--radius);color:var(--text-muted);white-space:nowrap;padding:2px 6px;font-size:.6rem}.ustats-projects-card{grid-column:1/-1}.ustats-projects-list{margin-top:6px}.ustats-charts{margin-bottom:10px}.ustats-chart-card{max-width:680px;min-height:auto;padding:8px 10px}.ustats-chart-card .ustats-stat-label{margin-bottom:0}.line-chart-svg{width:100%;margin-top:8px;display:block}.line-chart-axis{fill:var(--text-muted);font-size:8px;font-family:var(--font)}.line-chart-legend{flex-wrap:wrap;gap:6px;margin-top:4px;font-size:.6rem;display:flex}.line-chart-legend-item{color:var(--text-muted);align-items:center;gap:4px;display:flex}.line-chart-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.line-chart-dot-group{cursor:pointer}.line-chart-dot{pointer-events:none;transition:r .1s}.line-chart-hit{pointer-events:all}.line-chart-dot-group:hover .line-chart-dot{r:5}.line-chart-tooltip{fill:var(--text);opacity:0;pointer-events:none;font-size:6px;font-weight:700;transition:opacity .1s}.line-chart-dot-group:hover .line-chart-tooltip{opacity:1}.ustats-project-row{align-items:center;gap:8px;margin-bottom:4px;font-size:.8rem;display:flex}.ustats-project-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ustats-project-name{white-space:nowrap;text-overflow:ellipsis;min-width:120px;font-weight:500;overflow:hidden}.ustats-project-bar{background:var(--bg);border-radius:var(--radius);flex:1;height:8px;overflow:hidden}.ustats-project-fill{border-radius:var(--radius);height:100%;transition:width .3s}.ustats-project-hours{text-align:right;min-width:45px;font-weight:700}.ustats-project-pct{color:var(--text-muted);text-align:right;min-width:30px;font-size:.7rem}@media (width<=768px){.sidebar{width:60px}.sidebar-link span:last-child,.sidebar-back span:last-child,.sidebar-admin-link span:last-child{display:none}.sidebar-link,.sidebar-back{justify-content:center;padding:10px}.main-area{margin-left:60px}.sidebar-logo{height:30px}.sidebar-header{height:60px;padding:10px}.main-content{padding:12px}.form-row{flex-direction:column;gap:0}.page-header{flex-direction:column;align-items:flex-start}.review-actions{flex-direction:column}.user-info{display:none}}.sidebar-section-label{text-transform:uppercase;letter-spacing:2px;color:var(--text-muted);margin-top:4px;padding:4px 16px 2px;font-size:10px;font-weight:700}.kanban-page{padding:0}.kanban-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.kanban-header h1{font-size:1.4rem}.kanban-loading{text-align:center;color:var(--text-muted);padding:40px}.kanban-create-form{background:var(--bg-raised);border:2px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:16px}.kanban-board{gap:12px;min-height:60vh;padding-bottom:12px;display:flex;overflow-x:auto}.kanban-column{flex-direction:column;flex:1;min-width:240px;max-width:320px;display:flex}.kanban-column-header{background:var(--bg-raised);border:2px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;color:var(--text);align-items:center;gap:8px;padding:10px 12px;font-size:.85rem;font-weight:600;display:flex}.kanban-column-count{background:var(--surface);color:var(--text-muted);border-radius:10px;margin-left:auto;padding:2px 8px;font-size:.75rem}.kanban-column-body{background:var(--bg);border:2px solid var(--border);border-radius:0 0 var(--radius) var(--radius);border-top:none;flex-direction:column;flex:1;gap:8px;min-height:100px;padding:8px;transition:background .15s;display:flex}.kanban-column-dragover{border-color:var(--info);background:#6366f114}.kanban-card-locked{opacity:.7;cursor:not-allowed;position:relative}.kanban-card-locked .task-card{outline:2px dashed var(--info);outline-offset:-2px;filter:saturate(.7);pointer-events:none}.kanban-card-lock-badge{background:var(--info);color:#fff;z-index:1;pointer-events:none;border-radius:10px;align-items:center;gap:2px;padding:2px 6px;font-size:.65rem;font-weight:600;display:inline-flex;position:absolute;top:4px;right:4px}.task-card{background:var(--bg-raised);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;border-left:4px solid;padding:10px 12px;transition:transform .1s,box-shadow .1s}.task-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.task-card-dragging{transform:rotate(2deg);box-shadow:0 8px 24px #0006}.task-card-header{align-items:center;gap:6px;margin-bottom:6px;display:flex}.task-card-id{color:var(--text-muted);font-family:monospace;font-size:.7rem;font-weight:700}.task-card-project{color:#fff;border-radius:3px;padding:1px 6px;font-size:.65rem;font-weight:600}.task-card-title{color:var(--text);margin-bottom:8px;font-size:.85rem;font-weight:500;line-height:1.3}.task-card-footer{justify-content:space-between;align-items:flex-end;display:flex}.task-card-meta{align-items:center;gap:6px;display:flex}.task-card-avatars{gap:-4px;display:flex}.task-card-avatar{background:var(--surface);width:22px;height:22px;color:var(--text);border:2px solid var(--bg-raised);border-radius:50%;justify-content:center;align-items:center;font-size:.55rem;font-weight:700;display:flex;overflow:hidden}.task-card-avatar img{object-fit:cover;width:100%;height:100%}.task-card-avatar-more{font-size:.6rem}.task-card-priority{font-size:.65rem;font-weight:600}.task-card-badges{align-items:center;gap:6px;display:flex}.task-card-badge{color:var(--text-muted);align-items:center;gap:2px;font-size:.7rem;display:flex}.task-filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.task-filter-select{background:var(--bg-raised);color:var(--text);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:6px 10px;font-family:inherit;font-size:.8rem}.task-filter-select:focus{border-color:var(--info);outline:none}.task-filter-checkbox{color:var(--text-muted);cursor:pointer;align-items:center;gap:4px;font-size:.8rem;display:flex}.task-form{flex-direction:column;gap:12px;display:flex}.task-form-parent-info{color:var(--text-muted);background:var(--surface);border-radius:var(--radius);padding:6px 10px;font-size:.8rem}.task-form-title{background:var(--bg);color:var(--text);border:2px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-family:inherit;font-size:1rem;font-weight:600}.task-form-title:focus{border-color:var(--info);outline:none}.task-form-row{flex-wrap:wrap;gap:8px;display:flex}.task-form-estimate{background:var(--bg-raised);color:var(--text);border:2px solid var(--border);border-radius:var(--radius);width:100px;padding:6px 10px;font-family:inherit;font-size:.8rem}.task-form-estimate:focus{border-color:var(--info);outline:none}.task-form-description{min-height:120px}.task-form-assignees label{color:var(--text-muted);font-size:.8rem;font-weight:600}.task-form-assignee-list{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.task-form-assignee-chip{background:var(--surface);color:var(--text-muted);cursor:pointer;border:2px solid #0000;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;transition:all .15s;display:flex}.task-form-assignee-chip.selected{background:var(--info);color:#fff;border-color:var(--info)}.task-form-assignee-chip input{display:none}.task-form-actions{gap:8px;display:flex}.task-popup-overlay{z-index:1000;background:#0009;justify-content:center;align-items:flex-start;padding:40px 20px;display:flex;position:fixed;inset:0;overflow-y:auto}.task-popup{background:var(--bg-deep);border:2px solid var(--border);border-radius:var(--radius);flex-direction:column;width:100%;max-width:800px;max-height:85vh;display:flex;box-shadow:0 16px 48px #00000080}.task-popup-loading{text-align:center;color:var(--text-muted);padding:40px}.task-popup-header{border-bottom:2px solid var(--border);align-items:center;gap:10px;padding:12px 16px;display:flex}.task-popup-id{color:var(--text-muted);font-family:monospace;font-size:.85rem;font-weight:700}.task-popup-parent{color:var(--info);cursor:pointer;font-size:.75rem}.task-popup-parent:hover{text-decoration:underline}.task-popup-header-actions{gap:4px;margin-left:auto;display:flex}.task-popup-title-row{padding:12px 16px 0}.task-popup-title{color:var(--text);cursor:pointer;margin:0;font-size:1.3rem;font-weight:700}.task-popup-title:hover{color:var(--info)}.task-closed-title{color:var(--text-muted);text-decoration:line-through}.task-popup-title-input{background:var(--bg);width:100%;color:var(--text);border:2px solid var(--info);border-radius:var(--radius);padding:6px 10px;font-family:inherit;font-size:1.3rem;font-weight:700}.task-popup-status-bar{flex-wrap:wrap;align-items:center;gap:8px;padding:8px 16px;display:flex}.task-status-select,.task-priority-select{background:var(--bg-raised);color:var(--text);border-radius:var(--radius);cursor:pointer;border:2px solid;padding:4px 8px;font-family:inherit;font-size:.8rem}.task-popup-feature{color:var(--text-muted);align-items:center;gap:4px;font-size:.75rem;display:flex}.task-popup-project{color:#fff;border-radius:3px;padding:2px 8px;font-size:.7rem;font-weight:600}.task-popup-status-actions{margin-left:auto}.task-closed-reason{color:var(--danger);background:#ef44441a;align-items:center;gap:6px;padding:6px 16px;font-size:.8rem;display:flex}.task-popup-tabs{border-bottom:2px solid var(--border);padding:0 16px;display:flex}.task-popup-tabs button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:8px 16px;font-family:inherit;font-size:.8rem;font-weight:600;transition:all .15s}.task-popup-tabs button.active{color:var(--text);border-bottom-color:var(--info)}.task-popup-tabs button:hover{color:var(--text)}.task-popup-content{flex:1;padding:16px;overflow-y:auto}.task-popup-section{margin-bottom:20px}.task-popup-section-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.task-popup-section h4{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:.85rem;font-weight:700}.task-popup-section-actions{gap:6px;margin-top:8px;display:flex}.task-popup-empty{color:var(--text-muted);font-size:.8rem;font-style:italic}.task-popup-description{font-size:.9rem;line-height:1.6}.task-popup-assignees{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-popup-assignee{background:var(--surface);border-radius:20px;align-items:center;gap:6px;padding:4px 8px;font-size:.8rem;display:flex}.task-add-assignee{font-size:.75rem}.task-popup-time-row{align-items:center;gap:8px;font-size:.85rem;display:flex}.task-popup-time-row label{color:var(--text-muted);font-weight:600}.task-popup-attachments{flex-direction:column;gap:4px;display:flex}.task-attachment-item,.task-attachment-link{color:var(--info);align-items:center;gap:6px;font-size:.8rem;text-decoration:none;display:flex}.task-attachment-item a{color:var(--info);text-decoration:none}.task-attachment-item a:hover,.task-attachment-link:hover{text-decoration:underline}.task-popup-subtasks{flex-direction:column;gap:4px;display:flex}.task-subtask-item{background:var(--surface);border-radius:var(--radius);cursor:pointer;border-left:3px solid #0000;align-items:center;gap:8px;padding:6px 10px;transition:background .15s;display:flex}.task-subtask-item:hover{background:var(--surface-hover)}.task-subtask-backlog{border-left-color:#6b7280}.task-subtask-in_progress{border-left-color:#3b82f6}.task-subtask-under_review{border-left-color:#f59e0b}.task-subtask-ready_to_deploy{background:#8b5cf614;border-left-color:#8b5cf6}.task-subtask-done{background:#10b98114;border-left-color:#10b981}.task-subtask-closed{background:#ef444414;border-left-color:#ef4444}.task-subtask-id{color:var(--text-muted);font-family:monospace;font-size:.7rem}.task-subtask-title{flex:1;font-size:.85rem}.task-strikethrough{color:var(--text-muted);text-decoration:line-through}.task-subtask-status{font-size:.7rem;font-weight:600}.task-popup-relations{flex-direction:column;gap:8px;display:flex}.task-relation-item{background:var(--surface);border-radius:var(--radius);align-items:center;gap:8px;padding:6px 10px;display:flex}.task-relation-type{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;min-width:80px;font-size:.7rem;font-weight:700}.task-relation-target{color:var(--info);cursor:pointer;flex:1;font-size:.85rem}.task-relation-target:hover{text-decoration:underline}.task-add-relation{flex-wrap:nowrap;align-items:center;gap:8px;width:100%;display:flex}.task-add-relation-type{flex-shrink:0;font-size:.8rem}.task-add-relation-search{flex:auto;min-width:0;position:relative}.task-add-relation-input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);box-sizing:border-box;padding:6px 10px;font-size:.85rem}.task-add-relation-input:focus{border-color:var(--info);outline:none}.task-add-relation-dropdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-height:280px;box-shadow:var(--shadow);z-index:9999;overflow-y:auto}.task-add-relation-option{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:6px 10px;font-size:.8rem;display:flex}.task-add-relation-option:last-child{border-bottom:none}.task-add-relation-option:hover{background:var(--bg-raised)}.task-add-relation-option-id{color:var(--info);flex-shrink:0;font-weight:700}.task-add-relation-option-title{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.task-add-relation-option-project{color:#fff;border-radius:10px;flex-shrink:0;padding:2px 6px;font-size:.65rem}.task-add-relation-empty{color:var(--text-muted);text-align:center;padding:10px;font-size:.8rem}.task-popup-commits{flex-direction:column;gap:6px;display:flex}.task-commit-item{background:var(--surface);border-radius:var(--radius);align-items:center;gap:10px;padding:6px 10px;font-size:.8rem;display:flex}.task-close-dialog{background:var(--bg-deep);border-top:2px solid var(--danger);padding:16px;position:absolute;bottom:0;left:0;right:0}.task-close-dialog h4{color:var(--danger);margin-bottom:8px}.task-close-dialog textarea{background:var(--bg);width:100%;color:var(--text);border:2px solid var(--border);border-radius:var(--radius);resize:vertical;padding:8px;font-family:inherit;font-size:.85rem}.task-close-dialog-actions{gap:8px;margin-top:8px;display:flex}.task-comment-thread{flex-direction:column;height:100%;display:flex}.task-comment-list{flex-direction:column;flex:1;gap:12px;max-height:400px;padding-bottom:12px;display:flex;overflow-y:auto}.task-comment-empty{text-align:center;color:var(--text-muted);padding:20px;font-size:.85rem}.task-comment{background:var(--surface);border-radius:var(--radius);padding:10px 12px}.task-comment-own{border-left:3px solid var(--info)}.task-comment-header{align-items:center;gap:8px;margin-bottom:6px;font-size:.8rem;display:flex}.task-comment-avatar{background:var(--bg-raised);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.6rem;font-weight:700;display:flex;overflow:hidden}.task-comment-avatar img{object-fit:cover;width:100%;height:100%}.task-comment-time{color:var(--text-muted);font-size:.7rem}.task-comment-actions{gap:4px;margin-left:auto;display:flex}.task-comment-actions button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px}.task-comment-actions button:hover{color:var(--text)}.task-comment-body{font-size:.85rem;line-height:1.5}.task-comment-body img{border-radius:var(--radius);max-width:100%;margin:4px 0}.task-comment-attachments{flex-direction:column;gap:2px;margin-top:6px;display:flex}.task-comment-edit textarea{background:var(--bg);width:100%;color:var(--text);border:2px solid var(--info);border-radius:var(--radius);resize:vertical;padding:8px;font-family:inherit;font-size:.85rem}.task-comment-edit-actions{gap:6px;margin-top:6px;display:flex}.task-comment-typing{color:var(--text-muted);padding:4px;font-size:.75rem;font-style:italic}.task-comment-input{border-top:2px solid var(--border);padding-top:12px}.task-comment-input textarea{background:var(--bg);width:100%;color:var(--text);border:2px solid var(--border);border-radius:var(--radius);resize:vertical;min-height:50px;padding:8px;font-family:inherit;font-size:.85rem}.task-comment-input textarea:focus{border-color:var(--info);outline:none}.task-comment-input-actions{align-items:center;gap:8px;margin-top:6px;display:flex}.task-file-count{color:var(--text-muted);font-size:.75rem}.task-mention{background:var(--info);color:#fff;cursor:pointer;border-radius:3px;padding:1px 6px;font-family:monospace;font-size:.75rem;font-weight:700;display:inline-block}.task-mention:hover{opacity:.85}.figma-embed{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);gap:12px;margin:8px 0;padding:10px;display:flex}.figma-embed-thumb{object-fit:cover;border-radius:var(--radius);width:120px;height:80px}.figma-embed-info{flex-direction:column;gap:4px;display:flex}.figma-embed-title{color:var(--info);font-size:.85rem;font-weight:600;text-decoration:none}.figma-embed-title:hover{text-decoration:underline}.figma-embed-provider{color:var(--text-muted);font-size:.7rem}.figma-embed-loading{color:var(--text-muted);padding:8px;font-size:.8rem}.figma-link{color:var(--info);font-size:.8rem}.task-feature-card{background:var(--surface);border:var(--control-border);border-left:4px solid var(--text-muted);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:16px;overflow:hidden}.task-urgent-card{border-left-color:var(--danger)!important}.task-feature-header{border-bottom:1px solid var(--border);background:#0000001a;align-items:center;gap:8px;padding:10px 14px;display:flex}.task-feature-name{font-size:.9rem;font-weight:700}.task-feature-main-badge{background:var(--info);color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:3px;padding:1px 5px;font-size:.55rem;font-weight:700}.task-feature-count{color:var(--text-muted);font-size:.72rem;font-weight:400}.task-feature-branch{color:var(--text-muted);align-items:center;gap:3px;margin-left:auto;font-family:monospace;font-size:.7rem;display:flex}.task-feature-body{min-height:8px;transition:background .15s}.task-feature-body-dragover{background:#3b82f60f}.task-feature-empty{color:var(--text-muted);padding:10px 14px;font-size:.8rem;font-style:italic}.task-list-row{cursor:pointer;border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:9px 14px;transition:background .1s;display:flex}.task-list-row:last-child{border-bottom:none}.task-list-row:hover{background:#ffffff08}.task-list-row-dragging{border:var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow);background:var(--bg-raised)!important}.task-list-id{color:var(--text-muted);flex-shrink:0;min-width:40px;font-family:monospace;font-size:.7rem}.task-list-priority{border-radius:50%;flex-shrink:0;width:8px;height:8px}.task-list-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.85rem;overflow:hidden}.task-list-avatars{flex-shrink:0;gap:0;display:flex}.task-list-avatars .task-card-avatar{margin-left:-4px}.task-list-avatars .task-card-avatar:first-child{margin-left:0}.task-list-status{white-space:nowrap;border:1px solid;border-radius:3px;flex-shrink:0;padding:2px 8px;font-size:.68rem;font-weight:600}.task-list-badge{color:var(--text-muted);flex-shrink:0;align-items:center;gap:2px;font-size:.7rem;display:flex}.my-tasks-row{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:9px 14px;transition:background .1s;display:flex}.my-tasks-row:last-child{border-bottom:none}.my-tasks-row:hover{background:#ffffff08}.my-tasks-id{color:var(--text-muted);min-width:40px;font-family:monospace;font-size:.7rem}.my-tasks-priority-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.my-tasks-title{color:var(--text);flex:1;font-size:.85rem}.my-tasks-status{border:1px solid;border-radius:3px;padding:2px 8px;font-size:.68rem;font-weight:600}.my-tasks-badge{color:var(--text-muted);align-items:center;gap:2px;font-size:.7rem;display:flex}.admin-features-page{padding:0}.admin-features-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.admin-features-header h1{font-size:1.4rem}.admin-features-filter{margin-bottom:16px}.admin-features-empty{text-align:center;color:var(--text-muted);padding:40px}.admin-feature-form{background:var(--bg-raised);border:2px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:10px;margin-bottom:16px;padding:16px;display:flex}.admin-feature-form input,.admin-feature-form textarea{background:var(--bg);color:var(--text);border:2px solid var(--border);border-radius:var(--radius);padding:8px 10px;font-family:inherit;font-size:.85rem}.admin-feature-form input:focus,.admin-feature-form textarea:focus{border-color:var(--info);outline:none}.admin-feature-form-row{flex-wrap:wrap;gap:8px;display:flex}.admin-feature-form-row input,.admin-feature-form-row select{flex:1;min-width:140px}.admin-feature-form-actions{gap:8px;display:flex}.admin-features-list{flex-direction:column;gap:8px;display:flex}.admin-feature-item{background:var(--bg-raised);border:2px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.admin-feature-default{border-left:3px solid var(--info)}.admin-feature-info{flex:1}.admin-feature-title{align-items:center;gap:8px;margin-bottom:4px;font-weight:600;display:flex}.admin-feature-badge{background:var(--info);color:#fff;border-radius:3px;padding:1px 6px;font-size:.65rem;font-weight:700}.admin-feature-project{color:#fff;border-radius:3px;margin-bottom:4px;padding:1px 6px;font-size:.65rem;display:inline-block}.admin-feature-desc{color:var(--text-muted);margin-bottom:4px;font-size:.8rem}.admin-feature-meta{color:var(--text-muted);gap:12px;font-size:.7rem;display:flex}.admin-feature-branch{background:var(--surface);border-radius:3px;padding:1px 6px;font-family:monospace}.admin-feature-actions{gap:4px;display:flex}.admin-task-settings-page h1{margin-bottom:20px;font-size:1.4rem}.admin-task-settings-placeholder{text-align:center;color:var(--text-muted);padding:60px 20px}.admin-task-settings-placeholder p{margin:12px 0}.admin-task-settings-placeholder ul{margin-top:16px;list-style:none}.admin-task-settings-placeholder li{padding:4px 0;font-size:.85rem}.btn-secondary{background:var(--surface);color:var(--text);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:8px 16px;font-family:inherit;font-size:.85rem;font-weight:600}.btn-secondary:hover{background:var(--surface-hover)}.btn-danger{background:var(--danger);color:#fff;border:2px solid var(--danger);border-radius:var(--radius);cursor:pointer;padding:8px 16px;font-family:inherit;font-size:.85rem;font-weight:600}.btn-danger:hover{opacity:.9}.btn-sm{padding:4px 10px!important;font-size:.75rem!important}.btn-icon{color:var(--text-muted);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;padding:4px}.btn-icon:hover{color:var(--text);background:var(--surface)}.btn-icon.btn-danger{color:var(--danger);background:0 0;border:none}.btn-icon.btn-danger:hover{background:#ef44441a}.urgent-badge{letter-spacing:1px;background:var(--danger);color:#fff;border-radius:3px;padding:1px 6px;font-size:.6rem;font-weight:700}.task-project-tag{color:#fff;border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:.6rem;font-weight:600}[data-color-mode=dark] .w-md-editor{background:var(--bg)!important;border:2px solid var(--border)!important;border-radius:var(--radius)!important;color:var(--text)!important}[data-color-mode=dark] .w-md-editor-toolbar{background:var(--bg-raised)!important;border-bottom:2px solid var(--border)!important}[data-color-mode=dark] .w-md-editor-text-pre,[data-color-mode=dark] .w-md-editor-text-input,[data-color-mode=dark] .w-md-editor-text{color:var(--text)!important}[data-color-mode=dark] .wmde-markdown{color:var(--text)!important;background:0 0!important}[data-color-mode=dark] .wmde-markdown code{background:var(--surface)!important;color:var(--text)!important}[data-color-mode=dark] .w-md-editor-toolbar button{color:var(--text-muted)!important}[data-color-mode=dark] .w-md-editor-toolbar button:hover{color:var(--text)!important}.md-preview-interactive input[type=checkbox]{cursor:pointer!important;opacity:1!important;pointer-events:auto!important}.form-md-group{margin-bottom:16px}.form-md-label{color:var(--text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.8rem;font-weight:600;display:block}.form-md-group .w-md-editor-text-pre,.form-md-group .w-md-editor-text-input,.form-md-group .w-md-editor-text-pre>code,.form-md-group .w-md-editor-text-pre>code *{color:var(--text)!important;-webkit-text-fill-color:var(--text)!important}.members-panel{min-width:220px}.members-list{flex-direction:column;gap:3px;margin-bottom:6px;display:flex}.member-row{align-items:center;gap:5px;font-size:.75rem;display:flex}.member-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.member-source{text-transform:uppercase;border-radius:9px;padding:1px 5px;font-size:.62rem;font-weight:600}.member-source.gitlab{color:#fff;background:#fc6d26}.member-source.manual{background:var(--info);color:#fff}.member-add{position:relative}.member-search-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:4px;padding:3px 7px;font-size:.75rem}.member-search-dropdown{background:var(--bg-raised);border:1px solid var(--border);z-index:200;border-radius:4px;max-height:160px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000040}.member-search-option{cursor:pointer;padding:5px 9px;font-size:.75rem}.member-search-option:hover{background:var(--bg-raised)}
