









textarea.p-input-multiline {
    resize: none;
    line-height: 1.4;
    white-space: pre-wrap;
    overflow-x: hidden;
    overflow-y: auto;
}






















*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}






































h1, h2, h3, h4, h5, h6,
p, li, dt, dd, blockquote, figcaption,
td, th, caption,
label, legend, option, optgroup, button, a, summary,
input, textarea, select,


text,



[class*="-title"], [class*="-name"], [class*="-label"], [class*="-hint"],
[class*="-desc"], [class*="-caption"], [class*="-msg"], [class*="-message"],
[class*="-empty"], [class*="-note"], [class*="-value"],
[class*="-text"]:not([class*="p-text-"], [class*="p-cell-text-"]),
.p-toast, .p-badge, .p-modal-body {
    unicode-bidi: isolate;
}





[data-picon] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-style: normal;
    line-height: 0;
    width: 1em;
    height: 1em;
    flex-shrink: 0;
}
[data-picon] > svg {
    display: block;
    width: 100%;
    height: 100%;
}







svg.p-icon {
    vertical-align: -0.125em;
}













svg.p-icon > * {
    vector-effect: non-scaling-stroke;
}












@media (pointer: coarse) {
    svg.p-icon > .p-icon-ol > * {
        vector-effect: non-scaling-stroke;
    }
}













.p-desktop-card-link [data-picon] > svg.p-icon:not(.p-icon-parts),
.p-desktop-card-link [data-picon] > svg.p-icon:not(.p-icon-parts) * {
    vector-effect: none;
}

:root {






    --p-sidebar-width:       300px;
    --p-sidebar-width-col:   48px;


    --p-field-h:             36px;



    --p-color-brand-source:  #1e3a8a;
    --p-color-primary-light: #1d4ed8;
    --p-color-primary-dark:  #172554;














    --p-surface-tone: 1;

    --p-color-brand:         var(--p-color-brand-source);


    --p-text-accent:         oklch(from var(--p-color-primary) var(--p-text-l) c h);



























    --p-chrome-tint:         8%;








    --p-chrome-eff:          var(--p-chrome-tint);


    --p-chrome-light:        calc(var(--p-chrome-eff) * 1.25);



    --p-assistant-sheet:     var(--p-surface-work);



















    --p-icon-stroke:         1.5;






    --p-icon-stroke-lg:      calc(var(--p-icon-stroke) + 0.5);





    --p-icon-stroke-ol:      3;





    --p-mark-corner:         48%;
    --p-mark-diag:           100%;




































    --p-table-line:           color-mix(in srgb, var(--p-color-border) 75%, transparent);
    --p-table-line-v:         color-mix(in srgb, var(--p-color-border) 55%, transparent);



    --p-strip-divider: color-mix(in srgb, var(--p-color-primary) 35%, transparent);




    --p-table-zebra:         color-mix(in srgb, var(--p-tone-source) 3%, var(--p-table-surface));
    --p-color-accent:        var(--p-color-primary);
    --p-color-on-surface-mix:#ffffff;
    --p-color-shadow:        rgba(0, 0, 0, 0.08);

















    --p-ink-gray-l: 60%;





    --p-color-sidebar-fg:        color-mix(in srgb, var(--p-color-text) 70%, var(--p-color-text-muted));
    --p-color-sidebar-active-fg: var(--p-color-text);
    --p-color-sidebar-hover-bg:  var(--p-state-quiet);
    --p-color-sidebar-border:    color-mix(in srgb, var(--p-tone-source) 15%, var(--p-color-border));
    --p-color-sidebar-faint:     var(--p-state-active);
    --p-font-system:         system-ui, -apple-system, sans-serif;







    --p-scrollbar-size: 16px;




    --p-ctx-row-h: 28px;
    color-scheme: light;
}




::-webkit-scrollbar { width: var(--p-scrollbar-size); height: var(--p-scrollbar-size); }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, var(--p-color-text-muted) 32%, transparent);
    border: 3px solid transparent;
    background-clip: content-box;
    border-radius: calc(var(--p-scrollbar-size) / 2);
}
::-webkit-scrollbar-thumb:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 55%, transparent);
    background-clip: content-box;
}
::-webkit-scrollbar-corner { background: transparent; }










html { scrollbar-color: color-mix(in srgb, var(--p-color-text-muted) 40%, transparent) transparent; }








:root[data-plain] { --p-chrome-eff: 0%; }



.p-user-menu-check {
    display: flex; align-items: center; gap: 8px;
    margin-top: 8px; cursor: pointer;
    font-size: 11px; color: var(--p-color-text-muted);
}
.p-user-menu-check input { margin: 0; }





.p-lang-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;


    min-width: 16px;
    height: 16px;
    font-size: 10px;


    font-weight: 500;
    letter-spacing: 0.2px;
    color: currentColor;
    font-family: var(--p-font);
}

.p-culture-row .p-lang-badge {
    width: auto;
    min-width: 26px;
    height: 18px;
    padding: 0 5px;
    background: color-mix(in srgb, var(--p-color-text) 10%, transparent);
    color: var(--p-color-text);
    border-radius: var(--p-radius-chip);
}


.p-culture-row {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 5px 10px;
    background: transparent;
    border: none;
    border-radius: var(--p-radius);
    cursor: pointer;
    text-align: start;
    transition: background var(--p-motion-fast);
}
.p-culture-row:hover { background: color-mix(in srgb, var(--p-color-text) 5%, transparent); }
.p-culture-row.p-culture-row--active {
    background: var(--p-state-active);
}
.p-culture-row-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
    flex: 1;
}
.p-culture-row-main {
    font-size: 13px;
    color: var(--p-color-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}




.p-color-popover-grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 5px;
}




.p-color-popover-axes {
    display: grid;
    grid-template-columns: max-content 1fr;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    padding-top: 8px;
    border-top: 1px solid var(--p-color-border);
}
.p-color-popover-axes-label {
    font-size: 11px;
    color: var(--p-color-text-muted);
}

.p-color-popover-axes .p-range { width: 100%; }


@media (pointer: fine) { .p-zoom-row { display: none; } }




.p-user-menu-reset {
    display: block;
    width: 100%;
    margin-top: 8px;
    padding: 6px 0 0;
    font-size: 11px;
    color: var(--p-color-text-muted);
    background: transparent;
    border: none;
    border-top: 1px solid var(--p-color-border);
    cursor: pointer;
}
.p-user-menu-reset:hover { color: var(--p-color-text); }
.p-color-popover-swatch {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: none;
    outline: none;


    background: oklch(from var(--swatch) 65% c h);
    cursor: pointer;
    padding: 0;
    transition: transform var(--p-motion-fast);
}
.p-color-popover-swatch:hover,
.p-color-popover-swatch:focus { transform: scale(1.15); outline: none; }
.p-color-popover-swatch.p-color-popover-swatch--active {
    transform: scale(1.15);
}



.p-color-popover-custom {
    position: relative;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    cursor: pointer;
    overflow: hidden;
    background: conic-gradient(
        hsl(0 65% 38%), hsl(60 65% 38%), hsl(120 65% 38%),
        hsl(180 65% 38%), hsl(240 65% 38%), hsl(300 65% 38%), hsl(360 65% 38%));
    transition: transform var(--p-motion-fast);
}
.p-color-popover-custom:hover,
.p-color-popover-custom:focus-within,
.p-color-popover-custom.p-color-popover-swatch--active { transform: scale(1.15); }

.p-color-popover-custom input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: none;
    opacity: 0;
    cursor: pointer;
}

.p-color-popover-hex {
    grid-column: 3 / -1;
    min-width: 0;
    min-height: 0;
    height: 22px;
    padding: 0 6px;
    font: 12px var(--p-font-mono);
}


.p-wallpaper-opt {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 5px 10px;
    background: transparent;
    border: none;
    border-radius: var(--p-radius);
    cursor: pointer;
    text-align: start;
    color: var(--p-color-text);
    transition: background var(--p-motion-fast);
}
.p-wallpaper-opt:hover,
.p-wallpaper-opt:focus { outline: none; background: color-mix(in srgb, var(--p-color-text) 5%, transparent); }
.p-wallpaper-opt.p-wallpaper-opt--active { background: var(--p-state-active); }
.p-wallpaper-opt i { display: inline-flex; flex-shrink: 0; color: var(--p-color-text-muted); }
.p-wallpaper-opt.p-wallpaper-opt--active i { color: var(--p-text-accent); }
.p-wallpaper-opt svg { width: 16px; height: 16px; }
.p-wallpaper-opt-name {
    flex: 1;
    min-width: 0;
    font-size: 13px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}













:root[data-theme="dark"] {















    --p-chrome-base:         min(8%, var(--p-chrome-eff));
    --p-assistant-sheet:     var(--p-surface-panel);
    --p-ink-gray-l: 75%;
    --p-color-on-surface-mix:#161f2c;
    --p-color-shadow:        rgba(0, 0, 0, 0.4);




    --p-color-brand:         color-mix(in srgb, var(--p-color-brand-source) 40%, #1a1f2a);


    --p-color-sidebar-fg:        #c9d3e0;

    --p-color-sidebar-active-fg: #e9eff5;
    --p-color-sidebar-hover-bg:  rgba(255, 255, 255, 0.08);
    --p-color-sidebar-border:    rgba(255, 255, 255, 0.08);
    --p-color-sidebar-faint:     rgba(255, 255, 255, 0.08);
    --p-mark-corner:             100%;
    --p-mark-diag:               48%;
    color-scheme: dark;
}


@media (prefers-color-scheme: dark) {
    :root[data-theme="auto"] {


        --p-chrome-base:         min(8%, var(--p-chrome-eff));
    --p-assistant-sheet:     var(--p-surface-panel);
    --p-ink-gray-l: 75%;
    --p-color-on-surface-mix:#161f2c;
    --p-color-shadow:        rgba(0, 0, 0, 0.4);
    --p-color-brand:         color-mix(in srgb, var(--p-color-brand-source) 40%, #1a1f2a);
    --p-color-sidebar-fg:        #c9d3e0;
    --p-color-sidebar-active-fg: #e9eff5;
    --p-color-sidebar-hover-bg:  rgba(255, 255, 255, 0.08);
    --p-color-sidebar-border:    rgba(255, 255, 255, 0.08);
    --p-color-sidebar-faint:     rgba(255, 255, 255, 0.08);
    --p-mark-corner:             100%;
    --p-mark-diag:               48%;
    color-scheme: dark;
}
}




















:root[data-theme="half-dark"] {



















    --p-halfdark-base: #0f161f;




    --p-mosaic-strength: 6;



    --p-halfdark-panel: color-mix(in srgb, #ffffff 8%, var(--p-surface-chassis));






    --p-halfdark-tree: color-mix(in srgb, #ffffff 12%, var(--p-surface-chassis));
    --p-assistant-sheet: var(--p-halfdark-panel);



    --p-halfdark-strip: color-mix(in srgb, #ffffff 4%, var(--p-surface-chassis));



    --p-color-sidebar-fg:        #e6eaee;
    --p-color-sidebar-active-fg: #ffffff;
    --p-color-sidebar-hover-bg:  rgba(255, 255, 255, 0.09);
    --p-color-sidebar-border:    rgba(255, 255, 255, 0.10);
    --p-color-sidebar-faint:     rgba(255, 255, 255, 0.09);
}

:root[data-theme="half-dark"] :is(.p-sidebar, #p-desktop-tabs .p-tab, .p-desktop) {
    --p-mark-corner: 100%;
    --p-mark-diag:   48%;
}


























:root[data-theme="half-dark"] .p-nav-filter {
    background: var(--p-halfdark-strip);
}



:root[data-theme="half-dark"] .pp-tools {
    --p-surface-chassis: var(--p-halfdark-strip);
    background: var(--p-surface-chassis);
}




:root[data-theme="half-dark"] :is(.p-ctx-bar, .p-ctx-row, .p-sidebar-nav) {
    --p-surface-chassis:      var(--p-halfdark-panel);
    --p-accent-muted:         color-mix(in srgb, var(--p-accent-solid) 16%, var(--p-surface-chassis));
    --p-accent-muted-hover:   color-mix(in srgb, var(--p-accent-solid) 21%, var(--p-surface-chassis));
    --p-accent-soft:          color-mix(in srgb, var(--p-accent-solid) 10%, var(--p-surface-chassis));
    --p-accent-soft-hover:    color-mix(in srgb, var(--p-accent-solid) 15%, var(--p-surface-chassis));
    --p-accent-tonal:         color-mix(in srgb, var(--p-accent-solid) 12%, var(--p-surface-chassis));
    --p-accent-tonal-hover:   color-mix(in srgb, var(--p-accent-solid) 17%, var(--p-surface-chassis));
    --p-surface-raised:       color-mix(in srgb, #ffffff 7%, var(--p-surface-chassis));
    --p-soft-danger:          var(--p-soft-30);
    --p-soft-success:         var(--p-soft-165);
    --p-soft-warn:            var(--p-soft-75);
    --p-soft-info:            var(--p-soft-255);
    --p-soft-0:   color-mix(in srgb, var(--p-ink-0)   13%, var(--p-surface-raised)); --p-soft-15:  color-mix(in srgb, var(--p-ink-15)  13%, var(--p-surface-raised));
    --p-soft-30:  color-mix(in srgb, var(--p-ink-30)  13%, var(--p-surface-raised)); --p-soft-45:  color-mix(in srgb, var(--p-ink-45)  13%, var(--p-surface-raised));
    --p-soft-60:  color-mix(in srgb, var(--p-ink-60)  13%, var(--p-surface-raised)); --p-soft-75:  color-mix(in srgb, var(--p-ink-75)  13%, var(--p-surface-raised));
    --p-soft-90:  color-mix(in srgb, var(--p-ink-90)  13%, var(--p-surface-raised)); --p-soft-105: color-mix(in srgb, var(--p-ink-105) 13%, var(--p-surface-raised));
    --p-soft-120: color-mix(in srgb, var(--p-ink-120) 13%, var(--p-surface-raised)); --p-soft-135: color-mix(in srgb, var(--p-ink-135) 13%, var(--p-surface-raised));
    --p-soft-150: color-mix(in srgb, var(--p-ink-150) 13%, var(--p-surface-raised)); --p-soft-165: color-mix(in srgb, var(--p-ink-165) 13%, var(--p-surface-raised));
    --p-soft-180: color-mix(in srgb, var(--p-ink-180) 13%, var(--p-surface-raised)); --p-soft-195: color-mix(in srgb, var(--p-ink-195) 13%, var(--p-surface-raised));
    --p-soft-210: color-mix(in srgb, var(--p-ink-210) 13%, var(--p-surface-raised)); --p-soft-225: color-mix(in srgb, var(--p-ink-225) 13%, var(--p-surface-raised));
    --p-soft-240: color-mix(in srgb, var(--p-ink-240) 13%, var(--p-surface-raised)); --p-soft-255: color-mix(in srgb, var(--p-ink-255) 13%, var(--p-surface-raised));
    --p-soft-270: color-mix(in srgb, var(--p-ink-270) 13%, var(--p-surface-raised)); --p-soft-285: color-mix(in srgb, var(--p-ink-285) 13%, var(--p-surface-raised));
    --p-soft-300: color-mix(in srgb, var(--p-ink-300) 13%, var(--p-surface-raised)); --p-soft-315: color-mix(in srgb, var(--p-ink-315) 13%, var(--p-surface-raised));
    --p-soft-330: color-mix(in srgb, var(--p-ink-330) 13%, var(--p-surface-raised)); --p-soft-345: color-mix(in srgb, var(--p-ink-345) 13%, var(--p-surface-raised));
    --p-soft-gray: color-mix(in srgb, var(--p-ink-gray) 13%, var(--p-surface-raised)); --p-soft-theme: color-mix(in srgb, var(--p-ink-theme) 13%, var(--p-surface-raised));
}


:root[data-theme="half-dark"] .p-sidebar:has(> .p-sidebar-bg) .p-nav-filter {
    background: color-mix(in srgb, var(--p-halfdark-strip) 75%, transparent);
}


.p-sidebar:has(> .p-sidebar-bg) .p-sidebar-footer {
    background: color-mix(in srgb, var(--p-surface-chassis) 50%, transparent);
    backdrop-filter: blur(10px) saturate(1.1); -webkit-backdrop-filter: blur(10px) saturate(1.1);
}











:root[data-theme="half-dark"] :is(.p-appshell-frame, .p-desktop-page-frame) {
    color-scheme: light;
}






:root[data-theme="half-dark"]:has(> body.p-frame-body) { background: var(--p-surface-frame); }



:root[data-theme="half-dark"]:has(> body.p-frame-body .p-desktop) { background: var(--p-surface-chassis); }
:root[data-theme="half-dark"] body.p-frame-body:has(.p-desktop) { background: var(--p-surface-chassis); }



:root:has(> body.p-wallpaper-body), :root[data-theme]:has(> body.p-wallpaper-body) { background: transparent; }





:root[data-theme="half-dark"] .p-tooltip { color: #f2f4f6; }







:root[data-theme="half-dark"] :is(.p-sidebar, .p-desktop-topbar, .p-desktop-statusbar, .p-desktop, #p-pilot, #pp-split) {
    --p-color-text:           #e3e8ee;





    --p-accent-ghost-fg:      var(--p-color-text-muted);
    --p-accent-muted-fg:      var(--p-color-text);
    --p-accent-soft-fg:       var(--p-color-text);








    --p-color-text-muted:     #b9c2cd;






    --p-surface-sheet:        var(--p-halfdark-panel);






    --p-table-surface:        var(--p-surface-sheet);
    --p-table-zebra:          color-mix(in srgb, var(--p-tone-source) 3%, var(--p-table-surface));
    --p-table-header-surface: color-mix(in srgb, #ffffff 7%, var(--p-surface-sheet));




    --p-color-border:         rgba(255, 255, 255, 0.12);




    --p-surface-raised:       color-mix(in srgb, #ffffff 7%, var(--p-surface-chassis));
    --p-soft-0:   color-mix(in srgb, var(--p-ink-0)   13%, var(--p-surface-raised)); --p-soft-15:  color-mix(in srgb, var(--p-ink-15)  13%, var(--p-surface-raised));
    --p-soft-30:  color-mix(in srgb, var(--p-ink-30)  13%, var(--p-surface-raised)); --p-soft-45:  color-mix(in srgb, var(--p-ink-45)  13%, var(--p-surface-raised));
    --p-soft-60:  color-mix(in srgb, var(--p-ink-60)  13%, var(--p-surface-raised)); --p-soft-75:  color-mix(in srgb, var(--p-ink-75)  13%, var(--p-surface-raised));
    --p-soft-90:  color-mix(in srgb, var(--p-ink-90)  13%, var(--p-surface-raised)); --p-soft-105: color-mix(in srgb, var(--p-ink-105) 13%, var(--p-surface-raised));
    --p-soft-120: color-mix(in srgb, var(--p-ink-120) 13%, var(--p-surface-raised)); --p-soft-135: color-mix(in srgb, var(--p-ink-135) 13%, var(--p-surface-raised));
    --p-soft-150: color-mix(in srgb, var(--p-ink-150) 13%, var(--p-surface-raised)); --p-soft-165: color-mix(in srgb, var(--p-ink-165) 13%, var(--p-surface-raised));
    --p-soft-180: color-mix(in srgb, var(--p-ink-180) 13%, var(--p-surface-raised)); --p-soft-195: color-mix(in srgb, var(--p-ink-195) 13%, var(--p-surface-raised));
    --p-soft-210: color-mix(in srgb, var(--p-ink-210) 13%, var(--p-surface-raised)); --p-soft-225: color-mix(in srgb, var(--p-ink-225) 13%, var(--p-surface-raised));
    --p-soft-240: color-mix(in srgb, var(--p-ink-240) 13%, var(--p-surface-raised)); --p-soft-255: color-mix(in srgb, var(--p-ink-255) 13%, var(--p-surface-raised));
    --p-soft-270: color-mix(in srgb, var(--p-ink-270) 13%, var(--p-surface-raised)); --p-soft-285: color-mix(in srgb, var(--p-ink-285) 13%, var(--p-surface-raised));
    --p-soft-300: color-mix(in srgb, var(--p-ink-300) 13%, var(--p-surface-raised)); --p-soft-315: color-mix(in srgb, var(--p-ink-315) 13%, var(--p-surface-raised));
    --p-soft-330: color-mix(in srgb, var(--p-ink-330) 13%, var(--p-surface-raised)); --p-soft-345: color-mix(in srgb, var(--p-ink-345) 13%, var(--p-surface-raised));
    --p-soft-gray: color-mix(in srgb, var(--p-ink-gray) 13%, var(--p-surface-raised)); --p-soft-theme: color-mix(in srgb, var(--p-ink-theme) 13%, var(--p-surface-raised));
    --p-color-hover:          rgba(255, 255, 255, 0.08);
    --p-color-on-surface-mix: #161f2c;
    --p-color-shadow:         rgba(0, 0, 0, 0.4);






    --p-shadow-raised: 0 1px 3px   var(--p-color-shadow);
    --p-shadow-float:  0 4px 12px  rgb(from var(--p-color-shadow) r g b / calc(alpha * 1.6));
    --p-shadow-drag:   0 6px 20px  rgb(from var(--p-color-shadow) r g b / calc(alpha * 2.2));
    --p-shadow-modal:  0 12px 40px rgb(from var(--p-color-shadow) r g b / calc(alpha * 3));

    --p-color-primary:        color-mix(in srgb, var(--p-color-primary-light) 80%, #ffffff);






    --p-fill-l:               75%;
    --p-ink-l:                75%;
    --p-ink-gray-l:           75%;
    --p-icon-outline:         #4a5260;







    --p-ink-0:       oklch(72.0% 0.187 0);
    --p-ink-15:      oklch(72.0% 0.173 15);
    --p-ink-30:      oklch(72.0% 0.171 30);
    --p-ink-45:      oklch(72.0% 0.181 45);
    --p-ink-60:      oklch(74.5% 0.171 60);
    --p-ink-75:      oklch(77.7% 0.161 75);
    --p-ink-90:      oklch(80.0% 0.160 90);
    --p-ink-105:     oklch(79.5% 0.165 105);
    --p-ink-120:     oklch(77.5% 0.180 120);
    --p-ink-135:     oklch(75.5% 0.200 135);
    --p-ink-150:     oklch(72.5% 0.190 150);
    --p-ink-165:     oklch(72.0% 0.147 165);
    --p-ink-180:     oklch(72.0% 0.128 180);
    --p-ink-195:     oklch(72.0% 0.120 195);
    --p-ink-210:     oklch(72.0% 0.122 210);
    --p-ink-225:     oklch(72.0% 0.134 225);
    --p-ink-240:     oklch(72.0% 0.159 240);
    --p-ink-255:     oklch(72.0% 0.145 255);
    --p-ink-270:     oklch(72.0% 0.142 270);
    --p-ink-285:     oklch(72.0% 0.149 285);
    --p-ink-300:     oklch(72.0% 0.169 300);
    --p-ink-315:     oklch(72.0% 0.211 315);
    --p-ink-330:     oklch(72.0% 0.236 330);
    --p-ink-345:     oklch(72.0% 0.218 345);
    --p-text-0:      oklch(75.0% 0.161 0);
    --p-text-15:     oklch(75.0% 0.149 15);
    --p-text-30:     oklch(75.0% 0.148 30);
    --p-text-45:     oklch(75.0% 0.157 45);
    --p-text-60:     oklch(75.0% 0.172 60);
    --p-text-75:     oklch(75.0% 0.155 75);
    --p-text-90:     oklch(75.0% 0.150 90);
    --p-text-105:    oklch(75.0% 0.156 105);
    --p-text-120:    oklch(75.0% 0.175 120);
    --p-text-135:    oklch(75.0% 0.200 135);
    --p-text-150:    oklch(75.0% 0.190 150);
    --p-text-165:    oklch(75.0% 0.147 165);
    --p-text-180:    oklch(75.0% 0.133 180);
    --p-text-195:    oklch(75.0% 0.125 195);
    --p-text-210:    oklch(75.0% 0.127 210);
    --p-text-225:    oklch(75.0% 0.139 225);
    --p-text-240:    oklch(75.0% 0.141 240);
    --p-text-255:    oklch(75.0% 0.128 255);
    --p-text-270:    oklch(75.0% 0.125 270);
    --p-text-285:    oklch(75.0% 0.131 285);
    --p-text-300:    oklch(75.0% 0.149 300);
    --p-text-315:    oklch(75.0% 0.186 315);
    --p-text-330:    oklch(75.0% 0.236 330);
    --p-text-345:    oklch(75.0% 0.188 345);
    --p-fill-0:      oklch(75.0% 0.161 0);
    --p-fill-15:     oklch(75.0% 0.149 15);
    --p-fill-30:     oklch(75.0% 0.148 30);
    --p-fill-45:     oklch(75.0% 0.157 45);
    --p-fill-60:     oklch(75.0% 0.172 60);
    --p-fill-75:     oklch(75.0% 0.155 75);
    --p-fill-90:     oklch(75.0% 0.150 90);
    --p-fill-105:    oklch(75.0% 0.156 105);
    --p-fill-120:    oklch(75.0% 0.175 120);
    --p-fill-135:    oklch(75.0% 0.200 135);
    --p-fill-150:    oklch(75.0% 0.190 150);
    --p-fill-165:    oklch(75.0% 0.147 165);
    --p-fill-180:    oklch(75.0% 0.133 180);
    --p-fill-195:    oklch(75.0% 0.125 195);
    --p-fill-210:    oklch(75.0% 0.127 210);
    --p-fill-225:    oklch(75.0% 0.139 225);
    --p-fill-240:    oklch(75.0% 0.141 240);
    --p-fill-255:    oklch(75.0% 0.128 255);
    --p-fill-270:    oklch(75.0% 0.125 270);
    --p-fill-285:    oklch(75.0% 0.131 285);
    --p-fill-300:    oklch(75.0% 0.149 300);
    --p-fill-315:    oklch(75.0% 0.186 315);
    --p-fill-330:    oklch(75.0% 0.236 330);
    --p-fill-345:    oklch(75.0% 0.188 345);
    --p-fill-fg-0:   var(--p-fill-fg);
    --p-fill-fg-15:  var(--p-fill-fg);
    --p-fill-fg-30:  var(--p-fill-fg);
    --p-fill-fg-45:  var(--p-fill-fg);
    --p-fill-fg-60:  var(--p-fill-fg);
    --p-fill-fg-75:  var(--p-fill-fg);
    --p-fill-fg-90:  var(--p-fill-fg);
    --p-fill-fg-105: var(--p-fill-fg);
    --p-fill-fg-120: var(--p-fill-fg);
    --p-fill-fg-135: var(--p-fill-fg);
    --p-fill-fg-150: var(--p-fill-fg);
    --p-fill-fg-165: var(--p-fill-fg);
    --p-fill-fg-180: var(--p-fill-fg);
    --p-fill-fg-195: var(--p-fill-fg);
    --p-fill-fg-210: var(--p-fill-fg);
    --p-fill-fg-225: var(--p-fill-fg);
    --p-fill-fg-240: var(--p-fill-fg);
    --p-fill-fg-255: var(--p-fill-fg);
    --p-fill-fg-270: var(--p-fill-fg);
    --p-fill-fg-285: var(--p-fill-fg);
    --p-fill-fg-300: var(--p-fill-fg);
    --p-fill-fg-315: var(--p-fill-fg);
    --p-fill-fg-330: var(--p-fill-fg);
    --p-fill-fg-345: var(--p-fill-fg);
    --p-color-danger: var(--p-ink-30);
    --p-ink-danger:  var(--p-ink-30);
    --p-text-danger: var(--p-text-30);
    --p-fill-danger: var(--p-fill-30);
    --p-fill-fg-danger: var(--p-fill-fg-30);
    --p-soft-danger: var(--p-soft-30);
    --p-color-warn:  var(--p-ink-75);
    --p-ink-warn:    var(--p-ink-75);
    --p-text-warn:   var(--p-text-75);
    --p-fill-warn:   var(--p-fill-75);
    --p-fill-fg-warn: var(--p-fill-fg-75);
    --p-soft-warn:   var(--p-soft-75);
    --p-color-success: var(--p-ink-165);
    --p-ink-success: var(--p-ink-165);
    --p-text-success: var(--p-text-165);
    --p-fill-success: var(--p-fill-165);
    --p-fill-fg-success: var(--p-fill-fg-165);
    --p-soft-success: var(--p-soft-165);
    --p-color-info:  var(--p-ink-255);
    --p-ink-info:    var(--p-ink-255);
    --p-text-info:   var(--p-text-255);
    --p-fill-info:   var(--p-fill-255);
    --p-fill-fg-info: var(--p-fill-fg-255);
    --p-soft-info:   var(--p-soft-255);

    --p-ink-gray:  oklch(var(--p-ink-gray-l) 0.02 264);
    --p-ink-theme: oklch(from var(--p-color-primary) var(--p-ink-l) c h);



    --p-fill-fg:              #1a1a1a;




    --p-accent-solid-fg:      var(--p-fill-fg);


    --p-text-l:               75%;

    --p-color-link:           var(--p-text-255);
    --p-text-accent:          oklch(from var(--p-color-primary) var(--p-text-l) c h);







    --p-tone-source: color-mix(in srgb,
        oklch(from var(--p-color-primary-light) l calc(c * clamp(0, var(--p-surface-tone), 2)) h) calc(clamp(0, var(--p-surface-tone), 1) * 100%),
        oklch(from var(--p-color-primary-light) l 0.02 250));






    color-scheme: dark;



    --p-color-accent:         var(--p-color-primary);


    --p-accent-ghost-fg:      var(--p-color-text-muted);
    --p-accent-ghost-hover:   color-mix(in srgb, var(--p-color-primary) 10%, transparent);




    --p-surface-frame:        color-mix(in srgb, #000000 calc(var(--p-chrome-eff) * 2), var(--p-surface-chassis));
    --p-accent-solid:         oklch(from var(--p-color-primary) var(--p-fill-l) c h);







    --p-accent-muted:         color-mix(in srgb, var(--p-accent-solid) 16%, var(--p-surface-chassis));
    --p-accent-muted-hover:   color-mix(in srgb, var(--p-accent-solid) 21%, var(--p-surface-chassis));
    --p-accent-muted-fg:      var(--p-color-text);
    --p-accent-muted-border:  color-mix(in srgb, var(--p-accent-solid) 45%, transparent);
    --p-accent-plain:         var(--p-surface-raised);
    --p-accent-plain-fg:      var(--p-color-text);
    --p-accent-plain-border:  var(--p-color-border);
    --p-accent-plain-hover:   color-mix(in srgb, var(--p-color-primary) 10%, var(--p-surface-raised));

    --p-accent-soft:          color-mix(in srgb, var(--p-accent-solid) 10%, var(--p-surface-chassis));
    --p-accent-soft-fg:       var(--p-color-text);
    --p-accent-soft-hover:    color-mix(in srgb, var(--p-accent-solid) 15%, var(--p-surface-chassis));

    --p-accent-tonal:         color-mix(in srgb, var(--p-accent-solid) 12%, var(--p-surface-chassis));
    --p-accent-tonal-fg:      var(--p-accent-solid);
    --p-accent-tonal-hover:   color-mix(in srgb, var(--p-accent-solid) 17%, var(--p-surface-chassis));
}








:root[data-theme="half-dark"] {





    --p-g-strip:   color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-eff) / 2), #b3b7bd);



    --p-g-toolbar:   color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-eff) / 2), #c2c6cb);
    --p-g-prefilter: color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-eff) / 2), #d0d4d9);
    --p-g-group:     color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-eff) / 2), #dadde1);



    --p-strip-divider: color-mix(in srgb, #ffffff 30%, var(--p-surface-chassis));
}
:root[data-theme="half-dark"] .p-page-header {




    --p-page-header-surface: var(--p-halfdark-tree);
    background: var(--p-page-header-surface);


    border-bottom-color: transparent;
    --p-color-text:       #eceef1;



    --p-color-text-muted: #d5d9de;
    --p-color-border:     rgba(255, 255, 255, 0.16);
    --p-surface-raised:   rgba(255, 255, 255, 0.10);
    --p-soft-danger:      var(--p-soft-30);
    --p-soft-success:     var(--p-soft-165);
    --p-soft-warn:        var(--p-soft-75);
    --p-soft-info:        var(--p-soft-255);
    --p-soft-0:   color-mix(in srgb, var(--p-ink-0)   13%, var(--p-surface-raised)); --p-soft-15:  color-mix(in srgb, var(--p-ink-15)  13%, var(--p-surface-raised));
    --p-soft-30:  color-mix(in srgb, var(--p-ink-30)  13%, var(--p-surface-raised)); --p-soft-45:  color-mix(in srgb, var(--p-ink-45)  13%, var(--p-surface-raised));
    --p-soft-60:  color-mix(in srgb, var(--p-ink-60)  13%, var(--p-surface-raised)); --p-soft-75:  color-mix(in srgb, var(--p-ink-75)  13%, var(--p-surface-raised));
    --p-soft-90:  color-mix(in srgb, var(--p-ink-90)  13%, var(--p-surface-raised)); --p-soft-105: color-mix(in srgb, var(--p-ink-105) 13%, var(--p-surface-raised));
    --p-soft-120: color-mix(in srgb, var(--p-ink-120) 13%, var(--p-surface-raised)); --p-soft-135: color-mix(in srgb, var(--p-ink-135) 13%, var(--p-surface-raised));
    --p-soft-150: color-mix(in srgb, var(--p-ink-150) 13%, var(--p-surface-raised)); --p-soft-165: color-mix(in srgb, var(--p-ink-165) 13%, var(--p-surface-raised));
    --p-soft-180: color-mix(in srgb, var(--p-ink-180) 13%, var(--p-surface-raised)); --p-soft-195: color-mix(in srgb, var(--p-ink-195) 13%, var(--p-surface-raised));
    --p-soft-210: color-mix(in srgb, var(--p-ink-210) 13%, var(--p-surface-raised)); --p-soft-225: color-mix(in srgb, var(--p-ink-225) 13%, var(--p-surface-raised));
    --p-soft-240: color-mix(in srgb, var(--p-ink-240) 13%, var(--p-surface-raised)); --p-soft-255: color-mix(in srgb, var(--p-ink-255) 13%, var(--p-surface-raised));
    --p-soft-270: color-mix(in srgb, var(--p-ink-270) 13%, var(--p-surface-raised)); --p-soft-285: color-mix(in srgb, var(--p-ink-285) 13%, var(--p-surface-raised));
    --p-soft-300: color-mix(in srgb, var(--p-ink-300) 13%, var(--p-surface-raised)); --p-soft-315: color-mix(in srgb, var(--p-ink-315) 13%, var(--p-surface-raised));
    --p-soft-330: color-mix(in srgb, var(--p-ink-330) 13%, var(--p-surface-raised)); --p-soft-345: color-mix(in srgb, var(--p-ink-345) 13%, var(--p-surface-raised));
    --p-soft-gray: color-mix(in srgb, var(--p-ink-gray) 13%, var(--p-surface-raised)); --p-soft-theme: color-mix(in srgb, var(--p-ink-theme) 13%, var(--p-surface-raised));





    --p-accent-ghost-fg:  var(--p-color-text-muted);
    --p-accent-muted-fg:  var(--p-color-text);
    --p-accent-soft-fg:   var(--p-color-text);
    --p-accent-plain-fg:  var(--p-color-text);






    --p-accent-plain:        var(--p-surface-raised);
    --p-accent-plain-border: var(--p-color-border);
    --p-accent-plain-hover:  color-mix(in srgb, var(--p-color-primary) 10%, var(--p-surface-raised));
    --p-surface-raised-hover: color-mix(in srgb, var(--p-color-text) 6%, transparent);




    --p-header-accent:       oklch(from color-mix(in srgb, var(--p-color-primary-light) 80%, #ffffff) 75% c h);
    --p-accent-muted:        color-mix(in srgb, var(--p-header-accent) 16%, var(--p-page-header-surface));
    --p-accent-muted-hover:  color-mix(in srgb, var(--p-header-accent) 21%, var(--p-page-header-surface));
    --p-accent-muted-border: color-mix(in srgb, var(--p-header-accent) 45%, transparent);
    --p-accent-soft:         color-mix(in srgb, var(--p-header-accent) 10%, var(--p-page-header-surface));
    --p-accent-soft-hover:   color-mix(in srgb, var(--p-header-accent) 15%, var(--p-page-header-surface));

    color: var(--p-color-text);
}








:root[data-theme="half-dark"] .p-tabs-container--left  > .p-tabs,
:root[data-theme="half-dark"] .p-tabs-container--right > .p-tabs {
    --p-tabs-strip-bg: var(--p-surface-frame);
}









:root[data-theme="half-dark"] .p-tab { color: #3d4249; }
:root[data-theme="half-dark"] .p-tab[aria-selected="true"] { color: #1a1a1a; }




:root[data-theme="half-dark"] .p-tgaps { background: var(--p-table-header-surface); }




:root[data-theme="half-dark"] .p-tabs-chrome .p-tabs-container--top > .p-tabs > .p-tab[aria-selected="true"] {
    box-shadow: inset 0 2px 0 0 oklch(from var(--p-color-primary) 72% c h), var(--p-tab-ring, 0 0 transparent);
}

:root[data-theme="half-dark"] .p-tabs-chrome .p-tabs-container--inset > .p-tabs > .p-tab[aria-selected="true"] { --p-tab-ring: 0 0 transparent; }


:root[data-theme="half-dark"] .p-table-toolbar { color: #3d4249; }
:root[data-theme="half-dark"] .p-prefilter-bar { color: #3d4249; }
:root[data-theme="half-dark"] .p-groupbar      { --p-table-header-surface: var(--p-g-group); }

:root[data-theme="half-dark"] .p-table-host--loft .p-groupbar { --p-table-header-surface: var(--p-table-surface); }


:root[data-theme="half-dark"] .p-desktop-card {









    background: color-mix(in srgb, color-mix(in srgb, #ffffff 17%, var(--p-surface-chassis)) 62%, transparent);
    border-color: rgba(255, 255, 255, 0.14);
    --p-color-text:       #f0f2f5;
    --p-color-text-muted: #b9bfc7;
    color: var(--p-color-text);
}





:root[data-theme="half-dark"] .p-desktop-card:hover {
    background: color-mix(in srgb, color-mix(in srgb, #ffffff 26%, var(--p-surface-chassis)) 72%, transparent);
    border-color: color-mix(in srgb, var(--p-color-primary) 45%, transparent);
}


:root[data-theme="half-dark"] .module-header { background: var(--p-g-strip); --p-color-text-muted: #3d4249; }



:root[data-theme="half-dark"] .module-shared-strip { background: var(--p-table-header-surface); }
:root[data-theme="half-dark"] .module-shared-strip:hover { background: color-mix(in srgb, var(--p-color-primary) 8%, var(--p-table-header-surface)); }
:root[data-theme="half-dark"] .p-drilldown-strip {
    background: var(--p-g-strip);
    color: #3d4249;
}








:root[data-theme="half-dark"] .pageedit-toolbar {
    background: var(--p-g-strip);
    border-bottom-color: var(--p-color-border);




    --p-color-text-muted: #3d4249;
    --p-accent-ghost-fg:  var(--p-color-text-muted);
}
:root[data-theme="half-dark"] :is(.pageedit-tabs, .pageedit-diffbar) {
    background: var(--p-g-toolbar);
    border-bottom-color: var(--p-color-border);
}





:root[data-theme="half-dark"] :is(.pageedit-docs-split textarea, .pageedit-docs-preview,
                                 .pageedit-docs-addmenu-form input) {
    background: var(--p-surface-frame);
}




:root[data-theme="half-dark"] .p-combo-search { background: var(--p-surface-frame); }



:root[data-theme="half-dark"] .mdx-note--pub {
    background: var(--p-surface-frame);
    border-bottom-color: var(--p-color-border);
}





:root[data-theme="half-dark"] :is(.icx-root, .icx-toolbar),
:root[data-theme="half-dark"] main.p-content:has(> .icx-root) {
    background: var(--p-surface-frame);
}
:root[data-theme="half-dark"] .icx-toolbar { border-bottom-color: var(--p-color-border); }







:root[data-theme="half-dark"] .p-drilldown-strip:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 16%, var(--p-g-strip));
    color: #1a1a1a;
}



:root[data-theme="half-dark"] .studio-preview-bar {
    background: var(--p-g-toolbar);
    --p-color-text-muted: #3d4249;
}



:root[data-theme="half-dark"] .studio-preview { border-inline-start-color: var(--p-color-border); }
:root[data-theme="half-dark"] :is(.studio-toolbar, .studio-input) { border-top-color: var(--p-color-border); }




:root[data-theme="half-dark"] :is(.source-overlay-code,
    .dc-code, .ep-code, .ip-code, .lp-code, .pp-code, .tp-code, .wp-code, .xp-code) {
    background: var(--p-surface-frame);
}

:root[data-theme="half-dark"] .xp-tbl th { background: var(--p-table-header-surface); }



:root[data-theme="half-dark"] .p-file-item { background: var(--p-surface-frame); }


:root[data-theme="half-dark"] .p-color-swatch:hover { background: var(--p-state-quiet); }





:root[data-theme="half-dark"] .p-desktop-grid {
    scrollbar-color: color-mix(in srgb, var(--p-color-sidebar-fg) 35%, transparent) transparent;
}





:root[data-theme="half-dark"] #p-desktop-tabs .p-tab[style*="--pt-tint"] {
    --p-accent-soft:        color-mix(in srgb, var(--p-accent-solid) 10%, var(--p-surface-chassis));
    --p-accent-muted:       color-mix(in srgb, var(--p-accent-solid) 16%, var(--p-surface-chassis));
    --p-accent-muted-hover: color-mix(in srgb, var(--p-accent-solid) 21%, var(--p-surface-chassis));
}








:root[data-theme="half-dark"] #p-desktop-tabs :is(.p-tab, .p-tabs-more)  { --p-tab-plate: color-mix(in srgb, var(--p-color-sidebar-fg) 3%, transparent); }
:root[data-theme="half-dark"] #p-desktop-tabs .p-tab--live                { --p-tab-plate: color-mix(in srgb, var(--p-color-sidebar-fg) 8%, transparent); }
:root[data-theme="half-dark"] #p-desktop-tabs .p-tab[style*="--pt-tint"] { --p-tab-plate: color-mix(in srgb, var(--p-accent-solid) 3%, var(--p-surface-chassis)); }
:root[data-theme="half-dark"] #p-desktop-tabs .p-tab--live[style*="--pt-tint"] { --p-tab-plate: color-mix(in srgb, var(--p-accent-solid) 7%, var(--p-surface-chassis)); }
:root[data-theme="half-dark"] #p-desktop-tabs :is(.p-tab, .p-tabs-more):not([aria-selected="true"]) { background: var(--p-tab-plate); }
:root[data-theme="half-dark"] #p-desktop-tabs .p-tab[aria-selected="true"]:not([style*="--pt-tint"]) {
    --p-tab-plate: color-mix(in srgb, var(--p-color-sidebar-fg) 20%, transparent);
    background: var(--p-tab-plate);
}
:root[data-theme="half-dark"] #p-desktop-tabs .p-tab[aria-selected="true"]:not([style*="--pt-tint"]):hover {
    background: color-mix(in srgb, var(--p-color-sidebar-fg) 24%, transparent);
}
:root[data-theme="half-dark"] #p-desktop-tabs :is(.p-tab, .p-tabs-more):not([aria-selected="true"]):not([style*="--pt-tint"]):hover {
    background: color-mix(in srgb, var(--p-color-sidebar-fg) 16%, transparent);
}
:root[data-theme="half-dark"] #p-desktop-tabs .p-tab[style*="--pt-tint"]:not([aria-selected="true"]):hover {
    background: color-mix(in srgb, var(--p-accent-solid) 14%, var(--p-surface-chassis));
}

html, body {
    height: 100%;
    font-family: var(--p-font);


    font-variant-numeric: tabular-nums;
    font-size: 14px;
    color: var(--p-color-text);
    background: var(--p-surface-chassis);









}







button, input, select, textarea {
    letter-spacing: inherit;
}






html[dir="rtl"] {
    letter-spacing: normal;
}









a:not([class]) { color: var(--p-color-link); }
body.p-shell-body {
    display: flex;
















    height: 100vh;
    height: 100dvh;
    height: var(--p-shell-h, 100dvh);
    overflow: hidden;
}

.p-shell-right {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    position: relative;
}



.p-sidebar {




    --p-nav-zone-gap: 6px;
    width: var(--p-sidebar-width);
    height: 100vh;
    height: 100dvh;


    background: var(--p-surface-chassis);
    color: var(--p-color-sidebar-fg);
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    overflow: hidden;
    position: relative;
    transition: width var(--p-motion-calm);
    border-inline-end: 1px solid var(--p-color-sidebar-border);
    user-select: none;
    -webkit-user-select: none;
}

.p-sidebar .p-nav-filter-input { user-select: text; -webkit-user-select: text; }






.p-sidebar-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    color: var(--p-color-sidebar-fg);
}

.p-sidebar-bg-svg { position: absolute; top: 0; left: 0; width: 100%; height: calc(100% + 220px); will-change: transform; }
.p-sidebar-header,
.p-sidebar-nav,
.p-sidebar-footer,
.p-ctx-bar,
.p-ctx-row,
.p-side-tabs,
.p-nav-filter { position: relative; z-index: 1; }






.p-bg-frame { border: 0; width: 100%; height: 100%; pointer-events: none; display: block; }






.p-content--bg:has(.p-desktop), body.p-frame-body .p-content.p-content--bg:has(.p-desktop) { background: var(--p-surface-chassis); }
.p-content--bg > .p-content-bg { position: absolute; inset: 0; z-index: 0; }

.p-content--wallpaper { padding: 0; overflow: hidden; }


.p-content--bg .p-desktop { background: transparent; }
.p-content--bg .p-desktop > .p-desktop-bg { display: none; }
.p-content--bg .p-desktop-grid { background: transparent; }
.p-content--bg .p-desktop-mosaic { display: none; }










.p-desktop-topbar--bg { background: var(--p-surface-chassis); position: relative; }
.p-desktop-topbar--bg > .p-desktop-topbar-bg { position: absolute; inset: 0; z-index: 0; }
.p-desktop-topbar--bg > :not(.p-desktop-topbar-bg) { position: relative; z-index: 1; }














.p-resize,
.p-resize-x,
.p-resize-y {
    background: transparent;
    user-select: none;
    touch-action: none;
    transition: background var(--p-motion-fast);
}




.p-resize-x { width: 6px;  cursor: ew-resize; }
.p-resize-y { height: 6px; cursor: ns-resize; }
.p-resize:hover, .p-resize.is-dragging,
.p-resize-x:hover, .p-resize-x.is-dragging,
.p-resize-y:hover, .p-resize-y.is-dragging,
.p-resize:focus-visible, .p-resize-x:focus-visible, .p-resize-y:focus-visible {
    background: color-mix(in srgb, var(--p-color-primary) 40%, transparent);
}


[data-p-splitter]:focus-visible { outline: none; }








.p-splitter-toggle {
    position: absolute; z-index: 2; inset-inline: -7.5px; top: calc(50% - 16px); height: 32px;
    padding: 0; margin: 0; box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    border: 1px solid var(--p-color-border); border-radius: 8px;
    background: var(--p-surface-raised); color: var(--p-color-text-muted); box-shadow: var(--p-shadow-raised);
    cursor: pointer; opacity: 0; transition: opacity var(--p-motion-fast), color var(--p-motion-fast), background var(--p-motion-fast);
}
.p-splitter--y > .p-splitter-toggle { inset-inline: auto; inset-inline-start: calc(50% - 16px); width: 32px; inset-block: -7.5px; height: auto; }
.p-splitter:is(:hover, :focus-visible) > .p-splitter-toggle, .p-splitter-toggle:focus-visible { opacity: 1; }

.p-splitter--fixed { cursor: default; }
.p-splitter--fixed:not(.p-splitter--collapsed)::before { background: none; }
.p-splitter--fixed > .p-splitter-toggle { opacity: 1; }
.p-splitter-toggle:hover { color: var(--p-color-text); }
.p-splitter-toggle svg { width: 12px; height: 12px; flex: none; }
html[dir="rtl"] .p-splitter:not(.p-splitter--y) > .p-splitter-toggle svg { transform: scaleX(-1); }
:has(+ .p-splitter--collapsed) { display: none !important; }
.p-splitter.p-splitter--collapsed { cursor: pointer; }




.p-splitter--collapsed > .p-splitter-toggle {
    opacity: 1; inset-inline: 0 auto; width: 14px;
    border-inline-start: 0; border-start-start-radius: 0; border-end-start-radius: 0; }
.p-splitter--y.p-splitter--collapsed > .p-splitter-toggle {
    inset-inline: auto; inset-inline-start: calc(50% - 16px); width: 32px; inset-block: 0 auto; height: 14px;
    border-inline-start: 1px solid var(--p-color-border); border-block-start: 0;
    border-start-start-radius: 0; border-start-end-radius: 0; border-end-start-radius: 8px; }



@media (pointer: coarse) {
    .p-splitter-toggle::after { content: ""; position: absolute; inset: -14px; }
    .p-splitter--collapsed > .p-splitter-toggle::after { inset-block: -6px; inset-inline: 0 -30px; }
    .p-splitter--y.p-splitter--collapsed > .p-splitter-toggle::after { inset-inline: -6px; inset-block: 0 -30px; }
}





.p-sidebar-resize {
    position: fixed;
    top: 0;
    inset-inline-start: calc(var(--p-sidebar-width) - 3px);
    height: 100vh;
    height: 100dvh;
    z-index: 50;
    transition: background var(--p-motion-fast), inset-inline-start var(--p-motion-calm);
}

.p-sidebar--hidden ~ .p-sidebar-resize { display: none; }



.p-sidebar-resize-hide, .pp-split-hide {
    position: absolute; inset-inline: -5px; top: calc(50% - 16px); height: 32px; padding: 0; margin: 0; box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    border: 1px solid var(--p-color-border); border-radius: 8px;
    background: var(--p-surface-raised); color: var(--p-color-text-muted); box-shadow: var(--p-shadow-raised);
    cursor: pointer; opacity: 0; transition: opacity var(--p-motion-fast), color var(--p-motion-fast);
}
.p-sidebar-resize:is(:hover, :focus-visible) > .p-sidebar-resize-hide, .p-sidebar-resize-hide:focus-visible,
#pp-split:is(:hover, :focus-visible) > .pp-split-hide, .pp-split-hide:focus-visible { opacity: 1; }
:is(.p-sidebar-resize-hide, .pp-split-hide):hover { color: var(--p-color-text); }
:is(.p-sidebar-resize-hide, .pp-split-hide) svg { width: 12px; height: 12px; flex: none; }


:root[data-theme="half-dark"] :is(.p-sidebar-resize-hide, .pp-split-hide) {
    background: var(--p-halfdark-tree); border-color: var(--p-color-sidebar-border); box-shadow: none;
    color: color-mix(in srgb, var(--p-color-sidebar-fg) 70%, transparent);
}
:root[data-theme="half-dark"] :is(.p-sidebar-resize-hide, .pp-split-hide):hover { color: var(--p-color-sidebar-active-fg); }
html[dir="rtl"] :is(.p-sidebar-resize-hide, .pp-split-hide) svg { transform: scaleX(-1); }

.p-sidebar-resizing .p-sidebar,
.p-sidebar-resizing .p-shell-right,
.p-sidebar-resizing .p-sidebar-resize { transition: none !important; }


.p-sidebar--hidden {
    width: 0;






    border-inline-end-width: 0;
}





:root { --p-sidebar-peek-w: 6px; }
















:root {
    --p-desktop-pad: 2px;
    --p-strip-air: var(--p-desktop-pad);
    --p-strip-tab-h: calc(47px - 2 * var(--p-strip-air));


    --p-strip-icon: 24px;
}
.p-sidebar--autohide { width: var(--p-sidebar-peek-w); }
.p-sidebar--autohide.p-sidebar--peeking { width: var(--p-sidebar-width); }


.p-sidebar--autohide:not(.p-sidebar--peeking) { background: transparent; }


.p-sidebar--autohide:not(.p-sidebar--peeking) > * { opacity: 0; }
.p-sidebar--autohide::after {
    content: "";
    position: absolute;
    top: 0; left: 0; bottom: 0;
    width: 2px;
    background: var(--p-color-primary-light, #4b7bec);
    opacity: .3;
    pointer-events: none;
    z-index: 6;
    transition: opacity var(--p-motion-calm);
}
.p-sidebar--autohide.p-sidebar--peeking::after { opacity: 0; }

.p-sidebar--autohide ~ .p-sidebar-resize,
.p-sidebar--autohide ~ .p-sidebar-handle { display: none; }




html.p-preload .p-sidebar,
html.p-preload .p-shell-right { transition: none !important; }

.p-sidebar-header {
    height: 48px;
    display: flex;
    align-items: center;



    padding-block: 0;
    padding-inline: 10px 6px;
    gap: 2px;

    border-bottom: 1px solid var(--p-color-sidebar-border);
    flex-shrink: 0;
}

.p-logo-link {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: inherit;
    min-width: 0;
}

button.p-logo-link {
    background: none;
    border: 0;
    padding: 0;
    font: inherit;
    text-align: start;
    cursor: pointer;
}





.p-desktop-bar-end {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: var(--p-desktop-pad);
    margin-inline: auto var(--p-strip-air);
}
.p-desktop-bar-end > .p-desktop-assistant-open { margin: 0; }


.p-shell-status {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 2px;
}
.p-shell-status-item {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: calc(2 * 12px + var(--p-strip-icon) + 2 * 1px);
    height: var(--p-strip-tab-h);
    padding: 0;
    border: 1px solid transparent;
    border-radius: var(--p-radius-card);
    background: transparent;
    color: var(--p-color-text-muted);
    cursor: default;
}
.p-shell-status-item[hidden] { display: none; }
.p-shell-status-item :is(i, svg) { width: 16px; height: 16px; display: block; }

.p-shell-status-item.p-zone-indicator { opacity: 0.6; }


.p-shell-status-item.p-shell-offline { color: var(--p-text-warn); }
.p-shell-status-item.p-shell-update { color: var(--p-color-accent, var(--p-color-primary)); cursor: pointer; transition: background var(--p-motion-fast); }
.p-shell-status-item.p-shell-update:hover { background: var(--p-state-hover); }



.p-logo-icon {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    color: var(--p-color-sidebar-active-fg);
}





.p-logo-icon {
    width: var(--p-strip-icon, 24px);
    justify-content: center;
}
.p-logo-icon svg,
.p-logo-icon img {
    width: 16px;
    height: 16px;
}




.p-logo {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .2px;
    color: var(--p-color-sidebar-active-fg);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
}




.p-logo-img {
    display: flex;
    align-items: center;
    height: 26px;
    min-width: 0;
    overflow: hidden;
}
.p-logo-img svg {
    display: block;
    height: 100%;
    width: auto;
    max-width: 100%;
    min-width: 0;
    flex-shrink: 1;
}





html[dir="rtl"] .p-ctxmenu-icon [data-picon="chevronRight"] > svg { transform: scaleX(-1); }

.p-sidebar-toggle {
    background: transparent;
    border: none;
    cursor: pointer;
    color: var(--p-color-sidebar-fg);
    opacity: 0.6;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: 0;
    border-radius: var(--p-radius);
    flex-shrink: 0;
    transition: color var(--p-motion-fast), background var(--p-motion-fast), opacity var(--p-motion-fast);
}

.p-sidebar-toggle:hover {
    color: var(--p-color-sidebar-active-fg);
    background: var(--p-color-sidebar-hover-bg);
    opacity: 1;
}

.p-sidebar-toggle svg {
    width: 16px;
    height: 16px;
}



:is(.p-sidebar-toggle, .p-sidebar-footer-icon) [data-picon] { width: 16px; height: 16px; }











.p-sidebar-handle {
    position: fixed;
    inset-inline-start: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 66px;
    z-index: 50;
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    background: var(--p-surface-raised, #fff);
    color: var(--p-color-accent, #6d5dfc);
    border: 1px solid var(--p-color-border, rgba(0,0,0,.12));
    border-inline-start: 0;
    border-start-end-radius: 9px;
    border-end-end-radius: 9px;
    transition: background var(--p-motion-fast);
}

.p-sidebar-handle:hover {
    background: var(--p-color-hover, rgba(0,0,0,.05));
}

.p-sidebar-handle svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}





.p-sidebar--hidden ~ .p-sidebar-handle {
    display: none;
}



.p-desktop-sidebar-open {
    display: none;
    flex: 0 0 auto;
    align-self: center;
    align-items: center;
    justify-content: center;




    width: calc(2 * (10px + var(--p-strip-icon) / 2 - var(--p-strip-air)));
    height: var(--p-strip-tab-h);
    margin-inline: var(--p-strip-air) 0;
    padding: 0;
    border: 1px solid transparent;
    border-radius: var(--p-radius-card);
    background: transparent;



    color: var(--p-color-accent, var(--p-color-primary));
    cursor: pointer;
    transition: background var(--p-motion-fast);
}
.p-sidebar--hidden ~ .p-shell-right .p-desktop-sidebar-open { display: inline-flex; }
.p-desktop-sidebar-open:hover { background: var(--p-state-hover); }
.p-desktop-sidebar-open :is(i, svg, img) { width: 16px; height: 16px; display: block; }


.p-sidebar-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: calc(var(--p-z-shell) - 1);
}

.p-sidebar-backdrop.p-backdrop--on {
    display: block;
}



.p-sidebar-nav {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}









:root .p-nav-filter { background: var(--p-surface-frame); }
:root :is(.p-ctx-bar, .p-ctx-row, .p-sidebar-nav) { background: var(--p-surface-panel); }




:root[data-theme="light"] .p-sidebar {
    --p-surface-frame: color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-light) * 7 / 8), #ffffff);
    --p-surface-panel: color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-light) * 3 / 4), #ffffff);
    --p-surface-work:  color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-light) * 5 / 8), #ffffff);
}
@media (prefers-color-scheme: light) {
    :root[data-theme="auto"] .p-sidebar {
        --p-surface-frame: color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-light) * 7 / 8), #ffffff);
        --p-surface-panel: color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-light) * 3 / 4), #ffffff);
        --p-surface-work:  color-mix(in srgb, var(--p-tone-source) calc(var(--p-chrome-light) * 5 / 8), #ffffff);
    }
}
:root .p-ctx-row { margin: 0; padding: 2px 6px 0; }


:root .p-sidebar:has(> .p-sidebar-bg) .p-nav-filter { background: color-mix(in srgb, var(--p-surface-frame) 75%, transparent); }
:root .p-sidebar:has(> .p-sidebar-bg) :is(.p-ctx-bar, .p-ctx-row, .p-sidebar-nav) { background: color-mix(in srgb, var(--p-surface-panel) 75%, transparent); }






.p-sidebar :is(.p-nav-tree, .p-ent-tree) .p-table-list-body { background: transparent; scrollbar-color: transparent transparent; }
.p-sidebar:hover :is(.p-nav-tree, .p-ent-tree) .p-table-list-body {
    scrollbar-color: color-mix(in srgb, var(--p-color-sidebar-fg) 35%, transparent) transparent;
}



.p-sidebar :is(.p-nav-tree, .p-ent-tree) .p-table-list-body::-webkit-scrollbar-thumb {
    background: transparent;
    border: 3px solid transparent;
    border-radius: calc(var(--p-scrollbar-size) / 2);
    background-clip: content-box;
    transition: background-color var(--p-motion-calm);
}
.p-sidebar:hover :is(.p-nav-tree, .p-ent-tree) .p-table-list-body::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, var(--p-color-sidebar-fg) 35%, transparent);
    background-clip: content-box;
}


.p-nav-filter {








    box-sizing: border-box;
    height: 40px;
    display: flex;
    align-items: center;





    padding: 0 6px 1px;
    flex-shrink: 0;
    background: transparent;
}







.p-nav-filter::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    bottom: 0;
    height: 1px;
    background: var(--p-color-sidebar-border);
}




.p-nav-filter-box {
    display: flex;
    align-items: center;



    gap: 12px;
    flex: 1 1 auto;
    min-width: 0;
    min-height: var(--p-ctx-row-h);
    box-sizing: border-box;



    padding-block: 3px 2px;
    padding-inline: 7px 10px;
    border: 1px solid transparent;
    border-radius: var(--p-radius-chip);
    background: transparent;
    transition: background var(--p-motion-calm), border-color var(--p-motion-calm);
}
.p-nav-filter-box:hover { background: var(--p-color-sidebar-hover-bg); }






.p-nav-filter-box:has(.p-nav-filter-input:not(:placeholder-shown)) {
    background: var(--p-state-hover);
}
.p-nav-filter-icon { width: 16px; height: 16px; flex: 0 0 auto; opacity: 0.8; color: var(--p-color-primary); }
.p-nav-filter-input {

    flex: 1 1 auto;
    min-width: 0;
    box-sizing: border-box;
    background: transparent;
    border: 0;
    color: var(--p-color-sidebar-active-fg);
    padding: 2px 0;
    font-size: 13px;
    font-family: inherit;
    outline: none;
}
.p-nav-filter-input::placeholder { color: var(--p-color-sidebar-fg); opacity: 0.6; }
.p-nav-filter-input::-webkit-search-cancel-button { cursor: pointer; }





.p-nav-tree { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; overflow: hidden; }



.p-sidebar-nav .p-nav-tree .p-table-list-body { padding: var(--p-nav-zone-gap, 6px) 6px 10px; }


.p-nav-link {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;





    padding: 5px 12px 5px 0;
    color: var(--p-color-sidebar-fg);
    text-decoration: none;
    border-radius: var(--p-radius-chip);
    transition: background var(--p-motion-fast);
    white-space: nowrap;
    font-size: var(--p-tree-font-size, 13px);
}















.p-icon { stroke-width: var(--p-icon-stroke, 1.5); }






.p-icon-ol { stroke-width: var(--p-icon-stroke-ol, 3); }




























































@media (pointer: coarse) {






    :root { --p-icon-stroke: 1.5; }





    :root { --p-icon-stroke-ol: 3; }
}





.p-iconcolor-row { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; padding: 4px 0; }
.p-iconcolor-swatch {
    width: 22px; height: 22px; border-radius: 50%; padding: 0; cursor: pointer;
    background: var(--swatch); border: 2px solid transparent; transition: transform var(--p-motion-fast);
}
.p-iconcolor-swatch:hover { transform: scale(1.15); }
.p-iconcolor-swatch--active { border-color: var(--p-color-text); transform: scale(1.1); }
.p-iconcolor-swatch--none { background: transparent; border: 2px dashed var(--p-color-border); }
.p-iconcolor-swatch--none.p-iconcolor-swatch--active { border-style: solid; border-color: var(--p-color-text); }



.p-icon-picker-wrap {
    display: flex;
    align-items: stretch;
    width: 100%;
}

.p-icon-picker-wrap > input { flex: 1; border-start-end-radius: 0; border-end-end-radius: 0; }
.p-icon-picker-btn {
    flex: 0 0 32px;
    background: var(--p-surface-raised);
    border: 1px solid var(--p-color-border);
    border-inline-start: none;
    border-start-end-radius: 4px;
    border-end-end-radius: 4px;
    cursor: pointer;
    color: var(--p-color-text-muted);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
}
.p-icon-picker-btn:hover {
    background: color-mix(in srgb, var(--p-color-primary) 6%, var(--p-surface-raised));
    color: var(--p-color-text);
}


.p-icon-picker-panel:not([hidden]) {
    width: 360px;
    max-height: 380px;
    padding: 8px;
    z-index: var(--p-z-popover);
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.p-icon-picker-search {
    width: 100%;
    box-sizing: border-box;
}

.p-icon-picker-head { display: flex; gap: 6px; align-items: center; }
.p-icon-picker-head .p-icon-picker-search { flex: 1; min-width: 0; }


.p-icon-picker-setname {
    flex: 0 0 auto; font-size: 12px; color: var(--p-color-text-muted);
    cursor: help; padding: 0 2px;
}
.p-icon-picker-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 4px;
    overflow-y: auto;
    flex: 1;
}
.p-icon-picker-cell {
    background: none;
    border: 1px solid transparent;
    border-radius: var(--p-radius-chip);
    cursor: pointer;
    padding: 8px 4px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    color: var(--p-color-text);
    line-height: 1;
    min-height: 52px;
    font: inherit;
    transition: background var(--p-motion-fast), border-color var(--p-motion-fast);
    overflow: hidden;
}
.p-icon-picker-cell:hover {
    background: color-mix(in srgb, var(--p-color-primary) 8%, transparent);
    border-color: var(--p-color-primary);
}


.p-icon-picker-cell > svg {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}
.p-icon-picker-name {
    font-size: 9px;
    color: var(--p-color-text-muted);
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    max-width: 100%;
}
.p-icon-picker-empty {
    text-align: center;
    padding: 24px;
    color: var(--p-color-text-muted);
    font-size: 13px;
}

.p-icon-picker-hint {
    font-size: 12px;
    color: var(--p-color-text-muted);
    padding: 6px 2px 0;
    border-top: 1px solid var(--p-color-border);
}








.p-nav-icon {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.p-nav-icon svg { width: 16px; height: 16px; }

















html[data-nav-icons="l"] .p-sidebar .p-nav-icon { flex: 0 0 24px; width: 24px; height: 24px; }
html[data-nav-icons="l"] .p-sidebar .p-nav-icon svg,
html[data-nav-icons="l"] .p-sidebar .p-ent-tree .p-table-list-lead svg { width: 24px; height: 24px; stroke-width: var(--p-icon-stroke-lg, 2); }

html[data-nav-icons="l"] .p-sidebar .p-ent-tree { --p-tree-icon: 24px; }


html[data-nav-icons="l"] .p-sidebar .p-icon-emoji { font-size: 21px; }




html[data-nav-icons="l"] #p-desktop-tabs .p-tab-icon { width: 24px; height: 24px; }
html[data-nav-icons="l"] #p-desktop-tabs .p-tab-icon svg { width: 24px; height: 24px; stroke-width: var(--p-icon-stroke-lg, 2); }
html[data-nav-icons="l"] #p-desktop-tabs .p-tab-icon > .p-icon-emoji { font-size: 21px; width: auto; height: auto; }



html[data-nav-icons="l"] #p-desktop-tabs .p-desktop-tab-icon--ctx { --badge: 14px; }
html[data-nav-icons="l"] #p-desktop-tabs .p-desktop-tab-icon--ctx .p-desktop-tab-icon-main { width: 24px; height: 24px; }
html[data-nav-icons="l"] #p-desktop-tabs .p-desktop-tab-icon--ctx :is(.p-desktop-tab-icon-main, .p-desktop-tab-icon-badge) svg { width: 100%; height: 100%; }



.p-nav-icons-btn [data-picon] { width: 12px; height: 12px; }
.p-nav-icons-btn [data-picon] > svg { width: 12px; height: 12px; }
.p-nav-icons-btn--l [data-picon],
.p-nav-icons-btn--l [data-picon] > svg { width: 19px; height: 19px; }

.p-icon-style-sample { display: inline-flex; }
.p-icon-style-sample > svg { display: block; }

.p-mosaic-btn { font: 600 11px var(--p-font); letter-spacing: 0.02em; }






.p-icon-emoji {
    font-size: 13px;
    line-height: 1;
    font-style: normal;
}











.p-icon-slot {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    vertical-align: middle;
}



































































.p-nav-drag-ghost {
    position: absolute;
    top: -1000px; inset-inline-start: -1000px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-color-primary) 16%, var(--p-surface-chassis));
    color: var(--p-color-sidebar-active-fg);
    font-size: 13px;
    white-space: nowrap;
    box-shadow: var(--p-shadow-drag);
}






.p-nav-tree .p-table-list-card:hover .p-nav-link,
.p-nav-tree .p-table-list-card--selected .p-nav-link { color: var(--p-color-sidebar-active-fg); }


.p-nav-tree .p-nav-has-active:not(:has(> .p-table-list-branch--open))::after {
    content: ""; position: absolute; inset-inline-start: 0; inset-block: 3px;
    width: 2px; border-radius: 1px; background: var(--p-color-primary); pointer-events: none;
}

.p-nav-link--folder {
    cursor: default;
    color: var(--p-color-sidebar-fg);
}
.p-nav-link--folder:hover {
    background: transparent;
    color: var(--p-color-sidebar-active-fg);
}

.p-nav-link--disabled {
    cursor: default;
    opacity: var(--p-disabled-opacity);
}
.p-nav-link--disabled:hover {
    background: transparent;
}
.p-nav-lock {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
    margin-inline-start: auto;
    opacity: 0.8;
}



.p-nav-badges {
    margin-inline-start: auto;
    display: inline-flex;
    align-items: center;
    gap: 3px;




    flex: 0 0 auto;
    overflow: visible;
}

.p-nav-badge {
    flex: 0 0 auto;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 11px;
    padding: 1px 4px;
    border-radius: var(--p-radius-chip);
}





.p-nav-badge--mcp {
    background: color-mix(in srgb, var(--p-accent-solid) 14%, var(--p-surface-raised));
    color: var(--p-color-text);
}

.p-nav-badge--draft {
    background: color-mix(in srgb, var(--p-color-warn) 16%, transparent);
    color: var(--p-text-warn);
}


.p-nav-badge--api {
    background: color-mix(in srgb, var(--p-color-info, #0ea5e9) 16%, transparent);
    color: var(--p-color-info, #0ea5e9);
}

.p-nav-hide-info-badges .p-nav-badge--mcp,
.p-nav-hide-info-badges .p-nav-badge--api { display: none; }

.p-page-placeholder-actions { margin-top: 1.5rem; }
.p-page-placeholder-actions a { color: var(--p-color-link); text-decoration: none; font-weight: 600; }
.p-page-placeholder-actions a:hover { text-decoration: underline; }
.p-nav-link span {
    overflow: hidden;
    text-overflow: ellipsis;
}

.p-nav-empty {
    padding: 8px 16px;
    font-size: 12px;
    color: var(--p-color-sidebar-fg);
    opacity: 0.5;
    font-style: italic;
}




.p-sidebar-footer {
    flex-shrink: 0;
    height: 48px;
    display: flex;
    align-items: center;
    border-top: 1px solid var(--p-color-sidebar-border);
    padding-block: 0;
    padding-inline: 4px 6px;
    overflow: hidden;
}


.p-sidebar-user {
    display: flex;
    align-items: center;
    gap: 4px;


    padding: 6px 0;
    border-radius: var(--p-radius);
    position: relative;
    flex: 1;
    min-width: 0;

    transition: background var(--p-motion-calm);
}



.p-sidebar-footer:has(.p-sidebar-user--draft) {
    background: color-mix(in srgb, var(--p-color-warn) 35%, transparent);
}
.p-sidebar-user--draft .p-sidebar-user-name,
.p-sidebar-user--draft .p-sidebar-user-avatar { color: var(--p-color-text); }

.p-sidebar-user--draft .p-sidebar-footer-icon { color: var(--p-color-text); opacity: 0.65; }
.p-sidebar-user--draft .p-sidebar-footer-icon.is-active { opacity: 1; }
#p-draft-view-toggle.is-active {
    color: var(--p-text-warn);
}





.p-sidebar-user-info {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    flex: 1;
    overflow: hidden;
    padding: 4px 0 4px 6px;
    border-radius: var(--p-radius-chip);
    cursor: pointer;
    border: none;
    background: transparent;
    text-align: start;
    font: inherit;
    transition: background var(--p-motion-fast);
}




.p-sidebar-user-info:focus:not(:focus-visible) { outline: none; }
.p-sidebar-user-info:focus-visible { outline: 2px solid var(--p-color-primary); outline-offset: -2px; }




.p-sidebar-user-avatar {
    width: var(--p-strip-icon, 24px);
    height: 28px;
    color: color-mix(in srgb, var(--p-color-primary) 85%, var(--p-color-text));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}


.p-sidebar-user-avatar [data-picon] { width: var(--p-strip-icon, 24px); height: var(--p-strip-icon, 24px); }





.p-table td.p-td-avatar {
    padding-inline-start: 4px;
    padding-inline-end: 4px;
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
    text-align: center;
}
.p-table-avatar {
    width: 26px;
    height: 26px;
    color: var(--p-color-text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    flex-shrink: 0;
    vertical-align: middle;
}
.p-table-avatar svg { width: 18px; height: 18px; }


.p-user-icon { display: inline-flex; position: relative; flex-shrink: 0; vertical-align: middle; }
.p-user-icon:not([class*="p-ink-"]) { color: var(--p-color-text-muted); }
.p-user-icon--away::after {
    content: ''; position: absolute; inset-inline-end: -3px; bottom: -3px; width: 7px; height: 7px; border-radius: 50%;
    background: var(--p-color-warn); box-shadow: 0 0 0 1.5px var(--p-surface-sheet);
}

.p-sidebar-user-name {
    font-size: 13px;
    font-weight: 400;
    color: var(--p-color-sidebar-active-fg);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}


.p-sidebar-footer-icon {
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 0;
    cursor: pointer;
    color: var(--p-color-sidebar-fg);



    opacity: 0.6;
    border-radius: var(--p-radius-chip);
    transition: opacity var(--p-motion-fast), background var(--p-motion-fast);
}
.p-sidebar-footer-icon:hover { opacity: 0.9; background: var(--p-color-sidebar-hover-bg); }


.p-sidebar-footer-icon + .p-sidebar-footer-icon { margin-inline-start: -2px; }
.p-sidebar-footer-icon svg { width: 16px; height: 16px; display: block; }



.p-sidebar-user-caret { display: inline-flex; align-items: center; }
.p-sidebar-user-caret--open,
.p-sidebar-user-caret-btn.is-open .p-sidebar-user-caret--closed { display: none; }
.p-sidebar-user-caret-btn.is-open .p-sidebar-user-caret--open { display: inline-flex; }




.p-user-popover-logout { display: contents; }
button.p-user-popover-row { font: inherit; }
.p-user-popover-row {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 8px 10px;
    background: transparent;
    border: none;
    border-radius: var(--p-radius);
    cursor: pointer;
    text-align: start;
    color: var(--p-color-text);
    font-size: 13px;
    text-decoration: none;
    transition: background var(--p-motion-fast);
}
.p-user-popover-row:hover { background: color-mix(in srgb, var(--p-color-text) 5%, transparent); }
.p-user-popover-row i { display: inline-flex; flex-shrink: 0; }
.p-user-popover-row svg { width: 16px; height: 16px; }
.p-user-popover-row--danger { color: var(--p-text-danger); }
.p-user-popover-row--danger:hover { background: color-mix(in srgb, var(--p-color-danger) 8%, transparent); }
.p-user-popover-sep {
    border-top: 1px solid var(--p-color-border);
    margin: 4px 0;
}

.p-user-popover-label {
    padding: 2px 10px 4px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--p-color-text-muted);
}

.p-acting-pick.is-active { color: var(--p-text-accent); font-weight: 600; }
.p-acting-pick.is-active::after { content: '✓'; margin-inline-start: auto; }


.p-sidebar-user-acting {
    display: block;
    font-size: 11px;
    font-weight: 600;
    color: var(--p-text-accent);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}









.p-user-panel {
    position: absolute;
    left: 0;
    right: 0;
    top: 48px;
    bottom: 48px;
    z-index: 2;
    box-sizing: border-box;



    background: var(--p-surface-chassis);
    overflow-y: auto;
    overflow-x: hidden;







    padding: 0 8px 8px;


    display: flex;
    flex-direction: column;
}





.p-user-panel > * { flex-shrink: 0; }
.p-user-panel[hidden] { display: none; }




.p-person-panel {
    position: absolute;
    inset-inline: 0;
    bottom: 48px;
    max-height: calc(100% - 96px);
    z-index: 2;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    padding: 6px 8px;
    overflow-y: auto;
    overflow-x: hidden;
    background: var(--p-surface-chassis);
    border-top: 1px solid var(--p-color-sidebar-border);
    box-shadow: 0 -8px 16px -8px var(--p-color-shadow);
    animation: p-person-panel-in .16s ease-out;
}
.p-person-panel[hidden] { display: none; }
.p-person-panel > * { flex-shrink: 0; }
@keyframes p-person-panel-in {
    from { transform: translateY(100%); clip-path: inset(0 0 100% 0); }
    to   { transform: none; clip-path: inset(0); }
}
@media (prefers-reduced-motion: reduce) { .p-person-panel { animation: none; } }



.p-user-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    height: 40px;


    margin: 0 -8px 6px;
    padding: 0 12px;
    border-bottom: 1px solid var(--p-color-border);
}
.p-user-panel-title { font-size: 13px; font-weight: 600; color: var(--p-color-text); }
.p-user-panel-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px; height: 26px;
    border: none;
    background: transparent;
    color: var(--p-color-text-muted);
    border-radius: var(--p-radius);
    cursor: pointer;
}
.p-user-panel-close:hover { background: color-mix(in srgb, var(--p-color-text) 8%, transparent); color: var(--p-color-text); }
.p-user-panel-close svg { width: 16px; height: 16px; }



.p-user-panel .p-user-menu-label { margin: 18px 6px 6px; }
.p-user-panel .p-user-menu-label:first-of-type { margin-top: 4px; }
.p-user-menu-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 5px 6px;
}

.p-user-menu-row--app { display: none; }
@media (display-mode: window-controls-overlay), (display-mode: standalone) {
    .p-user-menu-row--app { display: flex; }
}
.p-user-menu-row--block {
    flex-direction: column;
    align-items: stretch;
    gap: 5px;
}
.p-user-menu-row-label {
    font-size: 12px;
    color: var(--p-color-text);
    flex-shrink: 0;
}
.p-user-menu-control { display: block; }
.p-user-menu-cultures {
    display: flex;
    flex-direction: column;
    gap: 2px;
    max-height: 168px;
    overflow-y: auto;
    overflow-x: hidden;
}



























@media (max-width: 768px) {






    .p-sidebar {
        position: fixed;
        inset-inline-start: 0;
        top: 0;
        height: 100vh;
        height: 100dvh;
        width: 100% !important;
        transform: translateX(0);
        transition: transform var(--p-motion-calm) !important;
        z-index: var(--p-z-shell);
    }



    .p-sidebar--hidden {
        width: 100% !important;
        transform: translateX(-100%);
    }
    html[dir="rtl"] .p-sidebar--hidden { transform: translateX(100%); }



    .p-sidebar-backdrop { display: none !important; }













    body.p-table-loading-active::after,
    body.p-table-loading-active::before,
    .p-table-loading {
        inset-inline-start: 0 !important;
    }

}
























@media (hover: none) and (pointer: coarse) {
    html:not(:has(> body.p-frame-body))::after {
        content: '';
        position: fixed;
        inset-inline: 0;
        bottom: env(safe-area-inset-bottom, 0px);
        height: 1px;


        background: var(--p-color-sidebar-border);
        z-index: calc(var(--p-z-shell) + 1);
        pointer-events: none;
    }
}





body.p-frame-body .p-content { background: transparent; }


.p-appshell-host { padding: 0; overflow: hidden; display: flex; flex-direction: column; position: relative; }






body.p-frame-body { background: var(--p-surface-frame); }
body.p-frame-body.p-wallpaper-body { background: transparent; }





.p-appshell-frame { width: 100%; flex: 1; min-height: 0; border: 0; display: block; background: var(--p-surface-chassis); }
.p-appshell-frame[hidden] { display: none; }




.p-desktop-page-frame { width: 100%; flex: 1; min-height: 0; border: 0; display: block; background: var(--p-surface-chassis); }
.p-desktop-page-frame[hidden] { display: none; }




.p-desktop-page-frame.is-loading { position: absolute; inset: 0; width: 100%; height: 100%; visibility: hidden; }











.p-desktop-topbar {
    flex-shrink: 0;
    height: 48px;
    border-bottom: 1px solid var(--p-color-sidebar-border);



    background: var(--p-surface-chassis);
    display: flex;
    align-items: center;




    padding: 0;



    user-select: none;
}




.p-desktop-topbar.p-tabs-drop-over { background: color-mix(in srgb, var(--p-color-primary) 8%, var(--p-surface-chassis)); }








@media (display-mode: window-controls-overlay) {
    .p-desktop-topbar {
        app-region: drag;
        -webkit-app-region: drag;


        padding-left:  env(titlebar-area-x, 0px);
        padding-right: calc(100vw - env(titlebar-area-x, 0px) - env(titlebar-area-width, 100vw));
    }
    .p-desktop-topbar :is(a, button, input, [draggable="true"], .p-tab, .p-shell-status-item),
    html.p-wco-dnd .p-desktop-topbar,
    html.p-ctxmenu-open .p-desktop-topbar {
        app-region: no-drag;
        -webkit-app-region: no-drag;
    }




    html:not([data-bars="left"]) #p-desktop-tabs { margin-inline-end: 48px; }


    .p-sidebar-header {
        padding-left: calc(10px + env(titlebar-area-x, 0px));
    }





    #p-pilot .pp-head {
        padding-right: calc(14px + 100vw - env(titlebar-area-x, 0px) - env(titlebar-area-width, 100vw));
    }



    :root:not([dir="rtl"]) body.pp-open .p-desktop-topbar { padding-right: 0; }





    [dir="rtl"] .p-desktop-topbar { padding-right: 0; }
    [dir="rtl"] .p-sidebar--hidden ~ .p-shell-right .p-desktop-topbar {
        padding-right: calc(100vw - env(titlebar-area-x, 0px) - env(titlebar-area-width, 100vw));
    }
    [dir="rtl"] .p-sidebar-header {
        padding-left: 6px;
        padding-right: calc(12px + 100vw - env(titlebar-area-x, 0px) - env(titlebar-area-width, 100vw));
    }
    [dir="rtl"] #p-pilot .pp-head {
        padding-right: 14px;
        padding-left: calc(8px + env(titlebar-area-x, 0px));
    }
}





.p-wco-bare-drag { display: none; }
body.p-wco-bare .p-wco-bare-drag {
    display: block;
    position: fixed; inset: 0 0 auto 0;
    height: env(titlebar-area-height, 36px);
    background: var(--p-surface-chassis);
    border-bottom: 1px solid var(--p-color-border);
    app-region: drag;
    -webkit-app-region: drag;
    z-index: var(--p-z-shell);
}
body.p-wco-bare { padding-top: env(titlebar-area-height, 36px); }

html.p-ctxmenu-open body.p-wco-bare .p-wco-bare-drag { app-region: no-drag; -webkit-app-region: no-drag; }









.p-desktop-tabs {
    flex: 0 1 auto; min-width: 0;
    display: flex;
    align-self: stretch; align-items: stretch;
    overflow: hidden;
}
#p-desktop-tabs > .p-tabs-container { flex: 1 1 auto; min-width: 0; min-height: 0; }
#p-desktop-tabs .p-tabs {
    flex: 1 1 auto; min-width: 0;




    align-items: stretch;
    gap: var(--p-desktop-pad);
    padding: var(--p-strip-air);
    min-height: 0;
    background: transparent;
}

#p-desktop-tabs .p-tabs:has(> .p-tabs-sep) { padding-inline-end: 0; }
html[data-bars="left"] #p-desktop-tabs .p-tabs:has(> .p-tabs-sep) { padding-inline-end: var(--p-strip-air); padding-block-end: 0; }



.p-desktop-tabs--busy { pointer-events: none; opacity: 0.55; }

#p-desktop-tabs :is(.p-tab, .p-tabs-more) {










    flex: 0 1 auto; max-width: 200px;




    min-width: calc(2 * 12px + var(--p-strip-icon) + 7px + 3ch);





















    padding: 0 12px; display: inline-flex; align-items: center; gap: 7px;
    border: 1px solid transparent;
    border-radius: var(--p-radius-card);
    background: transparent;


    font-family: inherit;



    color: var(--p-color-text); font-size: 13px; font-weight: 400; cursor: pointer;
    white-space: nowrap; overflow: hidden;
    transition: color var(--p-motion-fast), background var(--p-motion-fast), border-color var(--p-motion-fast);
}


#p-desktop-tabs .p-tab-icon { flex: 0 0 auto; display: inline-flex; }




.p-desktop-tab-icon--grid { color: var(--p-color-primary); }








#p-desktop-tabs .p-tab-icon { width: var(--p-strip-icon); height: var(--p-strip-icon); }
#p-desktop-tabs .p-tab-icon > * { display: block; width: 100%; height: 100%; }
#p-desktop-tabs .p-tab-icon > :is([data-picon], .p-desktop-tab-icon--grid) > svg { display: block; width: 100%; height: 100%; }



#p-desktop-tabs .p-tab-icon:has(> .p-icon-emoji) { width: auto; height: auto; }
#p-desktop-tabs .p-tab-icon > .p-icon-emoji { font-size: var(--p-strip-icon); width: auto; height: auto; }
#p-desktop-tabs .p-tab-label { min-width: 0; max-width: none; overflow: hidden; text-overflow: ellipsis; }


.p-desktop-tab-name--ctx { display: flex; flex-direction: column; justify-content: center; line-height: 1.2; min-width: 0; }
.p-desktop-tab-ctx, .p-desktop-tab-page { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.p-desktop-tab-ctx { font-size: 11px; font-weight: 400; color: var(--p-color-text-muted); }


.p-desktop-tab-icon--ctx { position: relative; --badge: calc(var(--p-strip-icon) * 0.625); --cut: calc(var(--badge) / 2 + 1px); }

#p-desktop-tabs .p-tab-label--custom { display: flex; }
.p-desktop-tab-icon--ctx .p-desktop-tab-icon-main { display: block; width: var(--p-strip-icon); height: var(--p-strip-icon);
    -webkit-mask: radial-gradient(circle var(--cut) at calc(100% - var(--badge) / 2) calc(100% - var(--badge) / 2), rgba(0,0,0,.25) 99%, #000 100%);
            mask: radial-gradient(circle var(--cut) at calc(100% - var(--badge) / 2) calc(100% - var(--badge) / 2), rgba(0,0,0,.25) 99%, #000 100%); }
html[dir="rtl"] .p-desktop-tab-icon--ctx .p-desktop-tab-icon-main {
    -webkit-mask: radial-gradient(circle var(--cut) at calc(var(--badge) / 2) calc(100% - var(--badge) / 2), rgba(0,0,0,.25) 99%, #000 100%);
            mask: radial-gradient(circle var(--cut) at calc(var(--badge) / 2) calc(100% - var(--badge) / 2), rgba(0,0,0,.25) 99%, #000 100%); }


.p-desktop-tab-icon--ctx:has(.p-desktop-tab-icon-badge svg.p-icon-parts) .p-desktop-tab-icon-main { -webkit-mask: none; mask: none; }
.p-desktop-tab-icon--ctx .p-desktop-tab-icon-badge { position: absolute; inset-inline-end: -1px; bottom: -1px; display: block;
    width: var(--badge); height: var(--badge); }
.p-desktop-tab-icon--ctx .p-desktop-tab-icon-main svg,
.p-desktop-tab-icon--ctx .p-desktop-tab-icon-badge svg { width: 100%; height: 100%; display: block; }










#p-desktop-tabs .p-tab--live { background: var(--p-accent-soft); }


#p-desktop-tabs .p-tab--dot > .p-tab-icon::after { box-shadow: 0 0 0 1.5px var(--p-surface-chassis); }





#p-desktop-tabs :is(.p-tab, .p-tabs-more):hover {
    background: var(--p-state-hover);
}




#p-desktop-tabs .p-tab[aria-selected="true"] {
    color: var(--p-color-text);




    background: var(--p-accent-muted);





    --p-desktop-mark: var(--p-tab-mark);



    border-top-color: color-mix(in srgb, var(--p-desktop-mark) 35%, transparent);
    box-shadow: inset 0 2px 0 0 var(--p-desktop-mark);
}
#p-desktop-tabs .p-tab[aria-selected="true"][style*="--pt-tint"] { --p-desktop-mark: var(--pt-tint); }

html[data-bars="left"] #p-desktop-tabs .p-tab[aria-selected="true"] {
    border-top-color: transparent;
    border-inline-start-color: color-mix(in srgb, var(--p-desktop-mark) 35%, transparent);
    box-shadow: inset 2px 0 0 0 var(--p-desktop-mark);
}
html[dir="rtl"][data-bars="left"] #p-desktop-tabs .p-tab[aria-selected="true"] { box-shadow: inset -2px 0 0 0 var(--p-desktop-mark); }
#p-desktop-tabs .p-tab[aria-selected="true"]:hover {


    background: var(--p-accent-muted-hover);
}















#p-desktop-tabs .p-tab[style*="--pt-tint"] {
    --p-accent-solid:        oklch(from var(--pt-tint) var(--p-fill-l) c h);
    --p-accent-soft:         color-mix(in srgb, var(--p-accent-solid) 10%, var(--p-surface-frame));
    --p-accent-muted:        color-mix(in srgb, var(--p-accent-solid) 16%, var(--p-surface-frame));
    --p-accent-muted-hover:  color-mix(in srgb, var(--p-accent-solid) 21%, var(--p-surface-frame));
    --p-color-primary:       var(--pt-tint);
}









#p-desktop-tabs .p-tab--compact > .p-tab-label { display: none; }
#p-desktop-tabs .p-tab--compact { gap: 0; min-width: calc(2 * 12px + var(--p-strip-icon)); }



#p-desktop-tabs .p-tab:is([aria-selected="true"], .p-tab--keep) { flex-shrink: 0; }




.p-desktop-topbar--bg #p-desktop-tabs .p-tab--live {
    background: color-mix(in srgb, var(--p-accent-solid) 10%, color-mix(in srgb, var(--p-surface-raised) 30%, transparent));
    backdrop-filter: blur(8px) saturate(1.1); -webkit-backdrop-filter: blur(8px) saturate(1.1);
}
.p-desktop-topbar--bg #p-desktop-tabs .p-tab[aria-selected="true"] {
    background: color-mix(in srgb, var(--p-accent-solid) 16%, color-mix(in srgb, var(--p-surface-raised) 38%, transparent));
    backdrop-filter: blur(8px) saturate(1.1); -webkit-backdrop-filter: blur(8px) saturate(1.1);
}
#p-desktop-tabs .p-tabs-more { align-self: stretch; margin: 0; padding: 0 8px; gap: 4px; flex-shrink: 0; min-width: 0; }
#p-desktop-tabs .p-tabs-more[hidden] { display: none; }
#p-desktop-tabs .p-tabs-more .p-tab-icon { width: 14px; height: 14px; }
#p-desktop-tabs .p-tabs-more .p-tab-icon svg { width: 14px; height: 14px; }
#p-desktop-tabs .p-tabs-more-count { font-size: 12px; font-variant-numeric: tabular-nums; }









#p-desktop-tabs .p-tabs-sep {


    --sep-air: calc(4 * var(--p-desktop-pad));
    flex: 0 0 2px;
    align-self: center;
    inline-size: 2px;
    block-size: var(--p-strip-icon);
    margin: 0 calc(var(--sep-air) - var(--p-desktop-pad));
    border-radius: 1px;
    background: var(--p-strip-divider);
}





html[data-bars="left"] .p-appshell-host { flex-direction: row; }
html[data-bars="left"] :is(.p-appshell-frame, .p-desktop-page-frame) { width: auto; min-width: 0; }
html[data-bars="left"] .p-desktop-page-frame.is-loading { inset-inline-start: var(--p-bars-width, 48px); width: calc(100% - var(--p-bars-width, 48px)); }
html[data-bars="left"] .p-desktop-topbar {
    flex-direction: column;


    width: var(--p-bars-width, 48px);
    container: p-bars / inline-size;
    height: auto;
    border-block-end: 0;
    border-inline-end: 1px solid var(--p-color-sidebar-border);
}
html[data-bars="left"] .p-desktop-tabs { flex-direction: column; min-height: 0; }
html[data-bars="left"] #p-desktop-tabs .p-tabs { width: auto; overflow: hidden; }
html[data-bars="left"] #p-desktop-tabs :is(.p-tab, .p-tabs-more) {
    flex: 0 0 var(--p-strip-tab-h);
    min-width: 0;
    max-width: none;
    padding: 0;
    gap: 0;
    justify-content: center;
}
html[data-bars="left"] #p-desktop-tabs .p-tab-label { display: none; }
html[data-bars="left"] #p-desktop-tabs .p-tabs-more { flex-direction: column; flex-basis: auto; padding-block: 6px; gap: 2px; }
html[data-bars="left"] #p-desktop-tabs .p-tabs-sep { inline-size: var(--p-strip-icon); block-size: 2px; margin: calc(var(--sep-air) - var(--p-desktop-pad)) 0; }
html[data-bars="left"] .p-desktop-sidebar-open { margin: var(--p-strip-air) 0 var(--p-desktop-pad); }




html[data-bars="left"] .p-desktop-bar-end {
    flex-direction: row;
    flex-wrap: wrap-reverse;
    align-self: stretch;
    justify-content: center;
    gap: 2px;
    margin: auto var(--p-strip-air) var(--p-strip-air);
}
html[data-bars="left"] .p-desktop-bar-end > .p-desktop-assistant-open { order: -1; }
html[data-bars="left"] .p-shell-status { display: contents; }


.p-bars-resize { display: none; }
html[data-bars="left"] .p-bars-resize { display: block; flex: 0 0 auto; align-self: stretch; margin-inline: -3px; position: relative; z-index: 2; }

@container p-bars (min-width: 120px) {
    html[data-bars="left"] #p-desktop-tabs :is(.p-tab, .p-tabs-more) { justify-content: flex-start; padding: 0 12px; gap: 7px; }
    html[data-bars="left"] #p-desktop-tabs .p-tab-label { display: inline; }
    html[data-bars="left"] #p-desktop-tabs .p-tabs-more { flex-direction: row; padding-block: 0; gap: 4px; }
    html[data-bars="left"] .p-desktop-sidebar-open { align-self: flex-start; margin-inline: var(--p-strip-air); }
    html[data-bars="left"] .p-desktop-bar-end { justify-content: flex-start; margin-inline: var(--p-strip-air); }
}





.p-bars-titlebar { display: none; }
@media (display-mode: window-controls-overlay) {
    html[data-bars="left"] .p-appshell-host { padding-block-start: 48px; }
    html[data-bars="left"] .p-bars-titlebar {
        display: block;
        position: absolute;
        inset-block-start: 0;
        inset-inline: 0;
        height: 48px;
        background: var(--p-surface-chassis);
        border-block-end: 1px solid var(--p-color-sidebar-border);
        app-region: drag;
        -webkit-app-region: drag;
        z-index: 3;
    }
    html.p-ctxmenu-open[data-bars="left"] .p-bars-titlebar { app-region: no-drag; -webkit-app-region: no-drag; }
    html[data-bars="left"] .p-appshell-host > .p-desktop-topbar.p-desktop-topbar { padding-inline: 0; }
    html[data-bars="left"] .p-desktop-page-frame.is-loading { inset-block-start: 48px; height: calc(100% - 48px); }




    html[data-bars="left"] .p-appshell-host > .p-desktop-topbar { position: relative; z-index: 4; }
    html[data-bars="left"] .p-bars-resize { z-index: 5; }
    html[data-bars="left"] .p-desktop-sidebar-open {
        position: absolute;
        inset-block-start: -48px;
        inset-inline-start: env(titlebar-area-x, 0px);
        width: auto;
        height: 48px;
        margin: 0;
        padding-inline: 16px 12px;
        gap: 10px;
        border: 0;
        border-radius: 0;
    }

    html[data-bars="left"] .p-desktop-sidebar-open:hover { background: transparent; }
    html[data-bars="left"] .p-desktop-sidebar-open::after {
        content: attr(data-app-name);
        font-size: 14px;
        font-weight: 600;
        letter-spacing: .2px;
        color: var(--p-color-sidebar-active-fg);
        white-space: nowrap;
    }
}
#p-desktop-tabs .p-tab--dragging { opacity: 0.45; }



#p-desktop-tabs .p-tab--drop {
    color: var(--p-color-sidebar-active-fg);
    border-color: color-mix(in srgb, var(--p-color-primary) 60%, transparent);
    background: color-mix(in srgb, var(--p-color-primary) 24%, transparent);
    box-shadow: none;
}





#p-nav-progress {
    position: fixed;
    top: 0; left: 0; right: 0;
    height: 3px;
    z-index: var(--p-z-toast);
    overflow: hidden;
    opacity: 0;
    transition: opacity var(--p-motion-calm) ease;
    pointer-events: none;
}
#p-nav-progress.p-nav-progress--active { opacity: 1; }
#p-nav-progress::before {
    content: '';
    position: absolute;
    top: 0; bottom: 0;
    width: 50%;


    background: linear-gradient(90deg, transparent,
                var(--p-color-primary) 25%, var(--p-color-primary) 75%, transparent);
    animation: p-nav-progress-slide 2s ease-in-out infinite;
}
@keyframes p-nav-progress-slide {
    0%   { left: -50%; }
    100% { left: 100%; }
}





.p-desktop-card-body--loading::after {
    content: '';
    position: absolute;
    top: 0;
    width: 50%;
    height: 3px;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(90deg, transparent,
                var(--p-color-primary) 25%, var(--p-color-primary) 75%, transparent);
    animation: p-nav-progress-slide 2s ease-in-out infinite,
               p-card-progress-in var(--p-motion-calm) ease 120ms both;
}
@keyframes p-card-progress-in {
    from { opacity: 0; }
    to   { opacity: 1; }
}




.p-content:has(> .p-cascade-primary > .p-page-fill) {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 0;
}


.p-cascade-primary:has(> .p-page-fill) {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
















:root { --p-content-max: none; }





.p-cat-matrix-wrap   { font-size: 13px; }
.p-cat-matrix-state  { padding: 24px; text-align: center; color: var(--p-color-text-muted); }
.p-cat-matrix-err    { color: var(--p-text-danger); }
.p-cat-matrix        { width: 100%; border-collapse: collapse; }
.p-cat-matrix th,
.p-cat-matrix td     { padding: 6px 10px; border-bottom: 1px solid var(--p-color-border); text-align: start; }
.p-cat-matrix thead th { font-weight: 600; color: var(--p-color-text-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .03em; }
.p-cat-matrix th.p-cat-tier,
.p-cat-matrix td.p-cat-cell { text-align: center; width: 60px; }
.p-cat-key      { font-family: var(--p-font-mono); font-size: 12px; white-space: nowrap; }
.p-cat-cap      { color: var(--p-color-text); }
.p-cat-inline   { color: var(--p-color-text-muted); font-style: italic; }

.p-cat-dot      { width: 15px; height: 15px; padding: 0; box-sizing: border-box; border-radius: 50%; cursor: pointer;
                  border: 1.5px solid var(--p-color-border); background: transparent; font-size: 0; line-height: 0;
                  vertical-align: middle; transition: box-shadow var(--p-motion-fast), background var(--p-motion-fast), border-color var(--p-motion-fast); }
.p-cat-dot:hover      { border-color: var(--p-color-text-muted); }
.p-cat-dot.is-present { background: var(--p-color-primary); border-color: var(--p-color-primary); }
.p-cat-dot.is-win     { box-shadow: 0 0 0 2px var(--p-surface-raised), 0 0 0 3.5px var(--p-color-primary); }
.p-cat-matrix-hint   { margin-top: 12px; font-size: 12px; color: var(--p-color-text-muted); line-height: 1.5; }

.p-cat-master        { display: flex; gap: 0; min-height: 380px; }
.p-cat-master-list   { flex: 1 1 0; min-width: 0; overflow: auto; padding-inline-end: 16px; }
.p-cat-master-detail { flex: 1 1 0; min-width: 0; border-inline-start: 1px solid var(--p-color-border); padding-inline-start: 16px; overflow: auto; }


.p-cat-master-detail.is-loading { opacity: .55; transition: opacity var(--p-motion-fast) var(--p-motion-fast); }
.p-cat-detail-empty  { color: var(--p-color-text-muted); font-size: 13px; padding: 28px 8px; text-align: center; }
.p-cat-detail-hdr    { display: flex; justify-content: space-between; align-items: center; gap: 8px; font-weight: 600; font-size: 13px; margin-bottom: 10px; padding-bottom: 8px; border-bottom: 1px solid var(--p-color-border); }
.p-cat-detail-acts   { display: flex; gap: 6px; font-weight: 400; }
.p-cat-act           { font-size: 11px; padding: 2px 8px; border: 1px solid var(--p-color-border); border-radius: var(--p-radius-chip); background: var(--p-surface-raised); color: var(--p-color-text); cursor: pointer; white-space: nowrap; }
.p-cat-act:hover     { background: var(--p-state-hover); }
.p-cat-act-danger    { color: var(--p-text-danger); border-color: var(--p-color-danger); }
.p-cat-act-danger:hover { background: var(--p-fill-danger); color: var(--p-fill-fg-danger); }
.p-cat-dot.is-active { box-shadow: 0 0 0 2px var(--p-surface-raised), 0 0 0 3.5px var(--p-color-text); }




.p-cat-reach         { font-size: 11.5px; line-height: 17px; color: var(--p-color-text-muted); margin: -4px 0 10px; }
.p-cat-reach:empty   { display: none; }
.p-cat-reach.is-wide { color: var(--p-text-warn); }
.p-cat-reach summary { cursor: pointer; user-select: none; }
.p-cat-reach summary:hover { text-decoration: underline; }
.p-cat-reach ul      { margin: 4px 0 0; padding: 0 0 0 18px; list-style: none; max-height: 8.5em; overflow-y: auto; }
.p-cat-reach li      { font-family: var(--p-font-mono); font-size: 11px; }



.p-page-placeholder {
    margin: -24px;
    min-height: calc(100% + 48px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: linear-gradient(180deg,
        var(--p-surface-raised) 0%,
        color-mix(in srgb, var(--p-color-brand) 3%, var(--p-surface-raised)) 100%);
    color: var(--p-color-text-muted);
}


.p-drilldown-pane > .p-drilldown-strip {
    position: relative;
    z-index: 2;
}
.p-drilldown-pane > .p-drilldown-body {
    position: relative;
    z-index: 1;
}
.p-page-placeholder-inner {
    text-align: center;
    max-width: 480px;
}
.p-page-placeholder h1 {
    font-size: 28px;
    font-weight: 600;
    color: var(--p-color-text);
    margin: 0 0 24px;
}
.p-page-placeholder-icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 12px;
    color: color-mix(in srgb, var(--p-color-brand) 60%, var(--p-color-text-muted));
    opacity: 0.85;
    display: block;
}
.p-page-placeholder-status {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: color-mix(in srgb, var(--p-color-brand) 55%, var(--p-color-text-muted));
    margin: 0 0 8px;
}
.p-page-placeholder p {
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
}


.p-statusbar {
    flex-shrink: 0;
    height: 48px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 16px;
    font-size: 12px;
    color: #ffffff;
    background: #6b7280;
    border-top: 1px solid rgba(0,0,0,0.1);
}
.p-statusbar svg { flex-shrink: 0; }
.p-statusbar strong { font-weight: 600; }

.p-statusbar-btn {
    padding: 3px 10px;
    border: 1px solid rgba(255,255,255,0.5);
    border-radius: var(--p-radius-chip);
    background: transparent;
    color: inherit;
    font-size: 11px;
    cursor: pointer;
    transition: background var(--p-motion-fast);
}
.p-statusbar-btn:hover {
    background: rgba(255,255,255,0.15);
}


.p-statusbar--impersonating {
    background: #d97706;
}




.p-statusbar--license {
    background: #d97706;
}
.p-statusbar--license a.p-statusbar-btn { text-decoration: none; }



.p-page-header {
    display: flex;
    align-items: center;
    gap: 10px;



    height: 40px;




    padding-block: 0;
    padding-inline: 20px calc((40px - 1px - 30px) / 2);



    background: var(--p-surface-frame);
    border-bottom: 1px solid var(--p-color-sidebar-border);
    flex-shrink: 0;
}

.p-page-back {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--p-color-text-muted);
    padding: 4px;


    margin-inline-start: -4px;
    border-radius: var(--p-radius-chip);
    flex-shrink: 0;
    text-decoration: none;
    transition: color var(--p-motion-fast), background var(--p-motion-fast);
}

.p-page-back:hover {
    color: var(--p-color-text);
    background: var(--p-state-hover);
}

.p-page-back svg {
    width: 16px;
    height: 16px;
}



.p-breadcrumb {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    min-width: 0;
    overflow: hidden;
}

.p-breadcrumb-link {
    color: var(--p-color-text-muted);
    text-decoration: none;
    white-space: nowrap;
    transition: color var(--p-motion-fast);
}

.p-breadcrumb-link:hover { color: var(--p-color-text); }


.p-breadcrumb-link--static { cursor: default; }
.p-breadcrumb-link--static:hover { color: var(--p-color-text-muted); }

.p-breadcrumb-sep {
    color: var(--p-color-text-muted);
    opacity: 0.4;
    font-size: 12px;
    user-select: none;
}

.p-breadcrumb-current {
    color: var(--p-color-text);
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


.p-breadcrumb-context { display: inline-flex; gap: 4px; min-inline-size: 0; margin-inline-start: 4px; }
.p-breadcrumb-context[hidden] { display: none; }


.p-breadcrumb-context-item {
    display: inline-flex; align-items: center; gap: 4px; min-inline-size: 0; max-inline-size: 220px;
    padding-block: 1px; padding-inline: 8px; border-radius: 999px;
    background: var(--p-accent-soft); color: var(--p-accent-soft-fg);
    font-size: 12px; white-space: nowrap;
}
.p-breadcrumb-context-item > span { min-inline-size: 0; overflow: hidden; text-overflow: ellipsis; }
.p-breadcrumb-context-item > i { display: inline-flex; flex: 0 0 auto; }
.p-breadcrumb-context-item > i svg { width: 13px; height: 13px; }






.p-breadcrumb-icon {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    margin-inline-end: 5px;
}
.p-breadcrumb-icon svg { width: 16px; height: 16px; }


.p-page-toolbar {
    flex: 0 0 auto;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
}



.p-page-header:not(:has(> .p-page-desc)) > .p-page-toolbar { flex-grow: 1; }



.p-page-header .p-page-overflow { display: none !important; }




.p-page-desc {
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
    color: var(--p-color-text-muted);
}
.p-page-desc::before {
    content: '·';
    margin-inline-end: 6px;
    opacity: .5;
}




.p-page-toolbar .p-btn {
    padding: 5px 12px;
    font-size: 13px;
}







html[data-bars-header="left"] .p-shell-right:has(> .p-page-header) { flex-direction: row; }
html[data-bars-header="left"] .p-shell-right:has(> .p-page-header) > .p-content { min-width: 0; }
html[data-bars-header="left"] .p-page-header {
    flex-direction: column;
    width: 40px;
    height: auto;
    padding: var(--p-strip-air) 0;
    border-block-end: 0;
    border-inline-end: 1px solid var(--p-color-sidebar-border);
}
html[data-bars-header="left"] :is(.p-breadcrumb, .p-page-desc, .p-page-toolbar) { writing-mode: vertical-rl; }
html[data-bars-header="left"] .p-page-toolbar .p-btn { padding: 12px 5px; }


html[data-bars-header="left"] :is(.p-breadcrumb, .p-page-desc) { min-height: 0; }




html[data-bars-header="left"] .p-page-back { block-size: 24px; margin-block-start: calc((var(--p-strip-tab-h) - 24px) / 2); margin-inline-start: 0; }
html[data-bars-header="left"] .p-page-header > .p-breadcrumb:first-child { padding-inline-start: calc((var(--p-strip-tab-h) - 16px) / 2); }
html[data-bars-header="left"] .p-page-toolbar { padding-inline-end: calc((var(--p-strip-tab-h) - 30px) / 2); }













.p-page-toolbar-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: 0;
    border: none;
    border-radius: var(--p-radius);
    background: var(--p-accent-ghost);
    color: var(--p-accent-ghost-fg);
    cursor: pointer;
    transition: background var(--p-motion-fast) ease, color var(--p-motion-fast) ease;
}
.p-page-toolbar-btn:hover {
    background: var(--p-accent-ghost-hover);
    color: var(--p-color-text);
}

.p-page-toolbar-btn[aria-expanded="true"] {
    background: var(--p-state-active);
    color: var(--p-color-text);
}


.p-page-toolbar-btn--active {
    background: color-mix(in srgb, var(--p-color-primary) 18%, transparent);
    color: var(--p-color-text);
}
.p-page-toolbar-btn--active:hover {
    background: color-mix(in srgb, var(--p-color-primary) 25%, transparent);
}
.p-page-toolbar-btn svg { width: 16px; height: 16px; flex-shrink: 0; stroke-width: var(--p-icon-stroke, 1.5); }

.p-page-header .p-btn svg.p-icon-parts { width: 16px; height: 16px; }




.p-help-drawer {
    position: fixed;
    top: 0;
    inset-inline-end: 0;
    bottom: 0;
    width: min(440px, 92vw);
    background: var(--p-surface-raised);
    border-inline-start: 1px solid var(--p-color-border);
    z-index: var(--p-z-panel);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);


    visibility: hidden;
    transition: transform var(--p-motion-calm) ease, visibility 0s linear var(--p-motion-calm);
}




html[dir="rtl"] .p-help-drawer { transform: translateX(-100%); }
html[dir="rtl"] .p-help-drawer--open { transform: translateX(0); box-shadow: 8px 0 24px rgb(from var(--p-color-shadow) r g b / calc(alpha * 1.6)); }




.p-help-drawer--open { transform: translateX(0); box-shadow: -8px 0 24px rgb(from var(--p-color-shadow) r g b / calc(alpha * 1.6));
    visibility: visible; transition: transform var(--p-motion-calm) ease, visibility 0s; }
@media (max-width: 768px) {



    .p-help-drawer { width: 100% !important; border-inline-start: none; }
    .p-help-drawer--open { box-shadow: none; }
    .p-help-drawer-resize { display: none; }
    .p-help-drawer-backdrop { display: none !important; }
}

.p-help-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 40px;
    padding: 0 16px;
    box-sizing: border-box;
    border-bottom: 1px solid var(--p-color-border);
    flex-shrink: 0;
}



.p-help-drawer-resize {
    position: absolute; inset-inline-start: 0; top: 0; bottom: 0; z-index: 2;
}
.p-help-drawer-title {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--p-color-text);
}
.p-help-drawer-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: none;
    border-radius: var(--p-radius);
    background: transparent;
    color: var(--p-color-text-muted);
    cursor: pointer;
}
.p-help-drawer-close:hover { background: var(--p-surface-raised-hover); color: var(--p-color-text); }
.p-help-drawer-close svg { width: 16px; height: 16px; }

.p-help-drawer-body {
    flex: 1;
    overflow-y: auto;
    padding: 16px 20px;
    line-height: 1.55;
    color: var(--p-color-text);
}
.p-help-drawer-body h1,
.p-help-drawer-body h2,
.p-help-drawer-body h3 {
    margin: 1.2em 0 0.4em;
    font-weight: 600;
    line-height: 1.3;
}
.p-help-drawer-body h1 { font-size: 18px; }
.p-help-drawer-body h2 { font-size: 15px; }
.p-help-drawer-body h3 { font-size: 13px; color: var(--p-color-text-muted); text-transform: uppercase; letter-spacing: 0.04em; }
.p-help-drawer-body h1:first-child,
.p-help-drawer-body h2:first-child,
.p-help-drawer-body h3:first-child { margin-top: 0; }
.p-help-drawer-body p { margin: 0.5em 0; font-size: 13px; }
.p-help-drawer-body ul, .p-help-drawer-body ol { margin: 0.5em 0; padding-inline-start: 1.4em; font-size: 13px; }
.p-help-drawer-body li { margin: 0.25em 0; }
.p-help-drawer-body code {
    background: var(--p-surface-raised-hover);
    padding: 1px 5px;
    border-radius: var(--p-radius-chip);
    font-family: var(--p-font-mono);
    font-size: 12px;
}
.p-help-drawer-body kbd {
    display: inline-block;
    padding: 1px 6px;
    border: 1px solid var(--p-color-border);
    border-bottom-width: 2px;
    border-radius: var(--p-radius-chip);
    background: var(--p-surface-raised-hover);
    font-family: var(--p-font-mono);
    font-size: 11px;
}
.p-help-drawer-body a { color: var(--p-color-link); }

.p-help-drawer-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.18);
    z-index: calc(var(--p-z-panel) - 1);
    opacity: 0;
    transition: opacity var(--p-motion-calm) ease;
}
.p-help-drawer-backdrop--open { opacity: 1; }










.p-table-host { --p-bar-h: 24px; --p-bar-ctl-h: 20px; --p-bar-font: 10px; }




.p-table-host[hidden] { display: none !important; }

.p-prefilter-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 14px;




    --p-bar-ctl-h: 30px;
    --p-bar-font: 13px;
    padding: 4px 12px;
    min-height: 40px;


    flex-shrink: 0;
    box-sizing: border-box;
    font-size: 13px;
    color: var(--p-color-text-muted);
    border-bottom: 1px solid var(--p-color-border);


    background: var(--p-table-header-surface);
    font-variant-numeric: tabular-nums;
}



.p-prefilter-item {
    display: inline-flex;
    align-items: center;
    height: var(--p-bar-ctl-h, 20px);
    box-sizing: border-box;
    padding-inline: 9px 2px;
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    background: var(--p-surface-raised);
    transition: border-color var(--p-motion-fast);
}

.p-prefilter-item.p-prefilter-item--set {
    background-color: color-mix(in srgb, var(--p-accent-solid) 12%, var(--p-table-header-surface));
    border-color: transparent;
}
.p-prefilter-item--set :is(.p-prefilter-input, .p-prefilter-dash) { color: var(--p-accent-tonal-fg); }
.p-prefilter-item--set .p-prefilter-input { font-weight: 600; }


.p-prefilter-item.p-prefilter-topped { background-color: color-mix(in srgb, var(--p-color-info) 14%, var(--p-table-header-surface)); border-color: transparent; }
.p-prefilter-summary-part.p-prefilter-topped {
    background-color: color-mix(in srgb, var(--p-color-info) 14%, var(--p-table-header-surface));
    border-radius: var(--p-radius-chip);
    padding-inline: 3px;
}
.p-prefilter-item:focus-within { border-color: var(--p-color-primary); }
.p-prefilter-label {
    color: var(--p-color-text-muted);
    white-space: nowrap;
}
.p-prefilter-item > .p-prefilter-label { margin-inline-end: 3px; }



.p-prefilter-bar .p-prefilter-input {
    font-size: var(--p-bar-font, 10px);
    height: 100%;
    min-height: 0;
    padding: 0 4px;
    line-height: normal;

    border: 2px solid transparent;
    border-radius: calc(var(--p-radius-chip) - 1px);
    background-color: transparent;
    background-clip: padding-box;
    box-sizing: border-box;
    transition: background-color var(--p-motion-fast);
}


.p-prefilter-bar .p-prefilter-input:hover { background-color: var(--p-state-quiet); }
.p-prefilter-bar .p-prefilter-input:focus { border-color: transparent; }
.p-prefilter-bar .p-prefilter-input::placeholder { color: var(--p-color-text-muted); opacity: 1; }
.p-prefilter-bar select.p-prefilter-input {
    padding-inline-end: 20px;
    background-position: right 5px center;
    background-size: 10px 10px;
}

.p-prefilter-bar input[type="number"].p-prefilter-range { width: 6.5em; appearance: textfield; -moz-appearance: textfield; }
.p-prefilter-range::-webkit-inner-spin-button,
.p-prefilter-range::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }



.p-prefilter-date { position: relative; display: inline-flex; height: 100%; }
.p-prefilter-date::before {
    content: attr(data-placeholder);
    display: none;
    position: absolute;
    inset-inline-start: 6px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--p-color-text-muted);
    pointer-events: none;
}
.p-prefilter-date:has(> input[data-empty]:not(:focus))::before { display: block; }
.p-prefilter-bar .p-prefilter-date > input[data-empty]:not(:focus) { -webkit-text-fill-color: transparent; }
.p-prefilter-range::-webkit-calendar-picker-indicator { margin-inline-start: 2px; opacity: .45; cursor: pointer; }
.p-prefilter-date:hover > .p-prefilter-range::-webkit-calendar-picker-indicator { opacity: .8; }

.p-prefilter-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 22px;
    height: calc(100% - 4px);
    margin-inline-start: 1px;
    padding: 0;
    border: 0;
    border-radius: calc(var(--p-radius-chip) - 2px);
    background: transparent;
    color: var(--p-color-text-muted);
    cursor: pointer;
}
.p-prefilter-more:hover { background: var(--p-state-hover); color: var(--p-color-text); }
.p-prefilter-more svg { width: 12px; height: 12px; }
.p-prefilter-dash { color: var(--p-color-text-muted); opacity: .7; }



.p-prefilter-item:not(:has(.p-prefilter-range:not([data-empty], :placeholder-shown))) > .p-prefilter-dash { visibility: hidden; }

.p-prefilter-actions {
    display: inline-flex;
    gap: 6px;
    margin-inline-start: auto;
}

.p-prefilter-actions .p-btn {
    height: var(--p-bar-ctl-h, 20px);
    padding: 0 12px;
    font-size: var(--p-bar-font, 10px);
    border-radius: var(--p-radius-chip);
}



.p-prefilter-fields { display: contents; }
.p-prefilter-summary { display: none; }
.p-prefilter-bar--collapsed { flex-wrap: nowrap; padding-inline: 4px; }
.p-prefilter-bar--collapsed > .p-prefilter-fields { display: none; }
.p-prefilter-bar--collapsed > .p-prefilter-summary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
    height: var(--p-bar-ctl-h, 20px);
    padding-block: 0;
    padding-inline: 3px 8px;
    border: 1px solid transparent;
    border-radius: var(--p-radius-chip);
    background: transparent;
    color: var(--p-color-text);
    font: inherit;
    font-size: var(--p-bar-font, 10px);
    text-align: start;
    cursor: pointer;
}
.p-prefilter-bar--collapsed > .p-prefilter-summary:hover { background: var(--p-surface-raised-hover); border-color: var(--p-color-border); }
.p-prefilter-summary-icon,
.p-prefilter-summary-caret { display: inline-flex; flex: 0 0 auto; }







.p-prefilter-summary-icon { color: var(--p-color-text-muted); position: relative; inset-inline-start: -0.5px; }
.p-table-host--loft .p-prefilter-summary-icon { inset-inline-start: 0; }
.p-prefilter-summary-icon svg { width: 12px; height: 12px; stroke-width: 1; }
.p-prefilter-summary-caret { margin-inline-start: auto; opacity: .55; }
.p-prefilter-summary-caret svg { width: 10px; height: 10px; }
.p-prefilter-summary-text { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-prefilter-bar--open { position: relative; z-index: 30; }
.p-prefilter-bar--open .p-prefilter-summary-caret { transform: rotate(180deg); }

.p-prefilter-bar--open > .p-prefilter-fields {
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: absolute;
    top: calc(100% + 1px);
    inset-inline: 0;
    min-height: var(--p-prefilter-panel-h, 0px);
    box-sizing: border-box;
    padding: 12px;
    background: var(--p-table-header-surface);
    border-block-end: 1px solid var(--p-color-border);
}

.p-prefilter-bar--open .p-prefilter-item { display: flex; }
.p-prefilter-bar--open .p-prefilter-item > .p-prefilter-label { min-width: 5em; }
.p-prefilter-bar--open .p-prefilter-item > select { flex: 1 1 auto; }
.p-prefilter-bar--open .p-prefilter-item > :is(input.p-prefilter-range, .p-prefilter-date) { flex: 1 1 0; width: auto; min-width: 0; }
.p-prefilter-bar--open .p-prefilter-date > input { width: 100%; }
.p-prefilter-bar--open .p-prefilter-actions { margin-inline-start: 0; justify-content: flex-end; }






.p-table-host--narrow .p-table thead tr.p-tr-filterbar,
.p-table-host--narrow .p-table tfoot { display: none; }










.p-table-titlebar {
    flex-shrink: 0;
    display: flex; align-items: center; gap: 8px;
    min-width: 0; min-height: 36px;
    padding-inline: 12px;
    border-block-end: 1px solid var(--p-color-border);
    background: var(--p-table-header-surface);
    color: var(--p-color-text-muted);
    position: relative;
}
.p-table-titlebar-toggle {
    flex: 0 0 auto; display: inline-grid; place-items: center;
    width: 22px; height: 22px; margin-inline-start: -4px; padding: 0;
    border: 0; border-radius: var(--p-radius); background: transparent; color: inherit; cursor: pointer;
}
.p-table-titlebar-toggle:hover { background: var(--p-accent-ghost-hover); color: var(--p-color-text); }
.p-table-titlebar-toggle svg { width: 14px; height: 14px; }
.p-table-titlebar-toggle[aria-expanded="true"] svg { transform: rotate(90deg); }
html[dir="rtl"] .p-table-titlebar-toggle[aria-expanded="false"] svg { transform: scaleX(-1); }
.p-table-titlebar-icon { flex: 0 0 auto; display: inline-flex; }
.p-table-titlebar-icon svg { width: 16px; height: 16px; }
.p-table-titlebar-title {
    flex: 0 1 auto; min-width: 0;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    font-size: 14px; font-weight: 600; color: var(--p-color-text);
}
.p-table-titlebar-title a { color: inherit; text-decoration: none; }
.p-table-titlebar-title a:hover { text-decoration: underline; }
.p-table-titlebar-go { display: inline-flex; vertical-align: middle; margin-inline-start: 2px; color: var(--p-color-text-muted); }
.p-table-titlebar-go svg { width: 12px; height: 12px; }
html[dir="rtl"] .p-table-titlebar-go svg { transform: scaleX(-1); }
.p-table-titlebar-desc {
    flex: 1 1 0; min-width: 0;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    font-size: 12px;
}
.p-table-titlebar-meta { flex: 0 0 auto; margin-inline-start: auto; font-size: 11px; font-variant-numeric: tabular-nums; }
.p-table-titlebar-meta[hidden] { display: none; }

.p-table-collapsed > :not(.p-table-titlebar) { display: none !important; }
.p-table-collapsed > .p-table-titlebar { border-block-end: 0; }

.p-table-toolbar {
    justify-content: flex-start;
    align-items: center;



    user-select: none;
    -webkit-user-select: none;
    padding-block: 0;
    color: var(--p-color-text-muted);

    border-bottom: 1px solid var(--p-color-border);




    background: var(--p-table-header-surface);
    font-variant-numeric: tabular-nums;
    line-height: 13px;
    flex-shrink: 0;



    min-height: var(--p-bar-h, 24px);
    height: var(--p-bar-h, 24px);
    box-sizing: border-box;


    position: relative;
    z-index: 10;
}



:where(:not([hidden], script, style, template, link)) ~ .p-table-host:not(.p-table-group-side) > .p-table-toolbar,
:where(:not([hidden], script, style, template, link)) ~ .p-table-host:not(.p-table-group-side) > .p-table-group-wrap > .p-table-original-side > .p-table-toolbar,
:where(:not([hidden], script, style, template, link)) ~ .p-table-host:not(.p-table-group-side) > .p-table-group-wrap:has(> .p-table-original-side > .p-table-toolbar) > .p-table-group-side > .p-table-toolbar {
    border-block-start: 1px solid var(--p-color-border);
}





:where(:not([hidden], script, style, template, link) ~ .p-table-host:not(.p-table-group-side, .p-table-host--no-toolbar):has(> .p-table-toolbar, > .p-table-group-wrap > .p-table-original-side > .p-table-toolbar)) { margin-block-start: -1px; }


:where(:not([hidden], script, style, template, link)) ~ .p-table-host:not(.p-table-group-side) > .p-table-titlebar { border-block-start: 1px solid var(--p-color-border); }
.p-table-host:not(.p-table-group-side) > .p-table-titlebar + .p-table-toolbar { border-block-start: 0; }
:where(:not([hidden], script, style, template, link) ~ .p-table-host:not(.p-table-group-side):has(> .p-table-titlebar)) { margin-block-start: -1px; }


.p-table-group-wrap:has(> .p-table-original-side > .p-table-wrap) > .p-table-group-side { border-block: 1px solid var(--p-color-border); }
.p-toolbar-chips, .p-toolbar-right {
    display: flex;
    gap: 14px;
    align-items: center;
    flex-wrap: nowrap;
    overflow: hidden;


    min-width: 0;
}



.p-toolbar-right { flex-shrink: 0; gap: 4px; }

.p-toolbar-chips { flex-shrink: 0; gap: 4px; }

.p-toolbar-chips:empty { display: none; }



.p-toolbar-counts {


    display: inline-flex; align-items: stretch; flex: 0 0 auto; min-width: min-content;
    height: var(--p-bar-ctl-h, 20px);
    box-sizing: border-box;

    --p-toolbar-seg-line: var(--p-color-border);
    border: 1px solid var(--p-toolbar-seg-line);
    border-radius: var(--p-radius-chip);
    background: transparent;
    overflow: hidden;
    transition: background var(--p-motion-fast), border-color var(--p-motion-fast);
}
.p-toolbar-counts:hover { border-color: color-mix(in srgb, var(--p-color-text) 22%, transparent); }
.p-toolbar-count-seg {
    display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto;
    padding: 0 8px;
    border: 0;
    background: transparent;
    color: var(--p-color-text-muted);
    font: inherit; font-size: var(--p-bar-font, 10px);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    cursor: default;
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
}
.p-toolbar-count-seg + .p-toolbar-count-seg { border-inline-start: 1px solid var(--p-toolbar-seg-line, var(--p-color-border)); }
.p-toolbar-count-seg svg { width: 14px; height: 14px; flex: 0 0 auto; }
.p-toolbar-count-seg b { font-weight: 400; font-size: 12px; color: var(--p-color-text); }



.p-toolbar-count-records b { font-weight: 600; }
.p-toolbar-count-records .p-toolbar-count-of { font-weight: 400; }
button.p-toolbar-count-seg { cursor: pointer; }
button.p-toolbar-count-seg:hover { background: var(--p-accent-ghost-hover); color: var(--p-color-text); }




.p-toolbar-count-seg:is(.p-toolbar-count-seg--on, .p-toolbar-count-selected, .p-toolbar-count-sum) {
    background: var(--p-accent-tonal);
    color: var(--p-color-text);
}
.p-toolbar-count-seg:is(.p-toolbar-count-seg--on, .p-toolbar-count-selected, .p-toolbar-count-sum) b { color: var(--p-color-text); }
button.p-toolbar-count-seg:is(.p-toolbar-count-seg--on, .p-toolbar-count-sum):hover { background: var(--p-accent-tonal-hover); color: var(--p-color-text); }




.p-toolbar-search {
    flex: 0 1 220px; min-width: 96px; max-width: 220px;
    display: flex; align-items: center; gap: 6px;
    height: var(--p-bar-ctl-h, 20px);
    padding-inline: 8px;
    box-sizing: border-box;
    border: 1px solid transparent;
    border-radius: var(--p-radius-chip);
    background: transparent;
    color: var(--p-color-text-muted);
    user-select: text;
    transition: background var(--p-motion-fast), border-color var(--p-motion-fast);
}
.p-toolbar-search[hidden] { display: none; }
.p-toolbar-search:hover { background: var(--p-accent-ghost-hover); }
.p-toolbar-search:has(.p-toolbar-search-input:not(:placeholder-shown)) { background: var(--p-surface-raised); border-color: var(--p-color-border); }
.p-toolbar-search:focus-within { background: var(--p-surface-raised); border-color: var(--p-color-primary); }

.p-toolbar-reload { display: flex; flex: 0 0 auto; }
.p-toolbar-reload:empty { display: none; }
.p-toolbar-count-segs { display: contents; }
.p-toolbar-search-icon { display: inline-flex; flex: 0 0 auto; }
.p-toolbar-search-icon svg { width: 14px; height: 14px; }
.p-toolbar-search-input {


    flex: 1 1 auto; min-width: 0; width: 100%;
    border: 0; background: transparent; outline: none;
    font: inherit; font-size: var(--p-bar-font, 10px);
    color: var(--p-color-text);
    text-overflow: ellipsis;
}
.p-toolbar-search-input::placeholder { color: var(--p-color-text-muted); }


.p-table-toolbar--narrow .p-toolbar-layout-name { display: none; }
.p-table-toolbar--narrow .p-toolbar-count-of { display: none; }




.p-table-toolbar.p-table-toolbar--narrow > .p-toolbar-lead { margin-inline-end: 6px; }
.p-table-toolbar.p-table-toolbar--narrow > .p-toolbar-right { margin-inline-start: 6px; }
.p-table-toolbar--narrow .p-toolbar-search { min-width: 56px; }



.p-table-toolbar--narrow:has(.p-toolbar-search:focus-within) > :is(.p-toolbar-lead, .p-toolbar-right),
.p-table-toolbar--narrow:has(.p-toolbar-search:focus-within) .p-toolbar-counts { display: none; }
.p-table-toolbar--narrow .p-toolbar-search:focus-within { flex: 1 1 auto; max-width: none; }



.p-table-toolbar--narrow .p-toolbar-reload { display: none; }
.p-table-toolbar--narrow .p-toolbar-caret { display: none; }












.p-table-toolbar {
    --p-bar-h: 40px; --p-bar-ctl-h: 30px; --p-bar-font: 13px;

    padding-inline: calc((var(--p-bar-h) - 1px - var(--p-bar-ctl-h)) / 2);
    gap: 4px;
    font-size: 13px;






    display: grid;
    grid-template-columns: minmax(0, max-content) minmax(min-content, 1fr) minmax(min-content, max-content);
    column-gap: 0;
}



.p-table-toolbar.p-table-toolbar--narrow {
    grid-template-columns: minmax(min-content, max-content) minmax(min-content, 1fr) minmax(min-content, max-content);
}
.p-table-toolbar > .p-toolbar-lead { grid-column: 1; margin-inline-end: 8px; }

.p-toolbar-start  { grid-column: 2; display: flex; align-items: center; gap: 8px; min-width: 0; justify-self: stretch; }
.p-toolbar-right  { grid-column: 3; justify-self: end; margin-inline-start: 8px; }


.p-table-toolbar .p-toolbar-toolbar-btn      { min-height: var(--p-bar-ctl-h, 20px); padding: 4px 10px; font-size: 13px; }
.p-table-toolbar .p-toolbar-toolbar-btn svg  { width: 14px; height: 14px; }


.p-table-toolbar .p-toolbar-reload-btn       { width: var(--p-bar-ctl-h); padding: 0; justify-content: center; }
.p-table-toolbar .p-toolbar-group-chip       { font-size: 13px; padding: 2px 4px 2px 8px; }
.p-table-toolbar .p-toolbar-group-chip-close { width: 18px; height: 18px; font-size: 15px; }



.p-groupbar {
    display: flex;
    align-items: center;
    gap: 4px;




    padding: 5px 12px 5px 4px;
    min-height: 40px;
    font-size: 13px;
    box-sizing: border-box;





    background: var(--p-table-header-surface);
    border-bottom: 1px solid var(--p-color-border);
    flex-shrink: 0;
    position: relative;
}

.p-groupbar .p-toolbar-group-chip       { font-size: 13px; line-height: 18px; padding: 2px 4px 2px 8px; }
.p-groupbar .p-toolbar-group-chip-close { width: 18px; height: 18px; font-size: 15px; }
.p-groupbar .p-toolbar-group-chip-caret { width: 18px; height: 18px; font-size: 12px; }





.p-table-host .p-groupbar     { min-height: 28px; padding-block: 2px; font-size: 10px; }
.p-table-host .p-groupbar .p-toolbar-group-chip {
    box-sizing: border-box;
    width: auto;
    min-width: min(calc(var(--p-col-w, 0px) + 36px), 240px);
    max-width: 240px;
    font-size: 11px;
    line-height: 16px;
    padding: 2px 2px 2px 8px;
    background: color-mix(in srgb, var(--p-accent-solid) 12%, var(--p-table-surface));
    border-color: transparent;
    color: var(--p-color-text);
}
.p-table-host .p-groupbar .p-toolbar-group-chip:hover { background: color-mix(in srgb, var(--p-accent-solid) 17%, var(--p-table-surface)); }
.p-table-host .p-groupbar :is(.p-toolbar-group-chip-close, .p-toolbar-group-chip-caret),
.p-table-host .p-groupbar .p-toolbar-group-chip.p-chip-role-row .p-chip-prefix-row { color: var(--p-color-text); }

.p-table-host .p-groupbar .p-toolbar-group-chip-close:hover {
    background: color-mix(in srgb, var(--p-accent-solid) 25%, var(--p-table-surface));
    color: var(--p-color-text);
}
.p-table-host .p-groupbar .p-toolbar-group-chip-label { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.p-table-host .p-groupbar .p-toolbar-group-chip-close { width: 16px; height: 16px; flex-shrink: 0; }
.p-table-host .p-groupbar .p-toolbar-group-chip-caret { width: 14px; height: 16px; flex-shrink: 0; }
.p-groupbar-clear,
.p-groupbar-toggle {

    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    padding: 0;
    border: none;
    background: none;
    color: var(--p-color-text-muted);
    border-radius: var(--p-radius-chip);
    cursor: pointer;
    flex-shrink: 0;
    transition: color var(--p-motion-fast), background var(--p-motion-fast);
}
.p-groupbar-clear:hover,
.p-groupbar-toggle:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 18%, transparent);
    color: var(--p-color-text);
}


.p-groupbar-place {
    display: inline-flex;
    flex-shrink: 0;
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    overflow: hidden;
}
.p-groupbar-place[hidden] { display: none; }
.p-groupbar-place .p-groupbar-toggle {
    width: auto;
    height: 22px;
    gap: 5px;
    padding: 0 8px;
    border-radius: 0;
    font: inherit;
    font-size: 11px;
    line-height: 16px;
    white-space: nowrap;
}
.p-groupbar-place .p-groupbar-toggle:not([hidden]) + .p-groupbar-toggle:not([hidden]) { border-inline-start: 1px solid var(--p-color-border); }
.p-table-host--narrow .p-groupbar-place-label { display: none; }
.p-table-host--narrow .p-groupbar-place .p-groupbar-toggle { padding: 0 5px; }
.p-groupbar-toggle[hidden] { display: none; }
.p-groupbar-toggle:disabled { opacity: var(--p-disabled-opacity); cursor: default; background: none; }
.p-groupbar-toggle.p-groupbar-toggle--on {
    background: color-mix(in srgb, var(--p-accent-solid) 12%, var(--p-table-surface));
    color: var(--p-color-text);
}
.p-groupbar-toggle.p-groupbar-toggle--on:hover { background: color-mix(in srgb, var(--p-accent-solid) 17%, var(--p-table-surface)); }
.p-groupbar-host {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
    flex: 1;
    min-width: 0;
}
.p-groupbar-host .p-toolbar-groups { flex-wrap: wrap; }
.p-groupbar.p-groupbar--drop-target {
    background: color-mix(in srgb, var(--p-color-primary) 6%, var(--p-surface-raised));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--p-color-primary) 50%, transparent);
}

.p-table-toolbar.p-table-toolbar--drop-target {
    background: color-mix(in srgb, var(--p-color-primary) 12%, var(--p-table-header-surface));
    box-shadow: inset 0 0 0 1px var(--p-color-primary);
}

.p-table-toolbar--col-drag * { pointer-events: none; }


.p-table-host--col-drag, .p-table-host--col-drag * { cursor: grabbing !important; }

.p-groupbar.p-groupbar--hidden { display: none; }





.p-print-root { display: none; }
.p-print-title { font-size: 16px; font-weight: 600; margin: 0 0 10px; }
.p-export-table { border-collapse: collapse; width: 100%; font-size: 11px; font-family: var(--p-font); }
.p-export-table th, .p-export-table td { border: 1px solid var(--p-color-border); padding: 2px 6px; white-space: nowrap; }
.p-export-table thead th { background: color-mix(in srgb, var(--p-color-text-muted) 12%, var(--p-surface-chassis)); font-weight: 600; }

@media print {

    body.p-printing > *:not(.p-print-root) { display: none !important; }
    body.p-printing .p-print-root { display: block !important; }

    .p-print-root, .p-print-root * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }
    .p-export-table thead { display: table-header-group; }
    .p-export-table tr { page-break-inside: avoid; }
    @page { margin: 12mm; }
}


.p-toolbar-groups {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
}
.p-toolbar-group-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 3px 3px 7px;
    background: color-mix(in srgb, var(--p-color-text-muted) 14%, var(--p-surface-raised));
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    font-size: 11px;
    line-height: 15px;
    color: var(--p-color-text);
    white-space: nowrap;
    user-select: none;
    cursor: pointer;
    transition: opacity var(--p-motion-fast), box-shadow var(--p-motion-fast), border-color var(--p-motion-fast);
}
.p-toolbar-group-chip:active { cursor: pointer; }
.p-toolbar-group-chip.dragging { opacity: 0.4; }
.p-toolbar-group-chip-label { font-weight: 400; }
.p-toolbar-group-chip-close {
    background: transparent;
    border: none;
    padding: 0;
    width: 16px;
    height: 16px;
    border-radius: var(--p-radius-chip);
    color: var(--p-color-text-muted);
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.p-toolbar-group-chip-close:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 25%, transparent);
    color: var(--p-color-text);
}



.p-toolbar-group-chip-prefix {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    line-height: 1;
    flex-shrink: 0;
}

.p-toolbar-group-chip-prefix svg {
    width: 12px;
    height: 12px;
    display: block;
}


.p-toolbar-group-chip.p-chip-role-col .p-chip-prefix-col {
    color: var(--p-color-warn);
}

.p-toolbar-group-chip-value { color: var(--p-color-success); }
.p-pivot-value-agg { display: inline-flex; vertical-align: -2px; margin-inline-end: 3px; }
.p-pivot-value-agg svg { width: 12px; height: 12px; display: block; }
.p-toolbar-group-chip.p-chip-role-detail .p-chip-prefix-detail {
    color: var(--p-color-info);
}

.p-toolbar-group-chip.p-chip-role-row .p-chip-prefix-row {
    color: var(--p-color-text-muted);
}
.p-toolbar-group-chip-caret {
    background: transparent;
    border: none;
    padding: 0;
    width: 14px;
    height: 16px;
    border-radius: var(--p-radius-chip);
    color: var(--p-color-text-muted);
    cursor: pointer;
    font-size: 10px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-inline-start: -2px;
}




.p-toolbar-layout,
.p-toolbar-presets {
    display: flex;
    align-items: center;
    gap: 6px;



    flex: 0 1 auto;
    min-width: 0;
    position: relative;
}

.p-toolbar-presets:empty { display: none; }


.p-toolbar-layout-btn,
.p-toolbar-combo {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
    max-width: 100%;
    min-width: 0;
    height: var(--p-bar-ctl-h, 20px);
    padding: 0 8px;
    border: 1px solid transparent;
    border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-surface-raised) 50%, transparent);


    color: color-mix(in srgb, var(--p-color-text) 50%, var(--p-color-text-muted));
    cursor: pointer;
    font-size: var(--p-bar-font, 10px);
    font-family: inherit;
    transition: background var(--p-motion-fast), border-color var(--p-motion-fast), color var(--p-motion-fast);
}

.p-toolbar-layout-btn:hover,
.p-toolbar-combo:hover {
    background: var(--p-accent-ghost-hover);
    border-color: transparent;
    color: var(--p-color-text);
}
.p-toolbar-layout-icon  { display: inline-flex; flex: 0 0 auto; color: inherit; }

.p-toolbar-layout-icon svg  { width: 14px; height: 14px; }
.p-toolbar-layout-name  { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-toolbar-preset-btn--custom .p-toolbar-layout-name { font-weight: 600; }


.p-toolbar-lead .p-toolbar-preset-btn.p-toolbar-preset-btn--custom,
.p-toolbar-lead .p-toolbar-preset-btn.p-toolbar-preset-btn--custom:not(:hover) {
    background: var(--p-accent-soft); color: var(--p-accent-soft-fg); border-color: var(--p-accent-soft-border);
}
.p-toolbar-lead .p-toolbar-preset-btn.p-toolbar-preset-btn--custom:hover { background: var(--p-accent-soft-hover); border-color: var(--p-accent-soft-border); }
.p-toolbar-combo i { font-style: normal; font-weight: 600; opacity: 0.8; }

.p-toolbar-caret { display: inline-flex; flex: 0 0 auto; margin-inline-start: 4px; color: var(--p-color-text-muted); }
.p-toolbar-caret svg { width: 12px; height: 12px; }




.p-toolbar-lead { display: flex; align-items: center; gap: 0; min-width: 0; }
.p-toolbar-lead:not(:has(.p-toolbar-layout-btn, .p-toolbar-preset-btn)) { display: none; }
.p-toolbar-lead :is(.p-toolbar-layout-btn, .p-toolbar-preset-btn):not(:hover) { background: transparent; }



.p-toolbar-lead > .p-toolbar-layout { flex-shrink: 0; }
.p-toolbar-lead :is(.p-toolbar-layout-btn, .p-toolbar-preset-btn) { overflow: hidden; }

.p-toolbar-preset-btn:has(.p-toolbar-layout-name) .p-toolbar-layout-icon { display: none; }
.p-table-toolbar--narrow .p-toolbar-preset-btn .p-toolbar-layout-icon { display: inline-flex; }


.p-toolbar-toolbar {
    display: flex;
    gap: 4px;
    align-items: center;
    margin-inline-start: auto;
}


.p-toolbar-more { flex-shrink: 0; }
.p-toolbar-toolbar-sep {
    width: 1px;
    height: 16px;


    background: color-mix(in srgb, currentColor 30%, transparent);
    margin: 0 2px;
}
.p-toolbar-toolbar-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;



    white-space: nowrap;
    flex-shrink: 0;
    padding: 2px 8px;
    border: 1px solid transparent;
    border-radius: var(--p-radius-chip);
    background: var(--p-accent-ghost);
    color: var(--p-accent-ghost-fg);
    cursor: pointer;
    font-size: 11px;
    font-family: inherit;
    transition: background var(--p-motion-fast), border-color var(--p-motion-fast), color var(--p-motion-fast);
}
.p-toolbar-toolbar-btn:hover {
    background: var(--p-accent-ghost-hover);
    color: var(--p-color-text);
}
.p-toolbar-toolbar-btn:disabled { opacity: var(--p-disabled-opacity); cursor: not-allowed; }



.p-toolbar-toolbar-btn--primary {
    color: var(--p-color-text);
    font-weight: 600;
}

.p-toolbar-toolbar-btn--on {
    --p-color-on-surface-mix: var(--p-accent-tonal);
    background: var(--p-accent-tonal);
    color: var(--p-accent-tonal-fg);
}
.p-toolbar-toolbar-btn--on:hover {
    background: var(--p-accent-tonal-hover);
    color: var(--p-accent-tonal-fg);
}
.p-toolbar-toolbar-btn svg { width: 12px; height: 12px; }

.p-toolbar-toolbar-btn svg.p-icon-parts { width: 16px; height: 16px; }

.p-toolbar-toolbar-btn.is-busy, .p-toolbar-reload-btn.is-busy { pointer-events: none; color: var(--p-text-accent); }
.p-toolbar-toolbar-btn.is-busy svg, .p-toolbar-reload-btn.is-busy svg { animation: p-spin 0.7s linear infinite; }

.p-focus-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }



.p-modal-backdrop {
    position: fixed; inset: 0;
    background: rgba(0,0,0,0.4);
    display: flex; align-items: center; justify-content: center;
    z-index: var(--p-z-modal);
}
.p-modal {
    background: var(--p-surface-raised);
    border-radius: var(--p-radius-card);
    box-shadow: var(--p-shadow-modal);







    min-width: 280px;
    width: min(520px, 95vw);
    max-width: 520px;
    max-height: 90vh;
    display: flex; flex-direction: column;
}
.p-modal-head {
    padding: 10px 10px 10px 18px;
    font-weight: 600;
    color: var(--p-color-text);
    border-bottom: 1px solid var(--p-color-border);
    display: flex;
    align-items: center;
    gap: 8px;
}
.p-modal-head-title {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.p-modal-head-close {
    flex-shrink: 0;
    width: 28px; height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: var(--p-radius-chip);
    background: transparent;
    color: var(--p-color-text-muted);
    cursor: pointer;
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
}
.p-modal-head-close:hover,
.p-modal-head-close:focus-visible {
    background: color-mix(in srgb, var(--p-color-text-muted) 8%, transparent);
    color: var(--p-color-text);
    outline: none;
}
.p-modal-body {
    padding: 14px 18px;
    min-width: 0;
    overflow-x: hidden;
}



.p-modal--fixed-height .p-modal-body,
.p-modal--resizable    .p-modal-body {
    flex: 1; min-height: 0; overflow-y: auto;
}


.p-modal--resizable             { overflow: hidden; }
.p-modal--resizable-both        { resize: both; }
.p-modal--resizable-horizontal  { resize: horizontal; }
.p-modal--resizable-vertical    { resize: vertical; }
.p-modal-foot {
    display: flex; justify-content: flex-end; gap: 8px;
    padding: 12px 18px;
    border-top: 1px solid var(--p-color-border);
}
.p-modal-label {
    font-size: 11px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.04em;
    color: var(--p-color-text-muted);
    margin: 6px 0 4px;
}
.p-modal-label:first-child { margin-top: 0; }
.p-modal-visibility { display: flex; gap: 4px; margin-bottom: 8px; }
.p-modal-vis-btn {
    flex: 1;
    padding: 6px 10px;
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    background: var(--p-surface-raised);
    color: var(--p-color-text-muted);
    cursor: pointer;
    font-size: 12px;
    font-family: inherit;
    transition: background var(--p-motion-fast), color var(--p-motion-fast), border-color var(--p-motion-fast);
}
.p-modal-vis-btn:hover { background: var(--p-surface-raised-hover); color: var(--p-color-text); }
.p-modal-vis-btn--active {
    background: var(--p-state-active);
    color: var(--p-color-text);
    border-color: var(--p-color-primary);
}
.p-modal-vis-btn--active:hover { background: var(--p-state-active-hover); }
.p-modal-inputs { display: flex; flex-direction: column; gap: 6px; }
.p-modal-single-input { width: 100%; }




.p-translated { display: flex; flex-direction: column; gap: 6px; }


.p-translated-field { position: relative; display: block; }
.p-translated-input { width: 100%; padding-inline-end: 40px; }
.p-translated-badge {
    position: absolute; inset-inline-end: 6px; top: 50%; transform: translateY(-50%);
    min-width: 26px; padding: 2px 6px; border: 0; border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-color-text-muted) 18%, var(--p-surface-raised));
    color: var(--p-color-text-muted);
    font-size: 10px; font-weight: 600; letter-spacing: .04em; text-align: center; line-height: 1.4;
    font-family: inherit;
}


button.p-translated-badge { cursor: pointer; transition: background var(--p-motion-calm), color var(--p-motion-calm); }
button.p-translated-badge:hover,
button.p-translated-badge.is-open {
    background: color-mix(in srgb, var(--p-color-primary) 18%, var(--p-surface-raised));
    color: var(--p-color-text);
}
button.p-translated-badge[disabled] { cursor: default; }


button.p-translated-badge.is-busy,
button.p-translated-badge.is-busy:hover { color: transparent; background: transparent; }
button.p-translated-badge.is-busy::after {
    content: ""; position: absolute; inset: 0; margin: auto;
    --p-mark-cell: 6px;
}
button.p-translated-badge.is-error {
    background: color-mix(in srgb, var(--p-color-danger) 20%, var(--p-surface-raised));
    color: var(--p-text-danger);
}
.p-translated-rows { display: flex; flex-direction: column; gap: 6px; }
.p-translated-rows[hidden] { display: none; }



.p-translated--multiline .p-translated-badge { top: 7px; transform: none; }
textarea.p-translated-input { resize: vertical; line-height: 1.45; font-family: inherit; }

.p-layout-toast {
    display: inline-block;
    padding: 2px 8px;
    border-radius: var(--p-radius-chip);
    background: var(--p-fill-success);
    color: var(--p-fill-fg-success);
    font-size: 10px;
    margin-inline-start: 8px;
}







.p-table-host:focus,
.p-table > tbody:focus { outline: none; }

.p-table-wrap {
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius);
    overflow: hidden;



    background: var(--p-table-surface);
}








.p-table-viewport {
    overflow: auto;
    position: relative;
    flex: 1;
    min-height: 0;
    scroll-behavior: auto;
    overscroll-behavior: contain;
}


.p-table-host { background: var(--p-table-surface); }



.p-table-host:has(> .p-table-wrap) { background: transparent; }





:root { --p-table-auto-max: calc(100vh - 160px); }
.p-table-auto > .p-table-viewport {
    flex: 0 1 auto;
    height: auto;
    max-height: var(--p-table-auto-max);





    overscroll-behavior: auto;
}


.p-table-fixed > .p-table-viewport { overscroll-behavior: auto; }




.p-table-unframed > .p-table-viewport { max-height: var(--p-table-auto-max); }


.p-table-fit {
    width: fit-content;
    max-width: 100%;
}
.p-table-fit .p-table { width: auto; }
.p-table-viewport .p-table thead tr:first-child th {
    position: sticky;
    top: 0;
    z-index: 3;
}
.p-table-viewport .p-table thead tr.p-tr-filterbar th {
    position: sticky;
    top: var(--p-header-h, 33px);
    z-index: 2;
}
.p-table-viewport .p-table tfoot td {
    position: sticky;
    bottom: 0;
    z-index: 3;
}



.p-table-viewport .p-table:not(.p-table-end-floating) { height: 100%; }

.p-table tbody tr.p-tr-filler:hover > td,
.p-table tbody tr.p-tr-filler > td { background: transparent !important; box-shadow: none !important; pointer-events: none; }





.p-table-viewport .p-table.p-table-end-floating tfoot td { position: relative; }
.p-table-viewport .p-table.p-table-end-floating.p-table-end-floating--scrolled tfoot td {
    position: sticky;
    bottom: 0;
}

.p-table-viewport .p-table .p-td-rowsel,
.p-table-viewport .p-table .p-th-rowsel,
.p-table-viewport .p-table .p-th-rowsel-spacer {
    position: sticky !important;
    inset-inline-start: 0 !important;
}
.p-table-viewport .p-table tbody .p-td-rowsel { z-index: 2 !important; }
.p-table-viewport .p-table thead .p-th-rowsel,
.p-table-viewport .p-table thead .p-th-rowsel-spacer,
.p-table-viewport .p-table tfoot .p-td-rowsel { z-index: 4 !important; }



.p-table-viewport .p-table .p-th-rowsel-spacer {
    background: var(--p-table-header-surface);
    border-inline-end: 1px solid var(--p-table-line-v);
}





.p-table-viewport .p-table tbody td.p-td-pinned {
    position: sticky !important;
    z-index: 2 !important;
}


.p-table-viewport .p-table thead .p-th-pinned,
.p-table-viewport .p-table tfoot td.p-td-pinned {
    position: sticky !important;
    z-index: 5 !important;
}



.p-table-viewport .p-table .p-tr-newrow > :is(.p-td-rowsel, .p-td-pinned) {
    position: sticky !important;
    z-index: 6 !important;
}








.p-table-viewport .p-table { --p-pin-line: color-mix(in srgb, var(--p-color-text) 32%, var(--p-table-surface, var(--p-surface-raised))); }
.p-table-viewport .p-table .p-pinned-last {
    border-inline-end: 1px solid var(--p-pin-line) !important;
    --p-pin-shadow: 4px 0 6px -2px var(--p-color-shadow);
}

html[dir="rtl"] .p-table-viewport .p-table .p-pinned-last { --p-pin-shadow: -4px 0 6px -2px var(--p-color-shadow); }

.p-table-viewport .p-table .p-pinned-first {
    border-inline-start: 1px solid var(--p-pin-line) !important;
    --p-pin-shadow: -4px 0 6px -2px var(--p-color-shadow);
}
html[dir="rtl"] .p-table-viewport .p-table .p-pinned-first { --p-pin-shadow: 4px 0 6px -2px var(--p-color-shadow); }



.p-table-viewport .p-table .p-pinned-last.p-pinned-off {
    border-inline-end-color: var(--p-ink-warn) !important;
    --p-pin-shadow: 0 0 transparent;
}
.p-table-viewport .p-table .p-pinned-first.p-pinned-off {
    border-inline-start-color: var(--p-ink-warn) !important;
    --p-pin-shadow: 0 0 transparent;
}








.p-table th,
.p-table td {
    box-shadow: var(--p-edit-line, 0 0 transparent), var(--p-pin-shadow, 0 0 transparent),
                var(--p-cell-sel, 0 0 transparent), var(--p-row-veil, 0 0 transparent);
}


.p-table tbody td.p-td-merged-prev { border-bottom-color: transparent; }
.p-table tbody td.p-td-merged      {  }
.p-table tbody td.p-td-merge-anchor {
    overflow: visible;
    position: relative;
    z-index: 1;
}



.p-merge-label {
    position: absolute;
    top: 50%;
    inset-inline: 8px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

}

.p-table-viewport .p-table tbody td {
    height: 32px;
    box-sizing: border-box;
}


.p-table tbody td { height: 32px; box-sizing: border-box; }







@media (pointer: coarse) {
    .p-table tbody td {
        user-select: none;
        -webkit-user-select: none;
        -webkit-touch-callout: none;
    }
    .p-table tbody td input,
    .p-table tbody td textarea {
        user-select: text;
        -webkit-user-select: text;
    }
}

.p-table-viewport .p-table tfoot td { height: 32px; box-sizing: border-box; }






.p-table-host     .p-table { font-size: var(--p-cell-fs); }
.p-table-host     .p-table-viewport .p-table tbody td { height: var(--p-row-h); }
.p-table-host     .p-table-viewport .p-table tfoot td,
.p-table-host     .p-table tfoot td { height: 28px; }
.p-table-host     .p-table tbody td,
.p-table-host     .p-table thead th,
.p-table-host     .p-table tfoot td { padding: 3px 8px; }
.p-table-host     .p-table tbody td { height: var(--p-row-h); box-sizing: border-box; }






.p-table-host     .p-table tbody tr[data-key] > td:not(:has(> *)) { padding-block: 2px 4px; }



.p-table-host     .p-table tbody td { --p-cell-room: calc(var(--p-row-h) - 7px); line-height: min(calc(var(--p-cell-fs) + 4px), var(--p-cell-room)); }
.p-table-host     .p-table tbody td > * { vertical-align: middle; }











.p-table-host     .p-table tbody tr[data-key] > td:not(.p-td-editing):not(.p-td-rowsel) { line-height: 0; }
:where(.p-table-host .p-table tbody tr[data-key] > td:not(.p-td-editing):not(.p-td-rowsel)) > * { line-height: min(calc(var(--p-cell-fs) + 4px), var(--p-cell-room)); }


.p-table tbody td.p-td-valign-top    { vertical-align: top; }
.p-table tbody td.p-td-valign-bottom { vertical-align: bottom; }
.p-table-host     .p-table tbody tr[data-key] > td:is(.p-td-valign-top, .p-td-valign-bottom):not(.p-td-editing) { line-height: min(calc(var(--p-cell-fs) + 4px), var(--p-cell-room)); }
.p-table-host     .p-table tbody tr[data-key] > td:not(.p-td-editing) .p-cell-file { line-height: 0; }
.p-table-host     .p-table tbody tr[data-key] > td:not(.p-td-editing) * { max-height: var(--p-cell-room); }
.p-table-host     .p-table tbody tr[data-key] > td:not(.p-td-editing) :is(.p-table-avatar, svg.p-gauge, .p-action-edit, .p-action-impersonate, .p-action-copy, .p-action-rename, .p-action-delete) {
    max-width: var(--p-cell-room);
}
.p-table-host     .p-table thead tr:not(.p-tr-filterbar):not(.p-tr-newrow) th { height: calc(28px + var(--p-stack-extra, 0px)); }
.p-table-host     .p-table thead th { font-size: var(--p-cell-fs); }
.p-table-host     .p-table tfoot td { font-size: calc(var(--p-cell-fs) - 1px); }
.p-table-host     .p-tr-filterbar th { height: 28px; }

.p-table-host     .p-filter-input { font-size: var(--p-cell-fs); padding: 0 7px; }







.p-table-host--loft {
    --p-table-header-surface: var(--p-table-surface);
    --p-table-line-v: transparent;
}


.p-table-host--loft .p-table :is(tbody td, thead th, tfoot td) { border-inline-end-width: 0; }
.p-table-host--loft .p-table .p-pinned-last { border-inline-end-width: 0 !important; }
.p-table-host--loft .p-table .p-pinned-first { border-inline-start-width: 0 !important; }
.p-table-host--loft > .p-table-wrap { border-color: var(--p-table-line); }



.p-table-host--loft .p-table thead .p-tr-grouphead th { border-bottom: 0; }
.p-table-host--loft .p-table thead .p-tr-grouphead th.p-th-grouphead:not(.p-th-grouphead--empty)::after {
    content: '';
    position: absolute;
    inset-inline: 10px;
    bottom: 5px;
    height: 1px;
    background: var(--p-color-border);
}
.p-table-host--loft .p-table tbody td,
.p-table-host--loft .p-table thead th,
.p-table-host--loft .p-table tfoot td { padding-inline: 14px; }
.p-table-host--loft .p-table thead tr:not(.p-tr-filterbar):not(.p-tr-newrow) th { height: calc(36px + var(--p-stack-extra, 0px)); }
.p-table-host--loft .p-table thead th { color: var(--p-color-text-muted); }


.p-table-host--loft .p-table thead tr:not(.p-tr-filterbar) th { font-weight: 600; }


.p-table-host--loft .p-table tfoot td { font-size: var(--p-cell-fs); font-weight: 600; color: var(--p-color-text); border-top-color: var(--p-table-line); }






.p-table-host--loft .p-table { --p-loft-row: calc(var(--p-row-h, 40px) - var(--p-stack-extra, 0px)); }
.p-table-host--loft .p-table .p-tr-filterbar th { height: 36px; }

.p-table-host--loft .p-table tfoot td,
.p-table-host--loft .p-table-viewport .p-table tfoot td { height: var(--p-loft-row); }


.p-table-host--loft .p-table tbody tr:hover td {
    --p-row-veil: inset 0 0 0 9999px color-mix(in srgb, var(--p-color-text) 4%, transparent);
}


.p-table-host--loft .p-table tbody td.p-td-sel-end          { --p-sel-e: inset -1px 0 0 0 var(--p-color-primary); }
[dir="rtl"] .p-table-host--loft .p-table tbody td.p-td-sel-end { --p-sel-e: inset 1px 0 0 0 var(--p-color-primary); }
.p-table-host--loft .p-table tbody tr.p-tr-selected td:where(:not(.p-cell-success, .p-cell-warn, .p-cell-danger, .p-cell-info, [class*="p-cell-soft-"], [class*="p-fill-"], [class*="p-soft-"])) {
    background: color-mix(in srgb, var(--p-color-primary) 8%, var(--p-table-surface));
}
.p-table-host--loft .p-table tbody tr.p-tr-selected td.p-td-rowsel {
    background: color-mix(in srgb, var(--p-color-primary) 32%, var(--p-table-surface)) !important;
}
.p-table-host--loft .p-table tbody tr.p-tr-selected:hover td:where(:not(.p-cell-success, .p-cell-warn, .p-cell-danger, .p-cell-info, [class*="p-cell-soft-"], [class*="p-fill-"], [class*="p-soft-"])) {
    background: color-mix(in srgb, var(--p-color-primary) 12%, var(--p-table-surface));
}
.p-table-host--loft .p-table tbody tr.p-tr-selected:hover td.p-td-rowsel {
    background: color-mix(in srgb, var(--p-color-primary) 40%, var(--p-table-surface)) !important;
}


.p-table .p-tr-spacer > td {
    padding: 0;
    border: none;
}






.p-table-viewport .p-table tbody tr.p-tr-spacer > td { height: auto; padding: 0; }

.p-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 13px;






    background: transparent;
}
.p-table--fixed {
    table-layout: fixed;
}
.p-table--fixed td, .p-table--fixed th {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}




.p-table--fixed td:has(> button:only-child),
.p-table--fixed td:has(> .p-badge:only-child),
.p-table--fixed td:has(> .p-icon-btn:only-child) { text-overflow: clip; }
.p-table col.p-col-rowsel { width: 18px; }
.p-table--fixed col.p-col-rowsel { width: 28px; }






.p-table col.p-col-filler {  }
.p-table .p-th-filler,
.p-table .p-td-filler {
    padding: 0;
    pointer-events: none;
}



.p-table:not(.p-table--filler-row) .p-th-filler,
.p-table:not(.p-table--filler-row) .p-td-filler {
    background: transparent !important;
    border: none !important;
}








.p-table--filler-row tbody .p-td-filler {
    border-bottom: 1px solid var(--p-table-line);
}


.p-table--filler-row tfoot .p-td-filler {
    border-top: 1px solid var(--p-color-border);
    background-color: var(--p-table-header-surface);
}

.p-table--filler-row thead .p-th-filler {
    background-color: var(--p-table-header-surface);
    border-bottom: 1px solid var(--p-color-border);
}

.p-table--filler-row .p-tr-filterbar .p-th-filler {
    background-color: var(--p-table-surface);
    border-bottom: 1px solid color-mix(in srgb, var(--p-color-text-muted) 35%, var(--p-color-border));
}

.p-table--filler-row .p-tr-newrow .p-th-filler,
.p-table--filler-row .p-tr-newrow .p-td-filler {
    background-color: color-mix(in srgb, var(--p-color-primary) 8%, var(--p-surface-raised));
    border-bottom: 1px solid color-mix(in srgb, var(--p-color-primary) 30%, var(--p-color-border));
    border-top:    1px solid color-mix(in srgb, var(--p-color-primary) 30%, var(--p-color-border));
}


.p-col-resize {
    position: absolute;
    top: 0;
    inset-inline-end: 0;
    width: 5px;
    height: 100%;
    cursor: ew-resize;
    user-select: none;
    z-index: 1;
}

.p-col-resize--start { inset-inline-end: auto; inset-inline-start: 0; width: 4px; }
.p-col-resize--idle { cursor: default; }



.p-col-resize::after {
    content: ""; position: absolute; top: 0; bottom: 0; inset-inline-end: 0; width: 1px;
    background: transparent; transition: background var(--p-motion-fast); pointer-events: none;
}
.p-col-resize--start::after { inset-inline-end: auto; inset-inline-start: 0; }
.p-col-resize:not(.p-col-resize--idle):hover::after,
.p-col-resize.is-dragging::after,
th:has(> .p-col-resize:not(.p-col-resize--start):hover) + th > .p-col-resize--start::after,
th:has(+ th > .p-col-resize--start:not(.p-col-resize--idle):hover) > .p-col-resize:not(.p-col-resize--start)::after {
    background: var(--p-color-primary);
}


.p-table-host--loft .p-table thead tr:not(.p-tr-filterbar):not(.p-tr-newrow):hover > th > .p-col-resize:not(.p-col-resize--start)::before {
    content: ""; position: absolute; top: 6px; bottom: 6px; inset-inline-end: 0; width: 1px;
    background: var(--p-table-line); pointer-events: none;
}


.p-col-drop-indicator {
    position: fixed;
    width: 2px;
    background: var(--p-color-primary);
    pointer-events: none;
    z-index: var(--p-z-popover);
    box-shadow: 0 0 4px var(--p-color-primary);
}
.p-th-dragging {
    opacity: 0.5;
}


.p-col-drag-ghost {
    position: fixed;
    pointer-events: none;
    z-index: var(--p-z-popover);
    display: flex;
    opacity: 0.92;
    transform: translate(10px, 14px);
    box-shadow: var(--p-shadow-drag);
    border-radius: var(--p-radius-chip);
    overflow: hidden;
}
.p-col-drag-ghost-item {
    padding: 6px 10px;
    background: var(--p-accent-solid);
    color: var(--p-fill-fg);
    border-inline-end: 1px solid color-mix(in srgb, #fff 30%, var(--p-color-primary));
    font-size: 12px;
    font-weight: 500;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.p-col-drag-ghost-item:last-child { border-inline-end: none; }


.p-col-hidden { display: none; }






























.p-table-history-note { margin: 8px 0 0; font-size: 12px; color: var(--p-color-text-muted); }





.p-table td.p-td-tint { background: var(--p-tint-bg); }



.p-ctxmenu-icon .p-tint-swatch, .p-distinct-label .p-tint-swatch {
    display: inline-block; width: 13px; height: 13px; border-radius: var(--p-radius-chip);
    border: 1px solid var(--p-color-border); box-sizing: border-box; vertical-align: middle;
}







.p-table td.p-cell-gantt,
.p-table td.p-cell-percentbar {
    overflow: hidden;
    padding: 0;
}


.p-table td.p-cell-gantt.p-rangebar-bleed,
.p-table td.p-cell-percentbar.p-rangebar-bleed {
    overflow: visible; position: relative; z-index: 1;
}




.p-rangebar-svg { display: block; width: 100%; height: 100%; overflow: visible; direction: ltr; }

.p-rangebar-bar   { rx: 3; }
.p-rangebar-prog  {  }
.p-rangebar-label { font-size: 11px; dominant-baseline: middle; pointer-events: none; }
.p-rangebar-ms    {  }


.p-rangebar-weekend { fill: color-mix(in srgb, var(--p-color-text) 6%, transparent); }
.p-rangebar-today   { stroke: var(--p-color-danger); stroke-width: 1.5; vector-effect: non-scaling-stroke; }


.p-th-custom { padding: 0; }
.p-rangebar-head { display: block; width: 100%; user-select: none; }
.p-rangebar-head.is-alt     { cursor: grab; }
.p-rangebar-head.is-panning { cursor: grabbing; }
.p-rangebar-tick      { stroke: var(--p-color-border); }
.p-rangebar-tick-sep  { stroke: color-mix(in srgb, var(--p-color-border) 60%, transparent); }
.p-rangebar-tick-lbl0 { font-size: 11px; fill: var(--p-color-text); }
.p-rangebar-tick-lbl1 { font-size: 10px; fill: var(--p-color-text-muted); }



.p-table tbody td.p-cell-dblclickable {
    color: var(--p-color-link);
}







.p-table tbody tr.p-tr-sep > td, .p-table tbody td.p-td-sep { border-bottom: 1px solid color-mix(in srgb, var(--p-color-text) 45%, var(--p-table-surface)); }
.p-table-host--loft .p-table tbody tr.p-tr-sep > td, .p-table-host--loft .p-table tbody td.p-td-sep { border-bottom-color: color-mix(in srgb, var(--p-color-text) 35%, var(--p-table-surface)); }


.p-table tbody td.p-cell-drilldown {
    color: var(--p-color-link);
    font-weight: 500;
}



.p-cell-icon { margin-inline-end: 6px; }



.p-cell-file {
    color: var(--p-color-link);
    font-weight: 500;
    text-decoration: none;
    cursor: default;
    white-space: nowrap;
}
.p-cell-file:hover { text-decoration: none; }
.p-cell-file-icon {
    display: inline-block;
    vertical-align: -3px;
    margin-inline-end: 6px;
    flex-shrink: 0;
}





.p-cell-file-icon--image { color: var(--p-ink-165); }
.p-cell-file-icon--pdf   { color: var(--p-ink-30); }
.p-cell-file-icon--xls   { color: var(--p-ink-150); }
.p-cell-file-icon--ppt   { color: var(--p-ink-45); }
.p-cell-file-icon--doc   { color: var(--p-ink-255); }
.p-cell-file-icon--zip   { color: var(--p-ink-60); }
.p-cell-file-icon--default { color: var(--p-color-text-muted); }
.p-table-host     .p-cell-file-icon { width: 14px; height: 14px; }




.p-table tbody td.p-cell-dblclickable,
.p-table tbody td.p-cell-drilldown {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
}













.p-cascade-host { display: flex; min-width: 0; min-height: 0; }


.p-cascade-host[hidden] { display: none !important; }
.p-cascade-host--right  { flex-direction: row; }
.p-cascade-host--bottom { flex-direction: column; }

.p-cascade-primary {
    flex: 1;
    min-width: 0;
    min-height: 0;
    overflow: auto;
    position: relative;
}

.p-drilldown-pane {
    background: var(--p-surface-raised);
    z-index: var(--p-z-panel);
    display: flex;
    position: relative;
    transition: flex-basis var(--p-motion-calm) ease, width var(--p-motion-calm) ease, height var(--p-motion-calm) ease, transform var(--p-motion-calm) ease;
}
.p-drilldown-pane--right {
    flex: 0 0 55%;
    min-width: 320px;
    flex-direction: row;
    border-inline-start: 1px solid var(--p-color-border);
    box-shadow: -4px 0 12px var(--p-color-shadow);
    transform: translateX(100%);
}
.p-drilldown-pane--bottom {
    flex: 0 0 55%;
    min-height: 200px;
    flex-direction: column;
    border-top: 1px solid var(--p-color-border);
    box-shadow: 0 -4px 12px var(--p-color-shadow);
    transform: translateY(100%);
}
.p-drilldown-pane--open { transform: translateX(0) translateY(0); }



.p-drilldown-pane--resizing { transition: none; }


.p-drilldown-pane--overlay { position: absolute; flex: none; }
.p-drilldown-pane--overlay.p-drilldown-pane--right  { top: 0; bottom: 0; right: 0; }
.p-drilldown-pane--overlay.p-drilldown-pane--bottom { left: 0; right: 0; bottom: 0; }


.p-drilldown-pane--fullscreen {
    position: fixed;
    top: 0; bottom: 0; left: 0; right: 0;
    width: auto !important; height: auto !important;
}


.p-drilldown-pane--min { box-shadow: none; }


.p-drilldown-pane:not(.p-drilldown-pane--overlay):not(.p-drilldown-pane--fullscreen) { box-shadow: none; }
.p-drilldown-pane--right.p-drilldown-pane--min  { flex: 0 0 28px !important; min-width: 28px; width: 28px !important; }
.p-drilldown-pane--bottom.p-drilldown-pane--min { flex: 0 0 28px !important; min-height: 28px; height: 28px !important; }
.p-drilldown-pane--min .p-drilldown-body,
.p-drilldown-pane--min .p-drilldown-splitter { display: none; }


.p-drilldown-pane--right.p-drilldown-pane--max  { flex: 1 1 100% !important; width: auto !important; }
.p-drilldown-pane--bottom.p-drilldown-pane--max { flex: 1 1 100% !important; height: auto !important; }
.p-drilldown-pane--max .p-drilldown-splitter { display: none; }


.p-drilldown-pane[data-level="1"] { z-index: calc(var(--p-z-panel) + 1); }
.p-drilldown-pane[data-level="2"] { z-index: calc(var(--p-z-panel) + 2); }
.p-drilldown-pane[data-level="3"] { z-index: calc(var(--p-z-panel) + 3); }
.p-drilldown-pane[data-level="4"] { z-index: calc(var(--p-z-panel) + 4); }


.p-drilldown-strip {
    flex-shrink: 0;
    background: color-mix(in srgb, var(--p-color-text-muted) 8%, var(--p-surface-chassis));
    display: flex;
    align-items: center;
    cursor: pointer;
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
    color: var(--p-color-text-muted);
}
.p-drilldown-pane--right .p-drilldown-strip,
.p-table-group-strip {
    width: 28px;
    flex-direction: column;
    padding: 8px 0;
    gap: 12px;
    border-inline-end: 1px solid var(--p-color-border);
    align-items: center;
}
.p-drilldown-pane--bottom .p-drilldown-strip {
    height: 28px;
    flex-direction: row;
    padding: 0 8px;
    gap: 12px;
    border-bottom: 1px solid var(--p-color-border);
}
.p-drilldown-strip:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 16%, var(--p-surface-chassis));
    color: var(--p-color-text);
}
.p-drilldown-strip:focus-visible {
    outline: 2px solid var(--p-color-primary);
    outline-offset: -2px;
}
.p-drilldown-strip-close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    flex-shrink: 0;
}
.p-drilldown-strip-close svg { width: 14px; height: 14px; }
.p-drilldown-strip-title {
    color: var(--p-color-text-muted);
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    user-select: none;
    cursor: default;
    flex: 1;
    min-width: 0;
}
.p-drilldown-pane--right .p-drilldown-strip-title,
.p-table-group-strip .p-drilldown-strip-title {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    max-height: calc(100vh - 140px);
    flex: 0 1 auto;
}


.p-drilldown-strip-controls {
    display: flex;
    gap: 2px;
    margin-top: auto;
    flex-shrink: 0;
}
.p-drilldown-pane--right .p-drilldown-strip-controls,
.p-table-group-strip .p-drilldown-strip-controls {
    flex-direction: column;
    margin-top: auto;
    padding-bottom: 4px;
}

.p-drilldown-strip-actions { display: flex; flex-direction: inherit; gap: 2px; }
.p-drilldown-strip-actions[hidden] { display: none; }


.p-drilldown-strip-step { display: flex; flex-direction: inherit; gap: 2px; flex-shrink: 0; }
.p-drilldown-strip-step[hidden] { display: none; }
.p-drilldown-strip-btn:disabled { opacity: 0.35; cursor: default; background: transparent; }


.p-drilldown-pick { width: 100%; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; outline: none; }





.p-table-group-strip,
.p-drilldown-pane--right .p-drilldown-strip { padding-bottom: 4px; }
.p-table-group-strip .p-drilldown-strip-controls,
.p-drilldown-pane--right .p-drilldown-strip-controls { padding-bottom: 0; }
.p-drilldown-pane--bottom .p-drilldown-strip-controls {
    flex-direction: row;
    margin-inline-start: auto;
    margin-top: 0;
    padding-inline-end: 4px;
}
.p-drilldown-strip-btn {
    width: 22px;
    height: 22px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--p-color-text-muted);
    cursor: pointer;
    border-radius: var(--p-radius-chip);
    font-size: 13px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
}
.p-drilldown-strip-btn svg { display: block; width: 13px; height: 13px; }
.p-drilldown-strip-btn:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 20%, transparent);
    color: var(--p-color-text);
}
.p-drilldown-strip-btn:focus-visible {
    outline: 1px solid var(--p-color-primary);
    outline-offset: 0;
}



.p-drilldown-strip-seg {
    display: flex;
    background: color-mix(in srgb, var(--p-color-text-muted) 12%, transparent);
    border-radius: var(--p-radius);
    padding: 1px;
    gap: 0;
}
.p-drilldown-pane--right  .p-drilldown-strip-seg,
.p-table-group-strip      .p-drilldown-strip-seg { flex-direction: column; }
.p-drilldown-pane--bottom .p-drilldown-strip-seg { flex-direction: row; }
.p-drilldown-strip-btn--seg {
    width: 20px;
    height: 20px;
    border-radius: var(--p-radius-chip);
}
.p-drilldown-strip-btn--seg.p-drilldown-strip-btn--active {
    background: var(--p-surface-raised);
    color: var(--p-color-text);
    box-shadow: var(--p-shadow-raised);
}
.p-drilldown-strip-btn--seg:hover:not(.p-drilldown-strip-btn--active) {
    background: color-mix(in srgb, var(--p-color-text-muted) 10%, transparent);
}




.p-drilldown-splitter {
    position: absolute;
    z-index: 3;
}


.p-drilldown-pane--right .p-drilldown-splitter {

    inset-inline-start: -3px;
    top: 0;
    bottom: 0;
    width: 6px;
    height: auto;
    cursor: ew-resize;
}
.p-drilldown-pane--bottom .p-drilldown-splitter {

    top: -3px;
    left: 0;
    right: 0;
    width: auto;
    height: 6px;
    cursor: ns-resize;
}

.p-drilldown-body {
    flex: 1;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    background: var(--p-surface-raised);
    display: flex;
    flex-direction: column;
}

.p-drilldown-frame {
    flex: 1;
    min-width: 0;
    min-height: 0;
    width: 100%;
    border: 0;
    display: block;
    background: transparent;
}


.p-drilldown-modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: calc(var(--p-z-panel) + 5);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity var(--p-motion-calm) ease;
}
.p-drilldown-modal-backdrop--open { opacity: 1; }
.p-drilldown-modal {
    background: var(--p-surface-raised);
    border-radius: var(--p-radius-card);
    box-shadow: var(--p-shadow-modal);
    display: flex;
    flex-direction: column;
    max-height: 90vh;
    overflow: hidden;
}

.p-drilldown-modal--narrow { width: 480px;  max-width: 92vw; height: 86vh; }
.p-drilldown-modal--wide   { width: 900px;  max-width: 92vw; height: 86vh; }
.p-drilldown-modal--full   { width: 96vw;   height: 92vh;    }
.p-drilldown-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--p-color-border);
    flex-shrink: 0;
}
.p-drilldown-modal-title {
    font-weight: 600;
    color: var(--p-color-text);
}
.p-drilldown-modal-close {
    width: 28px;
    height: 28px;
    padding: 0;
    border: none;
    border-radius: var(--p-radius);
    background: transparent;
    color: var(--p-color-text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}
.p-drilldown-modal-close:hover { background: var(--p-surface-raised-hover); color: var(--p-color-text); }
.p-drilldown-modal-close svg { width: 14px; height: 14px; }
.p-drilldown-modal-body {
    flex: 1;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: var(--p-surface-raised);
}













.p-table tbody tr.p-tr-muted td.p-td-pinned { color: color-mix(in srgb, var(--p-color-text-muted) 70%, transparent); }
.p-table tbody tr.p-tr-muted td.p-td-pinned > * { opacity: 0.7; }
:where(.p-table tbody tr.p-tr-muted td.p-td-pinned) > * { color: var(--p-color-text-muted); }


.p-table tbody tr.p-tr-clickable td { cursor: pointer; }


.p-table td.p-cell-number,
.p-table td.p-cell-integer,
.p-table td.p-cell-money,
.p-table td.p-cell-percent,
.p-table td.p-cell-duration,
.p-table td.p-cell-date,
.p-table td.p-cell-datetime,
.p-table td.p-cell-time {
    font-variant-numeric: tabular-nums;
}




.p-table thead .p-tr-grouphead th {
    height: 38px;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 600;
    text-align: center;
    color: var(--p-color-text-muted);
    background: var(--p-table-header-surface);
    border-bottom: 1px solid var(--p-color-border);
    border-inline-end: 1px solid var(--p-table-line-v);
    white-space: nowrap;
}





.p-table thead .p-th-grouphead--toggle { cursor: pointer; user-select: none; }
.p-th-grouphead-chevron { display: inline-block; vertical-align: -2px; margin-inline-start: 4px; width: 12px; height: 12px; opacity: .65; transition: transform var(--p-motion-fast); }
.p-th-grouphead-chevron svg { display: block; width: 12px; height: 12px; }
.p-th-grouphead--collapsed .p-th-grouphead-chevron { transform: rotate(180deg); }
[dir="rtl"] .p-th-grouphead-chevron { transform: rotate(180deg); }
[dir="rtl"] .p-th-grouphead--collapsed .p-th-grouphead-chevron { transform: none; }


.p-table thead tr.p-tr-grouphead:not(:has(th.p-th-grouphead:not(.p-th-grouphead--empty):not(.p-col-hidden))) { display: none; }




.p-cell-bool {
    width: 16px;
    height: 16px;
    vertical-align: middle;
}
.p-cell-bool--on  { color: var(--p-color-text); }
.p-cell-bool--off { color: color-mix(in srgb, var(--p-color-text-muted) 50%, transparent); }

.p-cell-bool--null { color: color-mix(in srgb, var(--p-color-text-muted) 50%, transparent); }











input.p-cell-editor[type="checkbox"],
input.p-newrow-input[type="checkbox"] {
    appearance: none; -webkit-appearance: none; margin: 0;
    position: relative; box-sizing: border-box;
    width: 16px; height: 16px;
    border: none; background: none; cursor: pointer;
    color: color-mix(in srgb, var(--p-color-text-muted) 50%, transparent);
}
input.p-cell-editor[type="checkbox"]:checked,
input.p-newrow-input[type="checkbox"]:checked { color: var(--p-color-text); }


input.p-cell-editor[type="checkbox"]::before,
input.p-newrow-input[type="checkbox"]::before {
    content: ''; position: absolute; inset: 0;
    background-color: currentColor;
    -webkit-mask: var(--p-bool-mask-off) center / 16px 16px no-repeat;
            mask: var(--p-bool-mask-off) center / 16px 16px no-repeat;
}
input.p-cell-editor[type="checkbox"]:checked::before,
input.p-newrow-input[type="checkbox"]:checked::before {
    -webkit-mask-image: var(--p-bool-mask-on);
            mask-image: var(--p-bool-mask-on);
}






















.p-table th {
    padding: 9px 14px;
    text-align: start;


    font-weight: 400;
    font-size: 12px;


    color: color-mix(in srgb, var(--p-color-text) 70%, var(--p-color-text-muted));
    background: var(--p-table-header-surface);
    border-bottom: 1px solid var(--p-color-border);
    border-inline-end: 1px solid var(--p-table-line-v);
    white-space: nowrap;
    user-select: none;
}

.p-table td {
    padding: 9px 14px;


    border-bottom: 1px solid var(--p-table-line);
    border-inline-end: 1px solid var(--p-table-line-v);
    vertical-align: middle;
    background: var(--p-table-surface);
    cursor: default;
}







.p-table--zebra tbody tr:nth-child(even) td:not(.p-td-tint) { background: var(--p-table-zebra); }
.p-table tbody tr:last-child td { border-bottom: none; }


.p-table.p-no-footer tbody tr:last-child td { border-bottom: 1px solid var(--p-color-border); }



.p-table-wrap .p-table.p-no-footer tbody tr:last-child td { border-bottom: none; }
.p-table th:last-child,
.p-table td:last-child { border-inline-end: none; }


.p-table tfoot td {
    padding: 7px 14px;
    background: var(--p-table-header-surface);
    border-top: 1px solid var(--p-color-border);
    border-bottom: none;
    font-size: 12px;
    color: var(--p-color-text);
    user-select: none;
    height: 32px;
    box-sizing: border-box;
}
.p-table tfoot td { font-variant-numeric: tabular-nums; }


.p-table tfoot td.p-td-partial { background: color-mix(in srgb, var(--p-color-warn) 16%, var(--p-table-header-surface)); }


.p-table tfoot td.p-td-topped { background: color-mix(in srgb, var(--p-color-info) 12%, var(--p-table-header-surface)); }

.p-table tbody tr:hover td {


    --p-row-veil: inset 0 0 0 9999px rgba(0, 0, 0, 0.02);
}








.p-table tbody tr.p-tr-group > td {
    background: color-mix(in srgb, var(--p-color-text) calc(min(var(--p-group-depth, 1), 4) * 4%), var(--p-table-surface));
    border-inline-end-color: transparent;
    font-weight: 600;
    cursor: pointer;
    user-select: none;
}
.p-table tbody tr.p-tr-group > td.p-td-group-label { overflow: visible; position: relative; z-index: 1; }




.p-table tbody tr.p-tr-group--cursor .p-group-label .p-tree-chevron {
    outline: 1px dotted var(--p-color-primary);
    outline-offset: -1px;
}
.p-table tbody tr.p-tr-group > td.p-td-group-agg { position: relative; z-index: 2; font-variant-numeric: tabular-nums; }
.p-group-label {
    --p-group-indent: calc(6px + var(--p-group-level, 0) * 16px);
    position: absolute;
    inset-block: 0;
    inset-inline-start: var(--p-group-indent);
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
    overflow: hidden;
    pointer-events: none;
}



.p-group-head {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 0 1 auto;
    min-width: max(0px, calc(var(--p-group-headx, 0px) - var(--p-group-indent)));
    overflow: hidden;
}
.p-group-label .p-tree-chevron { margin-inline-end: 0; flex-shrink: 0; }



.p-group-label .p-tree-chevron--open { padding-inline-start: 2px; }
.p-group-col { color: var(--p-color-text-muted); font-weight: 400; flex-shrink: 0; }
.p-group-value { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.p-group-count {
    flex-shrink: 0;
    box-sizing: border-box;
    min-width: calc(var(--p-group-count-ch, 0) * 1ch + 12px);
    padding: 0 6px;
    text-align: end;
    border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-color-text-muted) 14%, transparent);
    color: var(--p-color-text-muted);
    font-weight: 400;
    font-variant-numeric: tabular-nums;
}
.p-group-empty { color: var(--p-color-text-muted); font-style: italic; font-weight: 400; }



.p-group-aggs {
    flex: 0 1000 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-inline-start: 4px;
    padding-inline-start: 10px;
    border-inline-start: 1px solid color-mix(in srgb, var(--p-color-text-muted) 40%, transparent);
}
.p-group-agg + .p-group-agg { margin-inline-start: 14px; }
.p-group-agg-col { color: var(--p-color-text-muted); font-weight: 400; margin-inline-end: 1px; }

.p-group-agg-val { display: inline-block; text-align: end; font-variant-numeric: tabular-nums; }
.p-group-agg-sym[data-agg]::before {
    content: "";
    display: inline-block;
    min-width: 12px;
    height: 12px;
    line-height: 12px;
    font-size: 12px;
    margin-inline-end: 3px;
    vertical-align: -1px;
    text-align: center;
    color: var(--p-color-text-muted);
    font-weight: 400;
}
.p-group-agg-sym:is([data-agg="sum"], [data-agg="avg"], [data-agg="count"], [data-agg="min"], [data-agg="max"])::before {
    background: currentColor;
    -webkit-mask: var(--p-agg-kresba) center / 12px 12px no-repeat;
            mask: var(--p-agg-kresba) center / 12px 12px no-repeat;
}
.p-group-agg-sym[data-agg="varp"]::before { content: "σ²"; }
.p-group-agg-sym[data-agg="vars"]::before { content: "s²"; }
.p-group-agg-sym[data-agg="stdp"]::before { content: "σ"; }
.p-group-agg-sym[data-agg="stds"]::before { content: "s"; }

.p-group-label--bare .p-group-agg-sym { display: none; }

.p-group-agg-sym--default { display: none; }
.p-group-label.p-group-label--probe { width: max-content; max-width: none; }



.p-table tbody tr.p-tr-group--sel-all > td.p-td-rowsel { background: color-mix(in srgb, var(--p-color-primary) 32%, var(--p-surface-raised)) !important; }
.p-table tbody tr.p-tr-group--sel-all > td.p-td-rowsel:hover { background: color-mix(in srgb, var(--p-color-primary) 40%, var(--p-surface-raised)) !important; }
.p-table tbody tr.p-tr-group--sel-some > td.p-td-rowsel { background: color-mix(in srgb, var(--p-color-primary) 16%, var(--p-surface-raised)) !important; }
.p-table tbody tr.p-tr-group--sel-some > td.p-td-rowsel:hover { background: color-mix(in srgb, var(--p-color-primary) 24%, var(--p-surface-raised)) !important; }

.p-table td.p-td-actions {
    width: 1%;
    white-space: nowrap;
    text-align: end;
    padding-inline-end: 12px;


    overflow: visible;
    text-overflow: clip;
}



.p-perm-chips {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}
.p-perm-chip {
    cursor: pointer;
    transition: filter var(--p-motion-fast), background var(--p-motion-fast);
}
.p-perm-chip:hover {
    filter: brightness(1.05);
}
.p-perm-chip-x {
    opacity: 0.6;
    margin-inline-start: 2px;
    font-weight: 700;
}
.p-perm-chip:hover .p-perm-chip-x { opacity: 1; }


.p-perm-scope {
    opacity: 0.75;
    font-size: 0.85em;
    padding-inline-start: 4px;
    border-inline-start: 1px solid currentColor;
    margin-inline-start: 5px;
}
.p-perm-add {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px; height: 22px;
    padding: 0;
    background: transparent;
    border: 1px dashed var(--p-color-border);
    border-radius: 11px;
    color: var(--p-color-text-muted);
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
    transition: background var(--p-motion-fast), color var(--p-motion-fast), border-color var(--p-motion-fast), border-style var(--p-motion-fast);
}
.p-perm-add:hover {
    background: var(--p-state-hover);
    color: var(--p-color-text);
    border-color: var(--p-color-primary);
    border-style: solid;
}




.p-td-tree {
    white-space: nowrap;
}
.p-td-tree .p-tree-indent {
    display: inline-block;
    width: calc(var(--p-tree-depth, 0) * 16px);
    flex-shrink: 0;
}
.p-tree-chevron {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    margin-inline-end: 4px;
    background: transparent;
    border: none;
    cursor: pointer;
    color: var(--p-color-text-muted);
    vertical-align: middle;
    transition: color var(--p-motion-fast);
}
.p-tree-chevron:hover { color: var(--p-color-text); }
.p-tree-chevron::before {
    content: '';
    width: 0; height: 0;
    border-inline-start: 5px solid currentColor;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    transition: transform var(--p-motion-fast) ease;
    transform-origin: 25% 50%;
}
.p-tree-chevron--open::before {
    transform: rotate(90deg);
}


html[dir="rtl"] .p-tree-chevron::before { transform-origin: 75% 50%; }
html[dir="rtl"] .p-tree-chevron--open::before { transform: rotate(-90deg); }
.p-tree-chevron--empty {
    cursor: default;
    pointer-events: none;
}
.p-tree-chevron--empty::before {
    border-inline-start-color: transparent;
}
.p-tree-label {
    vertical-align: middle;
}


.p-tree-edit-prefix {
    position: absolute;
    inset-block: 0;
    inset-inline-start: 0;
    display: flex;
    align-items: center;
    white-space: nowrap;
    pointer-events: none;
}


.p-tree-grip {
    display: inline-block;
    width: 12px;
    height: 18px;
    padding: 0;
    margin-inline-end: 2px;
    border: none;
    padding-block: 3px;
    padding-inline: 2px;

    background: radial-gradient(circle, currentColor 1px, transparent 1.3px) 0 0 / 4px 4px repeat content-box;
    color: var(--p-color-text-muted);
    vertical-align: middle;
    cursor: move;
    opacity: 0;
    transition: opacity var(--p-motion-fast);
}
tr:hover > td > .p-tree-grip:not(.p-tree-grip--none),
.p-tree-grip:focus-visible { opacity: 1; }
.p-tree-grip:hover { color: var(--p-color-text); }
.p-tree-grip--none { cursor: default; pointer-events: none; }

tr.p-tr-drop-before > td { box-shadow: inset 0  2px 0 0 var(--p-color-primary); }
tr.p-tr-drop-after  > td { box-shadow: inset 0 -2px 0 0 var(--p-color-primary); }
tr.p-tr-drop-into   > td {
    box-shadow: inset 0 2px 0 0 var(--p-color-primary), inset 0 -2px 0 0 var(--p-color-primary);
    background: color-mix(in srgb, var(--p-color-primary) 10%, var(--p-surface-sheet));
}
tr.p-tr-drop-into > td:first-child { box-shadow: inset 2px 2px 0 0 var(--p-color-primary), inset 0 -2px 0 0 var(--p-color-primary); }
tr.p-tr-drop-into > td:last-child  { box-shadow: inset -2px 2px 0 0 var(--p-color-primary), inset 0 -2px 0 0 var(--p-color-primary); }
tr.p-tr-dragging > td { opacity: .4; }


.p-tree-drag {
    position: fixed; left: 0; top: 0; z-index: var(--p-z-overlay); pointer-events: none;
    display: flex; align-items: center; gap: 6px;
    padding: 3px 8px; white-space: nowrap; overflow: hidden;
    background: var(--p-surface-raised);
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip, 6px);
    box-shadow: 0 2px 8px color-mix(in srgb, var(--p-color-text) 18%, transparent);
    opacity: .75;
}


.p-action-impersonate,
.p-action-copy,
.p-action-rename {
    display: inline-flex; align-items: center; justify-content: center;
    width: 26px; height: 26px;
    padding: 0;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--p-radius-chip);
    color: var(--p-color-text-muted);
    cursor: pointer;
    text-decoration: none;
    transition: background var(--p-motion-fast), color var(--p-motion-fast), border-color var(--p-motion-fast);
}
.p-action-impersonate:hover,
.p-action-copy:hover,
.p-action-rename:hover {
    background: var(--p-state-active);
    color: var(--p-color-text);
    border-color: color-mix(in srgb, var(--p-color-primary) 30%, transparent);
}

.p-action-impersonate svg,
.p-action-copy svg,
.p-action-rename svg { width: 14px; height: 14px; display: block; }



.p-table .p-tr-filterbar th,
.p-table-host     .p-table .p-tr-filterbar th {
    padding: 0;
}
.p-tr-filterbar th {



    height: 36px;




    background: var(--p-table-surface);

    border-bottom: 1px solid color-mix(in srgb, var(--p-color-text-muted) 35%, var(--p-color-border));
}


thead[data-newrow="below-filter"] .p-tr-filterbar th { border-bottom: none; }
thead .p-tr-newrow > td {
    border-bottom-color: color-mix(in srgb, var(--p-color-text-muted) 35%, var(--p-color-border)) !important;
}


.p-tr-filterbar .p-th-filterbar-rowsel {
    padding: 4px 0;
    text-align: center;
    background: var(--p-table-header-surface);
    border-inline-end: 1px solid var(--p-table-line-v);
}
.p-filter-input {
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 7px;
    font-size: var(--p-cell-fs);
    font-family: inherit;
    color: var(--p-color-text);




    border: 1px solid transparent;
    border-radius: 0;
    background: transparent;
    outline: none;
    transition: border-color var(--p-motion-fast), background-color var(--p-motion-fast);
}




.p-filter-input:focus {


    border-color: var(--p-color-primary);
}




.p-filter-input--invalid {
    background-color: color-mix(in srgb, var(--p-color-danger, #dc2626) 16%, var(--p-table-surface)) !important;
}


.p-filter-input.p-filter-input--set {
    background-color: color-mix(in srgb, var(--p-accent-solid) 12%, var(--p-table-surface));
    color: var(--p-color-text);
}



.p-filter-input.p-filter-input--set:not(:focus) {
    border: 2px solid transparent;
    background-clip: padding-box;
    padding: 0 6px;
}



.p-distinct-pop {
    position: fixed;
    z-index: var(--p-z-popover);
    width: 268px;
    max-width: 92vw;
    display: flex;
    flex-direction: column;
    background: var(--p-surface-raised, #fff);
    border: 1px solid var(--p-color-border, #d4d4d8);
    border-radius: var(--p-radius-card);
    box-shadow: var(--p-shadow-float);
    font-size: 13px;
    color: var(--p-color-text, #18181b);
    overflow: hidden;
}
.p-distinct-head { padding: 8px; border-bottom: 1px solid var(--p-color-border, #e4e4e7); }
.p-distinct-search {
    width: 100%;
    box-sizing: border-box;
    padding: 5px 8px;
    border: 1px solid var(--p-color-border, #d4d4d8);
    border-radius: var(--p-radius);
    background: var(--p-surface-raised, #fff);
    color: inherit;
    font: inherit;
}
.p-distinct-bulk {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    border-bottom: 1px solid var(--p-color-border, #e4e4e7);
}
.p-distinct-bulk button {
    border: 1px solid var(--p-color-border, #d4d4d8);
    background: transparent;
    color: inherit;
    border-radius: var(--p-radius);
    padding: 3px 8px;
    cursor: pointer;
    font: inherit;
}
.p-distinct-bulk button:hover { background: var(--p-color-hover, rgba(0, 0, 0, .05)); }
.p-distinct-summary { margin-inline-start: auto; opacity: .6; font-variant-numeric: tabular-nums; }
.p-distinct-list { max-height: 280px; overflow-y: auto; padding: 4px 0; }
.p-distinct-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 10px;
    cursor: pointer;
}
.p-distinct-item:hover { background: var(--p-color-hover, rgba(0, 0, 0, .05)); }
.p-distinct-item--disabled { opacity: var(--p-disabled-opacity); cursor: not-allowed; }
.p-distinct-item--empty { opacity: .5; }
.p-distinct-item input[type="checkbox"] { flex: none; margin: 0; cursor: inherit; }
.p-distinct-label { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-distinct-label .p-dot { margin-inline-end: 6px; }
.p-distinct-label .p-tint-swatch { margin-inline-end: 6px; }

.p-distinct-swatch {
    display: inline-block;
    width: 12px;
    height: 12px;
    flex: none;
    margin-inline-end: 6px;
    border-radius: var(--p-radius-chip);
    border: 1px solid rgba(0, 0, 0, .15);
    vertical-align: -1px;
}
.p-distinct-itemcount { flex: none; opacity: .5; font-variant-numeric: tabular-nums; font-size: 11px; }
.p-distinct-note { padding: 4px 10px; opacity: .6; font-size: 11px; }
.p-distinct-foot {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 8px;
    border-top: 1px solid var(--p-color-border, #e4e4e7);
}
.p-distinct-foot button {
    border: 1px solid var(--p-color-border, #d4d4d8);
    background: transparent;
    color: inherit;
    border-radius: var(--p-radius);
    padding: 5px 12px;
    cursor: pointer;
    font: inherit;
}


.p-distinct-apply {
    background: var(--p-accent-solid) !important;
    border-color: var(--p-accent-solid) !important;
    color: var(--p-accent-solid-fg) !important;
}
.p-distinct-foot button:hover { filter: brightness(.97); }

.p-daterange-pop { width: auto; min-width: 250px; }
.p-daterange-fields { display: flex; flex-direction: column; gap: 8px; padding: 10px; }
.p-daterange-fields label { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--p-color-text-muted); }
.p-daterange-fields label span { min-width: 20px; }
.p-daterange-fields .p-input { flex: 1; min-height: 28px; padding: 3px 8px; font-size: 13px; color: var(--p-color-text); }



.p-th-filterbar-rowsel--active {
    background: color-mix(in srgb, var(--p-color-primary, #2563eb) 16%, transparent);
    box-shadow: inset 2px 0 0 var(--p-color-primary);
}
.p-th-filterbar-rowsel--active .p-th-reset-btn { color: var(--p-color-text); }



.p-filter-input--bool {
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--p-color-text-muted);
    transition: color var(--p-motion-fast);
}
.p-filter-input--bool svg {


    width: 16px;
    height: 16px;
    display: block;
}





.p-filter-input--bool.p-filter-input--bool-none { color: var(--p-color-text-muted); }
.p-filter-input--bool:focus-visible {
    outline: 1px solid var(--p-color-primary);
    outline-offset: -1px;
}
.p-nav-filter-input::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-cancel-button {

    -webkit-appearance: none;
    appearance: none;
    width: 14px;
    height: 14px;
    cursor: pointer;
    background-color: var(--p-color-text-muted);
    -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'><line x1='6' y1='6' x2='18' y2='18'/><line x1='18' y1='6' x2='6' y2='18'/></svg>");
            mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'><line x1='6' y1='6' x2='18' y2='18'/><line x1='18' y1='6' x2='6' y2='18'/></svg>");
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    opacity: 0.7;
    transition: opacity var(--p-motion-fast);
}
.p-nav-filter-input::-webkit-search-cancel-button:hover,
input[type="search"]::-webkit-search-cancel-button:hover {
    opacity: 1;
}





.p-filter-input::-webkit-search-cancel-button { display: none; }
.p-th-filterbar-cell { position: relative; }

.p-filter-clear {
    position: absolute;
    inset-inline-end: 7px;
    top: 50%;
    transform: translateY(-50%);
    display: none;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    border: 0;
    border-radius: var(--p-radius-chip);
    cursor: pointer;
}
.p-filter-clear svg { width: 12px; height: 12px; }


.p-th-filterbar-cell--end > .p-filter-clear { inset-inline-end: auto; inset-inline-start: 7px; }
.p-filter-clear { background: color-mix(in srgb, var(--p-accent-solid) 12%, var(--p-table-surface)); color: var(--p-accent-tonal-fg); }
.p-filter-clear:hover { background: color-mix(in srgb, var(--p-accent-solid) 22%, var(--p-table-surface)); }
.p-th-filterbar-cell:hover:not(:focus-within):has(> .p-filter-input--set) > .p-filter-clear { display: inline-flex; }




.p-th-more {
    position: absolute;
    inset-inline-end: 6px;
    top: 50%;
    transform: translateY(-50%);
    display: none;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    border: 0;
    border-radius: var(--p-radius-chip);
    background: var(--p-table-header-surface);
    color: var(--p-color-text-muted);
    cursor: pointer;
    z-index: 1;
}
.p-th-more svg { width: 12px; height: 12px; }
.p-th-more:hover { background: var(--p-state-hover); color: var(--p-color-text); }
@media (pointer: coarse) {
    .p-th-more { display: inline-flex; }

    .p-table thead th:is(.p-th--end, .p-cell-align-end) { padding-inline-end: 28px; }
}


.p-cell-null { color: var(--p-color-text-muted); font-style: italic; }




.p-table tbody td.p-td-tip { position: relative; }
.p-table tbody td.p-td-tip::after {
    content: '';
    position: absolute;
    top: 0;
    inset-inline-end: 0;
    width: 0;
    height: 0;
    border-top: 6px solid color-mix(in srgb, var(--p-ink-315) 85%, transparent);
    border-inline-start: 6px solid transparent;
    pointer-events: none;
}





.p-table .p-cell-wrap {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: var(--p-wrap-lines, 1);
    line-clamp: var(--p-wrap-lines, 1);
    overflow: hidden;
    white-space: pre-line;
    overflow-wrap: anywhere;
    line-height: calc(var(--p-cell-fs, 13px) + 4px);
}






.p-cell-stack { display: flex; flex-direction: column; justify-content: center; min-width: 0; }
.p-cell-stack > * { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-cell-stack-line { font-size: calc(var(--p-cell-fs) - 1px); color: var(--p-color-text-muted); }
.p-table-host .p-table tbody tr[data-key] > td:not(.p-td-editing) .p-cell-stack-line { line-height: var(--p-stack-line, 18px); }
.p-th-stack { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; margin-top: 2px; }


.p-th-stack-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    max-width: calc(100% + 6px);
    height: calc(var(--p-stack-line, 18px) - 2px);
    margin-inline-start: -6px;
    padding: 0 4px 0 6px;
    border-radius: var(--p-radius-chip);
    color: var(--p-color-text-muted);
    font-size: calc(var(--p-cell-fs) - 1px);
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
    user-select: none;
}
.p-th-stack-chip:hover { background: color-mix(in srgb, var(--p-accent-solid) 12%, var(--p-table-header-surface)); color: var(--p-color-text); }
.p-th-stack-chip-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-th-stack-chip-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    padding: 0;
    border: 0;
    border-radius: var(--p-radius-chip);
    background: transparent;
    color: inherit;
    cursor: pointer;
    visibility: hidden;
}
.p-th-stack-chip:hover .p-th-stack-chip-close { visibility: visible; }
.p-th-stack-chip-close:hover { background: color-mix(in srgb, var(--p-accent-solid) 25%, var(--p-table-header-surface)); }
.p-th-stack-chip-close svg { width: 10px; height: 10px; }


.p-table thead th.p-stack-target,
.p-table thead th.p-th-filterbar-cell.p-filter-target {
    background: color-mix(in srgb, var(--p-color-primary) 12%, var(--p-table-header-surface)) !important;
    box-shadow: inset 0 0 0 1px var(--p-color-primary) !important;
}
.p-filterbar-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 12px;
    color: var(--p-color-text-muted);
    pointer-events: none;
}








.p-table.p-no-rowsel col.p-col-rowsel { width: 0; }
.p-table.p-no-rowsel .p-th-rowsel,
.p-table.p-no-rowsel .p-td-rowsel,
.p-table.p-no-rowsel .p-th-rowsel-spacer,
.p-table.p-no-rowsel .p-th-filterbar-rowsel {
    width: 0 !important;
    padding: 0 !important;


    border-inline: 0 !important;
    overflow: hidden;
}
.p-table.p-no-filterbar .p-tr-filterbar { display: none; }


.p-table.p-no-header thead tr:not(.p-tr-filterbar):not(.p-tr-newrow) { display: none; }







.p-table thead .p-tr-newrow > td,
.p-table tbody .p-tr-newrow > td,
.p-table tfoot .p-tr-newrow > td {
    padding: 0;
    height: 36px;





    background: var(--p-surface-raised);
    border-bottom: 1px solid color-mix(in srgb, var(--p-color-primary) 30%, var(--p-color-border));
    border-top: 1px solid color-mix(in srgb, var(--p-color-primary) 30%, var(--p-color-border));
}



.p-table thead[data-newrow] .p-tr-newrow > td { border-top: none; }


.p-table-viewport .p-table tfoot .p-tr-newrow > td { bottom: 32px; z-index: 4; }
.p-table-host     .p-table-viewport .p-table tfoot .p-tr-newrow > td { bottom: 28px; }





.p-table-viewport .p-table thead[data-newrow="top"] .p-tr-newrow > td {
    position: sticky;
    top: var(--p-header-h, 33px);
    z-index: 2;
}
.p-table-viewport .p-table thead[data-newrow="top"] .p-tr-filterbar th {
    top: calc(var(--p-header-h, 33px) + 36px);
}
.p-table-host     .p-table-viewport .p-table thead[data-newrow="top"] .p-tr-filterbar th { top: calc(var(--p-header-h, 33px) + 28px); }
.p-table-host--loft .p-table-viewport .p-table thead[data-newrow="top"] .p-tr-filterbar th { top: calc(var(--p-header-h, 33px) + var(--p-loft-row)); }




.p-table-viewport .p-table thead[data-newrow="below-filter"] .p-tr-newrow > td {
    position: sticky;
    top: calc(var(--p-header-h, 33px) + 36px);
    z-index: 2;
}
.p-table-host     .p-table-viewport .p-table thead[data-newrow="below-filter"] .p-tr-newrow > td { top: calc(var(--p-header-h, 33px) + 28px); }
.p-table-host--loft .p-table-viewport .p-table thead[data-newrow="below-filter"] .p-tr-newrow > td { top: calc(var(--p-header-h, 33px) + 36px); }



.p-table-viewport .p-table tbody .p-tr-newrow > td {
    position: sticky;
    bottom: 32px;
    z-index: 2;
}
.p-table-host     .p-table-viewport .p-table tbody .p-tr-newrow > td { bottom: 28px; }
.p-table-host     .p-table thead .p-tr-newrow > td,
.p-table-host     .p-table tbody .p-tr-newrow > td,
.p-table-host     .p-table tfoot .p-tr-newrow > td { height: 28px; padding: 0; }

.p-table-host--loft .p-table thead .p-tr-newrow > td,
.p-table-host--loft .p-table tbody .p-tr-newrow > td,
.p-table-host--loft .p-table tfoot .p-tr-newrow > td { height: var(--p-loft-row); }
.p-table-host--loft .p-table-viewport .p-table :is(tbody, tfoot) .p-tr-newrow > td { bottom: var(--p-loft-row); }



.p-tr-newrow .p-td-rowsel {
    text-align: center;
    background: color-mix(in srgb, var(--p-color-primary) 12%, var(--p-surface-raised));
    border-inline-end: 1px solid var(--p-table-line-v);
}

.p-newrow-submit-btn {
    width: 20px;
    height: 20px;
    padding: 0;
    border: none;
    background: none;
    color: var(--p-color-text-muted);
    border-radius: var(--p-radius-chip);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: color var(--p-motion-fast), background var(--p-motion-fast);
}
.p-newrow-submit-btn:hover {
    color: var(--p-color-text);
    background: color-mix(in srgb, var(--p-color-primary) 15%, transparent);
}

.p-tr-newrow .p-td-rowsel:hover { background: inherit !important; }
.p-newrow-submit-btn:active { transform: scale(0.92); }
.p-newrow-submit-btn svg { width: 14px; height: 14px; }





.p-newrow-input {
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 14px;
    font-size: inherit;
    font-family: inherit;
    color: var(--p-color-text);
    background: var(--p-surface-raised);
    border: none;
    outline: none;
    text-align: inherit;
    transition: box-shadow var(--p-motion-fast), background var(--p-motion-fast);
}


.p-newrow-input::placeholder { color: var(--p-color-text-muted); opacity: 0.7; }



.p-newrow-input--empty {
    color: var(--p-color-text-muted);
    opacity: 0.7;
}







.p-td-newrow--required { position: relative; }
.p-td-newrow--required.p-td-newrow--missing:not(.p-td-newrow--labelled, :has(> .p-combo))::after {
    content: '*';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    inset-inline-end: 6px;
    font-size: 12px;
    line-height: 1;
    color: var(--p-color-danger);
    pointer-events: none;
}
.p-newrow-ph {
    position: absolute;
    inset-inline: 8px;
    top: 50%;
    transform: translateY(-50%);
    display: none;
    text-align: inherit;
    font-size: var(--p-cell-fs);
    line-height: 1;

    color: color-mix(in srgb, var(--p-color-text-muted) 70%, transparent);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    pointer-events: none;
}
.p-td-newrow--missing > .p-newrow-ph { display: block; }



.p-td-newrow--userdefault { position: relative; }
.p-td-newrow--userdefault::before {
    content: '';
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    width: 0;
    height: 0;
    border-top: 6px solid var(--p-color-primary);
    border-inline-end: 6px solid transparent;
    pointer-events: none;
    z-index: 1;
}
.p-newrow-ph::after,
.p-td-newrow--required.p-td-newrow--missing > .p-combo .p-combo-label--placeholder::after { content: '*'; margin-inline-start: 3px; color: var(--p-color-danger); }



.p-td-newrow--required > input:is([type="date"], [type="datetime-local"], [type="time"], [type="month"], [type="week"]) {
    padding-inline-end: 18px;
}





.p-th-info,
.p-th-drill {
    position: absolute;
    inset-inline-end: 0;
    width: 0;
    height: 0;
    border-inline-start: 8px solid transparent;
    pointer-events: none;
}





.p-th-info {
    top: 0;
    border-top: 8px solid color-mix(in srgb, var(--p-ink-315) 85%, transparent);
}
.p-th-drill {
    bottom: 0;
    border-bottom: 8px solid color-mix(in srgb, var(--p-ink-255) 85%, transparent);
}




.p-table thead th.p-th-editable--line {





    --p-edit-line: inset 0 -2px 0 0 color-mix(in srgb, var(--p-color-primary) 80%, transparent);
}



.p-table thead th.p-th-editable--line.p-th-editable--locked {
    --p-edit-line: inset 0 -2px 0 0 color-mix(in srgb, var(--p-color-primary) 30%, transparent);
}





.p-table tbody td.p-td-noedit {
    cursor: default;
}


.p-table tbody td.p-td-editing { padding: 0 !important; position: relative; }



.p-cell-editor {
    position: absolute;
    inset: 0;
    box-sizing: border-box;
    padding: 0 14px;
    font: inherit;
    color: var(--p-color-text);
    background: var(--p-surface-raised);
    border: none;
    outline: none;
    text-align: inherit;
    box-shadow: inset 0 0 0 2px var(--p-color-primary);
}




.p-cell-editor.p-combo,
.p-newrow-input.p-combo { padding: 0; }
.p-cell-editor.p-combo > .p-combo-trigger,
.p-newrow-input.p-combo > .p-combo-trigger {
    height: 100%;
    min-height: 0;
    padding-inline: 14px;
    border: none;
    border-radius: 0;
    background: transparent;
    font-size: inherit;
}
.p-cell-editor.p-combo > .p-combo-trigger:hover,
.p-cell-editor.p-combo > .p-combo-trigger:focus,
.p-newrow-input.p-combo > .p-combo-trigger:hover,
.p-newrow-input.p-combo > .p-combo-trigger:focus { border: none; box-shadow: none; }




.p-newrow-input.p-combo:focus-within { box-shadow: inset 0 0 0 1px var(--p-color-primary); }



.p-cell-editor[type="checkbox"] {
    position: absolute;
    top: 0; bottom: 0; left: 0; right: 0;
    width: 16px;
    height: 16px;
    margin: auto;
    padding: 0;
    background: transparent !important;
    box-shadow: none !important;
}


.p-table tbody td.p-cell-edit-error .p-cell-editor,
.p-form-value.p-cell-edit-error .p-cell-editor {
    box-shadow: inset 0 0 0 2px var(--p-color-danger);
    background: color-mix(in srgb, var(--p-color-danger) 8%, var(--p-surface-raised));
}


.p-field-error-tip {
    position: fixed;
    z-index: var(--p-z-tooltip);
    max-width: 320px;
    padding: 4px 8px;
    border-radius: var(--p-radius);
    background: var(--p-fill-danger);
    color: var(--p-fill-fg-danger);
    font-size: 12px;
    line-height: 17px;
    box-shadow: var(--p-shadow-float);
    pointer-events: none;
    white-space: normal;
}
.p-field-error-tip[hidden] { display: none; }


.p-table td.p-td-multiline { overflow: visible !important; }
.p-table tbody td.p-td-editing.p-td-multiline { z-index: 2 !important; }
.p-table .p-tr-newrow > td.p-td-multiline { z-index: 5 !important; }
textarea.p-cell-editor.p-input-multiline { inset-block-end: auto; min-height: 100%; }

.p-tr-newrow > .p-td-multiline > textarea.p-input-multiline:focus { position: absolute; inset-inline: 0; inset-block-start: 0; min-height: 100%; }
:is(tbody, tfoot) > .p-tr-newrow > .p-td-multiline > textarea.p-input-multiline:focus { inset-block-start: auto; inset-block-end: 0; }

.p-form-value--multiline { white-space: pre-wrap; }
.p-form-value--multiline.p-td-editing { height: auto !important; }
.p-form-value textarea.p-input-multiline { padding: 6px 12px; }


.p-table tbody td.p-cell-flash-ok,
.p-table tbody tr.p-tr-flash-ok > td:not(.p-td-filler) {
    background: color-mix(in srgb, var(--p-color-success) 25%, var(--p-surface-raised)) !important;
    transition: background .6s ease;
}
.p-table tbody td.p-cell-paste-error {
    background: color-mix(in srgb, var(--p-color-danger) 12%, var(--p-surface-raised)) !important;
    box-shadow: inset 0 0 0 2px var(--p-color-danger);
}


.p-table tbody td.p-cell-verify-diff,
.p-form-value.p-cell-verify-diff {
    background: color-mix(in srgb, var(--p-ink-warn) 10%, var(--p-surface-raised)) !important;
    box-shadow: inset 0 0 0 2px var(--p-ink-warn);
}
.p-table tbody td.p-cell-verify-as,
.p-form-value.p-cell-verify-as { box-shadow: inset 0 0 0 1px var(--p-ink-info); }
.p-newrow-input:focus { box-shadow: inset 0 0 0 1px var(--p-color-primary); background: var(--p-surface-raised); }


.p-newrow-input.p-newrow-error {
    box-shadow: inset 0 0 0 1px var(--p-color-danger);
    background: color-mix(in srgb, var(--p-color-danger) 8%, var(--p-surface-raised));
}


.p-table-host .p-newrow-input,
.p-table-host .p-cell-editor { padding: 0 8px; }


:is(.p-newrow-input, .p-cell-editor):not(input, textarea, select, .p-combo) { align-content: center; }


.p-table-host .p-newrow-input.p-combo,
.p-table-host .p-cell-editor.p-combo { padding: 0; }
.p-table-host .p-newrow-input.p-combo > .p-combo-trigger,
.p-table-host .p-cell-editor.p-combo > .p-combo-trigger { padding-inline: 8px; }




.p-table thead .p-tr-newrow > td,
.p-table tfoot .p-tr-newrow > td { font-size: inherit; }



.p-tr-newrow input[type="checkbox"].p-newrow-input {
    width: 16px;
    height: 16px;
    margin: 0 auto;
    cursor: pointer;
}
.p-table thead .p-tr-newrow > td:has(> input[type="checkbox"]),
.p-table tfoot .p-tr-newrow > td:has(> input[type="checkbox"]) {
    background: var(--p-surface-raised);
}
.p-table.p-no-footer tfoot              { display: none; }



.p-ctxmenu {
    position: fixed;
    z-index: var(--p-z-popover);
    min-width: 240px;
    background: var(--p-surface-raised);
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    box-shadow: var(--p-shadow-float);
    padding: 4px 0;
    font-size: 13px;
    user-select: none;
    display: none;

    box-sizing: border-box;
    max-height: calc(100vh - 8px);
    overflow-y: auto;
    overscroll-behavior: contain;
}
.p-ctxmenu--open { display: block; }

.p-ctxmenu--open.p-ctxmenu--filter { display: flex; flex-direction: column; overflow: hidden; }
.p-ctxmenu-filter {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    height: 28px;
    margin: 2px 6px 4px;
    padding: 0 8px;
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    color: var(--p-color-text-muted);
    cursor: text;
}
.p-ctxmenu-filter:focus-within { border-color: var(--p-color-primary); }
.p-ctxmenu-filter svg { width: 14px; height: 14px; flex: 0 0 auto; }
.p-ctxmenu-filter-input {
    flex: 1;
    min-width: 0;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--p-color-text);
    font: inherit;
}
.p-ctxmenu-list { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.p-ctxmenu-off { display: none !important; }
.p-ctxmenu-empty { padding: 6px 12px; color: var(--p-color-text-muted); }
.p-ctxmenu-item--muted .p-ctxmenu-label { color: var(--p-color-text-muted); }
.p-ctxmenu-item--strong .p-ctxmenu-label { font-weight: 600; }

.p-ctxmenu-section {
    display: flex;
    align-items: baseline;
    padding: 7px 12px 3px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--p-color-text-muted);
}
.p-ctxmenu-item {
    display: flex;
    align-items: center;
    padding: 6px 12px 6px 6px;
    cursor: pointer;
    gap: 8px;
    line-height: 1.4;
}
.p-ctxmenu-check {
    display: inline-block;
    width: 14px;
    text-align: center;
    color: var(--p-color-primary);
    font-size: 12px;
    flex-shrink: 0;
}


.p-ctxmenu-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    color: var(--p-color-text-muted);
    flex-shrink: 0;
}
.p-ctxmenu-icon svg { width: 14px; height: 14px; }


html:not([data-icon-style="plain"]) .p-ctxmenu[data-picon-style="color"] .p-ctxmenu-icon { width: 16px; height: 16px; }
.p-ctxmenu-icon svg.p-icon-parts { width: 16px; height: 16px; }
.p-ctxmenu-item--checked .p-ctxmenu-icon { color: var(--p-color-primary); }
.p-ctxmenu-label { flex: 1; }
.p-ctxmenu-hint  { margin-inline-start: auto; }





.p-ctxmenu-item:hover {
    background: var(--p-state-hover);
}


.p-ctxmenu-item:focus { outline: none; }
.p-ctxmenu-item:focus-visible { background: var(--p-state-hover); }



.p-ctxmenu-item--disabled { cursor: default; }
.p-ctxmenu-item--disabled:hover { background: transparent; }
.p-ctxmenu-item--disabled :is(.p-ctxmenu-icon, .p-ctxmenu-label) { opacity: var(--p-disabled-opacity); }

.p-ctxmenu-label { color: var(--p-color-text); }
.p-ctxmenu-hint {
    color: var(--p-color-text-muted);
    font-family: var(--p-font-mono);
    font-size: 12px;
    white-space: nowrap;
}
.p-ctxmenu-arrow {
    color: var(--p-color-text-muted);
    font-size: 13px;
    line-height: 1;
}
.p-ctxmenu-sep {
    height: 1px;
    background: var(--p-color-border);
    margin: 4px 0;
}


.p-ctxmenu-row { display: flex; align-items: stretch; }
.p-ctxmenu-row > .p-ctxmenu-item { flex: 1 1 auto; min-width: 0; }
.p-ctxmenu-aside {
    display: inline-flex; align-items: center; justify-content: center; flex: 0 0 30px; margin-inline-end: 4px;
    border-radius: var(--p-radius-chip); color: var(--p-color-text-muted); cursor: pointer;
}
.p-ctxmenu-aside svg { width: 14px; height: 14px; }
.p-ctxmenu-aside:focus { outline: none; }
.p-ctxmenu-aside:is(:hover, :focus-visible) { background: var(--p-state-hover); color: var(--p-color-text); }
.p-ctxmenu-aside.p-ctxmenu-aside--checked { color: var(--p-color-primary); background: color-mix(in srgb, var(--p-color-primary) 14%, transparent); }
.p-ctxmenu-aside.p-ctxmenu-aside--empty { cursor: default; background: none; }
.p-ctxmenu-section-aside { flex: 0 0 30px; margin-inline: auto -8px; text-align: center; letter-spacing: 0; text-transform: none; font-weight: 500; }

.p-ctxmenu-end { display: inline-flex; flex-shrink: 0; margin-inline-start: auto; color: var(--p-color-primary); }
.p-ctxmenu-end svg { width: 14px; height: 14px; }

.p-ctxmenu-item--disabled .p-ctxmenu-hint,
.p-ctxmenu-hint--plain { font-family: inherit; }


.p-th-flash { animation: p-th-flash 1.6s ease-out; }
@keyframes p-th-flash {
    0%, 45% {
        background-color: color-mix(in srgb, var(--p-color-primary) 22%, var(--p-surface-raised));
        box-shadow: inset 0 0 0 2px var(--p-color-primary);
    }
}


.p-th-sortable {
    cursor: pointer;
    user-select: none;
}



.p-table-group-splitter {
    flex: 0 0 4px;
    cursor: col-resize;
    background: var(--p-color-border);
    transition: background var(--p-motion-fast);
    position: relative;
}
.p-table-group-splitter::before {

    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: -4px;
    right: -4px;
}
.p-table-group-splitter:hover,
.p-table-group-splitter:focus-visible,
.p-table-group-splitter--active {
    background: var(--p-color-primary);
}




.p-table-group-wrap.p-state-min .p-table-group-side,
.p-table-group-wrap.p-state-min .p-table-group-splitter { display: none !important; }
.p-table-group-wrap.p-state-max .p-table-group-side {
    flex: 1 1 100% !important;
    width: auto !important;
    min-width: 0;
}
.p-table-group-wrap.p-state-max .p-table-group-splitter,
.p-table-group-wrap.p-state-max .p-table-original-side { display: none !important; }





.p-table-list-body.p-table-list-body--form { display: flex; flex-direction: column; overflow: hidden; }
.p-table-form-side { flex: 1 1 auto; min-height: 0; overflow: auto; display: flex; flex-direction: column; background: var(--p-surface-raised); }

.p-table-form-side:focus { outline: none; }



.p-form-header {
    display: flex; align-items: center; gap: 8px;
    box-sizing: border-box;
    height: 40px;
    padding: 0 12px; border-bottom: 1px solid var(--p-color-border);


    background: var(--p-table-header-surface);
    flex: 0 0 auto;
}
.p-form-title {
    font-weight: 600; font-size: 13px; flex: 1; min-width: 0;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.p-form-body { flex: 1 1 auto; overflow: auto; padding: 0; }


.p-form-row {
    display: grid; grid-template-columns: 40% 1fr; align-items: stretch;
    border-bottom: 1px solid color-mix(in srgb, var(--p-color-border) 60%, transparent);
}



.p-form-row > .p-form-label {
    color: var(--p-color-text-muted); font-size: 12px; overflow-wrap: anywhere;
    padding: 6px 10px;
    border-inline-end: 1px solid color-mix(in srgb, var(--p-color-border) 60%, transparent);
}

.p-form-value { min-width: 0; overflow-wrap: anywhere; position: relative; padding: 6px 12px; }
.p-form-value--drilldown { color: var(--p-color-link); cursor: pointer; }


.p-form-value:not(.p-form-value--drilldown):is([class*="p-text-"], [class*="p-cell-text-"]) { color: var(--p-text-pick); }
.p-form-value:not(.p-form-value--drilldown).p-cell-muted { color: var(--p-color-text-muted); }
.p-form-value:is([class*="p-fill-"], .p-cell-success, .p-cell-warn, .p-cell-danger, .p-cell-info) { background: var(--p-fill-pick); color: var(--p-fill-fg-pick, var(--p-fill-fg)); }
.p-form-value:is([class*="p-soft-"], [class*="p-cell-soft-"]) { background: var(--p-soft-pick); }


.p-form-row { user-select: none; -webkit-user-select: none; }
.p-form-row--selected:not(.p-form-row--sole) > .p-form-value { background: color-mix(in srgb, var(--p-color-primary) 12%, var(--p-surface-raised)); }
.p-form-row--active:not(.p-form-row--sole) > .p-form-value { outline: 1px dotted var(--p-color-primary); outline-offset: -3px; }
.p-form-row--sole > .p-form-value { box-shadow: inset 0 0 0 1px var(--p-color-primary); }













.p-form-value--editable { cursor: text; }
.p-form-row:has(> .p-form-value--editable) > .p-form-label {
    position: relative;
}
.p-form-row:has(> .p-form-value--editable) > .p-form-label::before {
    content: ''; position: absolute; inset-block: 0; inset-inline-end: 0; width: 2px;
    background: color-mix(in srgb, var(--p-color-primary) 80%, transparent);
}





.p-form-value.p-td-editing { padding: 0; height: var(--p-form-edit-h, auto) !important; min-height: 0; }
.p-form-value .p-cell-editor:not([type="checkbox"]) {
    position: static; inset: auto; display: block; width: 100%; box-sizing: border-box;
}
.p-form-value.p-td-editing > .p-cell-editor:not([type="checkbox"]) { height: 100%; min-height: 0; }



.p-form-value > svg.p-cell-bool { display: block; }






.p-form-value .p-cell-editor[type="checkbox"] { position: relative; inset: auto; margin: 0; }


.p-form-value:has(> .p-newrow-input) { padding: 0; }
.p-form-value > .p-newrow-input:not(.p-combo) { min-height: 30px; padding: 6px 12px; }

.p-form-value > .p-newrow-input.p-combo > .p-combo-trigger { padding: 6px 12px; }
.p-form-value > .p-newrow-input[type="checkbox"] { width: 16px; height: 16px; min-height: 0; padding: 0; margin: 6px 12px; }
.p-form-submit-btn {
    display: flex; align-items: center; justify-content: center; gap: 6px;
    width: 100%; padding: 8px; flex: 0 0 auto;
    border: none; border-top: 1px solid var(--p-color-border);
    background: color-mix(in srgb, var(--p-color-primary) 10%, var(--p-surface-raised));
    color: var(--p-color-text); cursor: pointer; font-weight: 600;
}
.p-form-submit-btn:hover { background: color-mix(in srgb, var(--p-color-primary) 18%, var(--p-surface-raised)); }
.p-form-submit-btn svg { width: 16px; height: 16px; }




.p-table thead th { position: relative; }




.p-th-sort-icon {
    position: absolute;
    inset-inline-start: 8px;
    margin-inline-start: -5px;
    display: flex;
    gap: 2px;
    pointer-events: none;
}
.p-th-sort-icon--asc  { top: 0; }
.p-th-sort-icon--desc { bottom: 0; }
.p-th-sort-tri {
    width: 0;
    height: 0;
    border-style: solid;
}


.p-th-sort-tri--asc {
    border-width: 7px 7px 0 7px;
    border-color: var(--p-color-danger) transparent transparent transparent;
}
.p-th-sort-tri--desc {
    border-width: 0 7px 7px 7px;
    border-color: transparent transparent var(--p-color-danger) transparent;
}


.p-table-host .p-th-sort-icon { gap: 1px; inset-inline-start: 8px; margin-inline-start: -4px; }
.p-table-host .p-th-sort-tri--asc {
    border-width: 5px 5px 0 5px;
}
.p-table-host .p-th-sort-tri--desc {
    border-width: 0 5px 5px 5px;
}



.p-table thead th.p-th--end { text-align: end; }
.p-table thead th.p-th--center { text-align: center; }
.p-table thead th:is(.p-th--end, .p-cell-align-end) .p-th-sort-icon {
    inset-inline-start: auto;
    inset-inline-end: 8px;
    margin-inline-start: 0;
    margin-inline-end: -4px;
}
.p-table-host--loft .p-table thead th:is(.p-th--end, .p-cell-align-end) .p-th-sort-icon { inset-inline-end: 14px; }








.p-td-group-icon {
    position: absolute;
    inset-inline-start: 8px;
    margin-inline-start: -3px;
    display: flex;
    gap: 3px;
    pointer-events: none;
}
.p-td-group-icon--asc, .p-td-group-icon--none { top: 0; }
.p-td-group-icon--desc { bottom: 0; align-items: flex-end; }
.p-td-group-sq {
    width: 8px;
    height: 5px;
    background: var(--p-color-success);
}

.p-td-group-icon:is(.p-td-group-icon--asc, .p-td-group-icon--desc) { gap: 1px; margin-inline-start: -4px; }
.p-td-group-tri { width: 0; height: 0; border-style: solid; }
.p-td-group-tri--asc  { border-width: 5px 5px 0 5px; border-color: var(--p-color-success) transparent transparent transparent; }
.p-td-group-tri--desc { border-width: 0 5px 5px 5px; border-color: transparent transparent var(--p-color-success) transparent; }

.p-corner-num {
    display: none;
    font-size: 9px;
    line-height: 7px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}
.p-th-sort-icon .p-corner-num { color: var(--p-color-danger); }
.p-td-group-icon .p-corner-num { color: var(--p-color-success); }
.p-th-sort-icon--desc { align-items: flex-end; }
.p-corner-mark--compact { gap: 2px; }
.p-corner-mark--compact > :not(:first-child):not(.p-corner-num) { display: none; }
.p-corner-mark--compact > .p-corner-num { display: block; }



.p-table tfoot td.p-td-grouped { padding-inline-start: 22px; }
.p-td-group-role {
    position: absolute;
    inset-inline-start: 5px;
    top: 50%;
    margin-top: -6px;
    display: flex;
}
.p-td-group-role svg { width: 12px; height: 12px; display: block; }
.p-td-group-role.p-chip-prefix-row    { color: var(--p-color-text-muted); }
.p-td-group-role.p-chip-prefix-col    { color: var(--p-color-warn); }
.p-td-group-role.p-chip-prefix-detail { color: var(--p-color-info); }



.p-td-axis-value {
    position: absolute;
    inset-inline: 22px 6px;
    top: 50%;
    transform: translateY(-50%);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--p-color-success);
    font-weight: 400;
    pointer-events: none;
}







.p-table tfoot td[data-agg]::before {
    display: inline-block;
    vertical-align: -1px;
    margin-inline-end: 4px;
    min-width: 12px;
    height: 12px;
    line-height: 12px;
    font-size: 12px;
    text-align: center;
    color: var(--p-color-text-muted);
    font-weight: 400;
}
.p-table tfoot td.p-td-agg-default:not(.p-td-role-value)::before { content: none; }
.p-table tfoot td.p-td-role-value[data-agg]::before { color: var(--p-color-success); font-weight: 600; }

.p-table tfoot td:is([data-agg="sum"], [data-agg="avg"], [data-agg="count"], [data-agg="min"], [data-agg="max"])::before {
    background: currentColor;
    -webkit-mask: var(--p-agg-kresba) center / 12px 12px no-repeat;
            mask: var(--p-agg-kresba) center / 12px 12px no-repeat;
}
:is(.p-table tfoot td, .p-group-agg-sym)[data-agg="sum"] {
    --p-agg-kresba: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 4H4l8 8-8 8h16'/></svg>");
}
:is(.p-table tfoot td, .p-group-agg-sym)[data-agg="avg"] {
    --p-agg-kresba: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><path d='M22 2 2 22'/></svg>");
}
:is(.p-table tfoot td, .p-group-agg-sym)[data-agg="count"] {
    --p-agg-kresba: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><line x1='4' x2='20' y1='9' y2='9'/><line x1='4' x2='20' y1='15' y2='15'/><line x1='10' x2='8' y1='3' y2='21'/><line x1='16' x2='14' y1='3' y2='21'/></svg>");
}
:is(.p-table tfoot td, .p-group-agg-sym)[data-agg="min"] {
    --p-agg-kresba: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 17V3'/><path d='m6 11 6 6 6-6'/><path d='M19 21H5'/></svg>");
}
:is(.p-table tfoot td, .p-group-agg-sym)[data-agg="max"] {
    --p-agg-kresba: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 3h14'/><path d='m18 13-6-6-6 6'/><path d='M12 7v14'/></svg>");
}
.p-table tfoot td[data-agg="sum"]::before   { content: ""; }
.p-table tfoot td[data-agg="avg"]::before   { content: ""; }
.p-table tfoot td[data-agg="count"]::before { content: ""; }
.p-table tfoot td[data-agg="min"]::before   { content: ""; }
.p-table tfoot td[data-agg="max"]::before   { content: ""; }
.p-table tfoot td[data-agg="varp"]::before  { content: "σ²"; }
.p-table tfoot td[data-agg="vars"]::before  { content: "s²"; }
.p-table tfoot td[data-agg="stdp"]::before  { content: "σ"; }
.p-table tfoot td[data-agg="stds"]::before  { content: "s"; }

.p-table tfoot td.p-td-agg-bare[data-agg]::before { content: none; }



.p-table tfoot td.p-td-partial:not(.p-td-warn-bare) { --p-warn-at: 5px; padding-inline-start: 22px; }
.p-table tfoot td.p-td-partial.p-td-grouped:not(.p-td-warn-bare) {
    --p-warn-at: 22px;
    padding-inline-start: 39px;
}
.p-table tfoot td.p-td-partial:not(.p-td-warn-bare)::after {
    content: "";
    position: absolute;
    inset-inline-start: var(--p-warn-at);
    top: 50%;
    margin-top: -6px;
    width: 12px;
    height: 12px;
    background: var(--p-color-warn);
    -webkit-mask: var(--p-warn-kresba) center / 12px 12px no-repeat;
            mask: var(--p-warn-kresba) center / 12px 12px no-repeat;
}

.p-table, .p-table-form-side {
    --p-warn-kresba: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/><line x1='12' y1='9' x2='12' y2='13'/><line x1='12' y1='17' x2='12.01' y2='17'/></svg>");
}

.p-agg-sym { font-size: 11px; line-height: 12px; min-width: 12px; font-weight: 600; white-space: nowrap; }

.p-td-groupable { cursor: pointer; }


.p-th-rowsel {
    width: 16px;
    min-width: 16px;
    padding: 0;
    text-align: center;
    cursor: pointer;
    position: relative;
    border-inline-end: 1px solid var(--p-table-line-v);
}
.p-td-rowsel {
    width: 16px;
    min-width: 16px;
    padding: 0;
    text-align: center;
    cursor: pointer;
    transition: background var(--p-motion-fast);
    border-inline-end: 1px solid var(--p-table-line-v);
    background: var(--p-table-header-surface) !important;
    position: relative;
    user-select: none;
    -webkit-user-select: none;
}
.p-td-rowsel:hover {
    background: var(--p-color-border) !important;
}



tfoot .p-td-rowsel:hover {
    background: var(--p-table-header-surface) !important;
}
.p-th-reset-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: none;
    border: none;
    border-radius: var(--p-radius-chip);
    cursor: pointer;
    color: var(--p-color-text-muted);
    font-size: 17px;
    line-height: 1;
    padding: 0;
    transition: color var(--p-motion-fast), background var(--p-motion-fast);
    z-index: 1;
}
.p-th-reset-btn:hover {
    color: var(--p-color-text);
    background: color-mix(in srgb, var(--p-color-text-muted) 18%, transparent);
}


.p-th-reset-btn--stale,
.p-th-filterbar-rowsel--active .p-th-reset-btn--stale { color: var(--p-ink-warn); }
.p-th-reset-btn--stale:hover { color: var(--p-ink-warn); }
.p-th-reset-btn--play {
    color: var(--p-color-text-muted) !important;
}
.p-th-reset-btn--play:hover {
    color: var(--p-text-accent) !important;
}
.p-th-reset-btn--play svg { width: 16px; height: 16px; }










.p-table tbody td.p-td-selected:not(.p-td-sole) {
    background: color-mix(in srgb, var(--p-color-primary) 12%, var(--p-surface-raised)) !important;
}
.p-table tbody td.p-td-active:not(.p-td-sole) {
    outline: 1px dotted var(--p-color-primary);
    outline-offset: -3px;
}

.p-table tbody td.p-td-hold {
    background: color-mix(in srgb, var(--p-color-primary) 20%, var(--p-surface-raised)) !important;
}
.p-table tbody td.p-td-selected {
    --p-sel-t: 0 0 0 0 transparent;
    --p-sel-s: 0 0 0 0 transparent;
    --p-sel-e: 0 0 0 0 transparent;
    --p-sel-b: 0 0 0 0 transparent;
    --p-cell-sel: var(--p-sel-t), var(--p-sel-s), var(--p-sel-e), var(--p-sel-b);
}
.p-table tbody td.p-td-sel-top    { --p-sel-t: 0 -1px 0 0 var(--p-color-primary); }
.p-table tbody td.p-td-sel-start  { --p-sel-s: -1px 0 0 0 var(--p-color-primary); }
[dir="rtl"] .p-table tbody td.p-td-sel-start { --p-sel-s: 1px 0 0 0 var(--p-color-primary); }






.p-table tbody td.p-td-sel-start:not(td:not(.p-td-rowsel, .p-col-hidden) ~ td) { --p-sel-s: inset 1px 0 0 0 var(--p-color-primary); }
[dir="rtl"] .p-table tbody td.p-td-sel-start:not(td:not(.p-td-rowsel, .p-col-hidden) ~ td) { --p-sel-s: inset -1px 0 0 0 var(--p-color-primary); }


.p-table tbody tr:first-child td.p-td-sel-top,
.p-table tbody tr.p-tr-spacer:first-child + tr td.p-td-sel-top,
.p-table tbody tr.p-tr-group + tr td.p-td-sel-top { --p-sel-t: inset 0 1px 0 0 var(--p-color-primary); }
.p-table tbody td.p-td-sel-bottom { border-bottom-color: var(--p-color-primary); }
.p-table tbody td.p-td-sel-end    { border-inline-end-color: var(--p-color-primary); }




.p-table:not(.p-no-footer) tbody tr:last-child td.p-td-sel-bottom,
.p-table-wrap .p-table tbody tr:last-child td.p-td-sel-bottom { --p-sel-b: inset 0 -1px 0 0 var(--p-color-primary); }




.p-table tbody tr.p-tr-selected td:where(:not(.p-cell-success, .p-cell-warn, .p-cell-danger, .p-cell-info, [class*="p-cell-soft-"], [class*="p-fill-"], [class*="p-soft-"])) {
    background: color-mix(in srgb, var(--p-color-primary) 7%, var(--p-surface-raised));
}

.p-table tbody tr.p-tr-selected td.p-td-rowsel {
    background: color-mix(in srgb, var(--p-color-primary) 32%, var(--p-surface-raised)) !important;
}
.p-table tbody tr.p-tr-selected:hover td:where(:not(.p-cell-success, .p-cell-warn, .p-cell-danger, .p-cell-info, [class*="p-cell-soft-"], [class*="p-fill-"], [class*="p-soft-"])) {
    background: color-mix(in srgb, var(--p-color-primary) 11%, var(--p-surface-raised));
}
.p-table tbody tr.p-tr-selected:hover td.p-td-rowsel {
    background: color-mix(in srgb, var(--p-color-primary) 40%, var(--p-surface-raised)) !important;
}





.p-table tbody tr.p-tr-current td.p-td-rowsel::before {
    content: '';
    position: absolute;
    inset-block: 0;
    inset-inline-start: 0;
    width: 2px;
    background: var(--p-color-primary);
    pointer-events: none;
}



.p-table.p-table--rownum col.p-col-rowsel { width: calc(var(--p-rownum-ch, 2) * 1ch + 14px); }
.p-table.p-table--rownum tbody td.p-td-rowsel {
    padding-inline: 4px 6px;
    text-align: end;
    font-size: 11px;
    font-variant-numeric: tabular-nums;
    color: var(--p-color-text-muted);
}
.p-table.p-table--rownum tbody tr.p-tr-selected td.p-td-rowsel { color: var(--p-color-text); font-weight: 600; }










.p-table-loading {
    position: fixed;
    top: 0; inset-inline-end: 0; bottom: 0;
    inset-inline-start: var(--p-sidebar-width, 0px);
    z-index: var(--p-z-overlay);
    background: transparent;
    pointer-events: none;
}


.p-table-loading-text {
    position: absolute;
    top: calc(50% + 36px);
    left: 0;
    right: 0;
    text-align: center;
    color: var(--p-color-text-muted);
    font-size: 13px;
}
.p-table-cancel {
    position: absolute;
    top: calc(50% + 80px);
    left: 50%;
    transform: translateX(-50%);
    pointer-events: auto;
}


.p-table-error {
    position: absolute;
    top: calc(50% - 6px);
    left: 0; right: 0;
    text-align: center;
    color: var(--p-color-danger, #dc2626);
    font-size: 13px;
}
.p-table-retry {
    position: absolute;
    top: calc(50% + 28px);
    left: 50%;
    transform: translateX(-50%);
    pointer-events: auto;
}

.p-table-loading-text--stopped::before { display: none; }


body.p-table-loading-active,
body.p-table-loading-active * { cursor: progress !important; }







body.p-table-loading-active::after {
    content: '';
    position: fixed;
    top: 0; inset-inline-end: 0; bottom: 0;
    inset-inline-start: var(--p-sidebar-width, 0px);
    background: color-mix(in srgb, var(--p-surface-raised) 55%, transparent);
    z-index: calc(var(--p-z-overlay) - 1);
    pointer-events: auto;
}

























body.p-table-loading-active::before,
.p-desktop-card-loading::after,
button.p-translated-badge.is-busy::after,
.p-tgaps-spin,
.studio-state .spinner,
.p-pdf-spinner,
.p-docs-xlate.is-busy::before,
.p-lock-mark,
.pp-status .pp-spinner {
    --cell: var(--p-mark-cell, 6px);
    --pitch: calc(var(--cell) * 1.38);
    --dim: color-mix(in srgb, var(--p-color-primary) 25%, transparent);
    width: var(--cell);
    height: var(--cell);
    border: 0;
    border-radius: calc(var(--cell) / 4);


    transform: translate(var(--p-mark-shift, calc(var(--pitch) / -2)),
                         var(--p-mark-shift, calc(var(--pitch) / -2)));
    animation: p-cells 1.2s linear infinite;
}

@keyframes p-cells {
    0%, 100% {
        background: var(--p-color-primary);
        box-shadow: var(--pitch) 0 0 var(--dim), var(--pitch) var(--pitch) 0 var(--dim), 0 var(--pitch) 0 var(--dim);
    }
    25% {
        background: var(--dim);
        box-shadow: var(--pitch) 0 0 var(--p-color-primary), var(--pitch) var(--pitch) 0 var(--dim), 0 var(--pitch) 0 var(--dim);
    }
    50% {
        background: var(--dim);
        box-shadow: var(--pitch) 0 0 var(--dim), var(--pitch) var(--pitch) 0 var(--p-color-primary), 0 var(--pitch) 0 var(--dim);
    }
    75% {
        background: var(--dim);
        box-shadow: var(--pitch) 0 0 var(--dim), var(--pitch) var(--pitch) 0 var(--dim), 0 var(--pitch) 0 var(--p-color-primary);
    }
}

body.p-table-loading-active::before {
    content: '';
    position: fixed;
    top: 0; inset-inline-end: 0; bottom: 0;
    inset-inline-start: var(--p-sidebar-width, 0px);
    margin: auto;
    --p-mark-cell: 13px;
    z-index: var(--p-z-overlay);
    pointer-events: none;
}




body.p-frame-body.p-table-loading-active::before,
body.p-frame-body.p-table-loading-active::after,
body.p-frame-body .p-table-loading {
    inset-inline-start: 0;
}
@keyframes p-spin {
    to { transform: rotate(360deg); }
}






html.p-lock-active,
html.p-lock-active * { cursor: progress !important; }
html.p-lock-active .p-lock-box,
html.p-lock-active .p-lock-box * { cursor: default !important; }


.p-lock {
    position: fixed;
    z-index: var(--p-z-modal);
    animation: p-lock-dim var(--p-motion-calm) 1s both;
}
@keyframes p-lock-dim {
    from { background: transparent; }
    to   { background: color-mix(in srgb, var(--p-surface-raised) 55%, transparent); }
}
.p-lock-view {
    position: absolute;
    inset-inline: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.p-lock-box {
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: calc(100% - 16px);
    padding: 10px 14px;
    background: var(--p-surface-raised);
    border-radius: 8px;
    box-shadow: var(--p-shadow-float);
    animation: p-lock-in var(--p-motion-calm) 1s both;
}
@keyframes p-lock-in {
    from { opacity: 0; }
    to   { opacity: 1; }
}




.p-table tbody tr.p-tr-unverified > td.p-td-rowsel { background: var(--p-soft-warn) !important; }
.p-table.p-table--rownum tbody tr.p-tr-unverified > td.p-td-rowsel { color: transparent; }
.p-table tbody td.p-td-unverified:not(.p-td-editing),
.p-form-value.p-td-unverified:not(.p-td-editing) {
    position: relative;
    padding-inline-start: 26px;
    background: var(--p-soft-warn);
}
.p-form-value.p-td-unverified:not(.p-td-editing) { padding-inline-start: 22px; border-radius: 4px; }
.p-table tbody tr.p-tr-unverified > td.p-td-rowsel::after,
.p-table tbody td.p-td-unverified:not(.p-td-editing)::before,
.p-form-value.p-td-unverified:not(.p-td-editing)::before {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -6px;
    width: 12px;
    height: 12px;
    background: var(--p-ink-warn);
    -webkit-mask: var(--p-warn-kresba) center / 12px 12px no-repeat;
            mask: var(--p-warn-kresba) center / 12px 12px no-repeat;
    pointer-events: none;
}
.p-table tbody tr.p-tr-unverified > td.p-td-rowsel::after { inset-inline-start: 50%; margin-inline-start: -6px; }
.p-table tbody td.p-td-unverified:not(.p-td-editing)::before { inset-inline-start: 8px; }
.p-form-value.p-td-unverified:not(.p-td-editing)::before { inset-inline-start: 5px; }
.p-table-list-card.p-table-list-card--unverified {
    box-shadow: inset 0 0 0 2px var(--p-ink-warn);
}
.p-lock-mark {
    --p-mark-cell: 7px;
    flex: none;



    margin: calc(var(--pitch) / 2);
}
.p-table-error {
    color: var(--p-color-danger, #dc2626);
}


.p-table-empty {
    text-align: center;
    color: var(--p-color-text-muted);
    padding: 32px !important;
    font-size: 13px;
}



.p-form {
    display: flex;
    flex-direction: column;
    gap: 20px;


}

.p-form-field {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.p-form-label {
    font-size: 13px;
    font-weight: 500;
    color: var(--p-color-text);
}

.p-form-hint {
    font-size: 12px;
    color: var(--p-color-text-muted);
    line-height: 1.5;
}

.p-form-readonly {
    font-size: 13px;
    color: var(--p-color-text);
    padding: 6px 0;
}

.p-form-readonly-muted {
    font-size: 13px;
    color: var(--p-color-text-muted);
    padding: 4px 0;
    line-height: 20px;
}




.p-form textarea.p-input {
    resize: vertical;
    min-height: 64px;
}
.p-form-readonly.p-form-readonly--code {
    display: inline-block;
    font-family: var(--p-font-mono);
    font-size: 13px;
    font-weight: 600;
    color: var(--p-color-text);
    background: color-mix(in srgb, var(--p-color-primary) 8%, transparent);
    border: 1px solid color-mix(in srgb, var(--p-color-primary) 25%, transparent);
    border-radius: var(--p-radius-chip);
    padding: 4px 10px;
}

.p-form-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-top: 4px;
}


.p-color-picker {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
    gap: 10px;
    max-width: 560px;
}
.p-color-swatch {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    padding: 8px 4px;
    border-radius: var(--p-radius-card);
    transition: background var(--p-motion-fast);
    position: relative;
}
.p-color-swatch:hover { background: var(--p-color-sidebar-hover-bg); }
.p-color-swatch input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.p-color-swatch-dot {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--swatch);
    border: 2px solid transparent;
    box-shadow: var(--p-shadow-raised);
    transition: border-color var(--p-motion-fast), transform var(--p-motion-fast);
}
.p-color-swatch:hover .p-color-swatch-dot { transform: scale(1.08); }
.p-color-swatch input:checked + .p-color-swatch-dot {
    border-color: var(--p-color-text);
    transform: scale(1.08);
}
.p-color-swatch-name {
    font-size: 11px;
    color: var(--p-color-text-muted);
    text-align: center;
}
.p-color-swatch input:checked ~ .p-color-swatch-name {
    color: var(--p-color-text);
    font-weight: 500;
}




.p-color-swatch--custom { position: relative; }
.p-color-swatch-hex {
    position: absolute;
    top: 8px;
    left: 50%;
    transform: translateX(-50%);
    width: 36px;
    height: 36px;
    opacity: 0;
    cursor: pointer;
    border: none;
    padding: 0;
    background: transparent;
}
.p-color-swatch--custom .p-color-swatch-dot {

    background:
        linear-gradient(135deg, transparent 47%, rgba(255,255,255,.5) 47% 53%, transparent 53%),
        var(--swatch);
}







.p-form-grid {
    display: grid;
    grid-template-columns: repeat(var(--p-form-cols, 1), minmax(0, 1fr));
    gap: 14px 18px;
}
.p-form-field--full,
.p-form-grid > .p-form-section {
    grid-column: 1 / -1;
}
@media (max-width: 640px) {
    .p-form-grid { grid-template-columns: 1fr; }
}






.p-section,
.p-user-menu-label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--p-color-text-muted);
    margin: 10px 0 0;
}

.p-form-field--hidden { display: none !important; }


.p-file { display: flex; flex-direction: column; gap: 8px; }






.p-file-preview { display: flex; flex-direction: column; gap: 4px; }
.p-file-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    background: var(--p-surface-chassis);
    border-radius: var(--p-radius-chip);
    font-size: 13px;
}
.p-file-thumb { width: 40px; height: 40px; object-fit: cover; border-radius: var(--p-radius-chip); }
.p-file-icon  { font-size: 18px; width: 40px; text-align: center; }
.p-file-name  { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-file-remove {
    width: 22px; height: 22px;
    border: none; background: none; cursor: pointer;
    color: var(--p-color-text-muted); font-size: 16px; border-radius: var(--p-radius-chip);
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
}
.p-file-remove:hover { background: color-mix(in srgb, var(--p-color-danger) 12%, transparent); color: var(--p-text-danger); }



.p-combo { display: inline-block; width: 100%; }
.p-combo-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    min-height: var(--p-field-h);
    padding: 4px 8px 4px 10px;
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    background: var(--p-surface-raised);
    color: var(--p-color-text);
    font: inherit;
    font-size: 13px;
    cursor: pointer;
    text-align: start;
    transition: border-color var(--p-motion-fast), box-shadow var(--p-motion-fast);
}
.p-combo-trigger:hover  { border-color: color-mix(in srgb, var(--p-color-primary) 40%, var(--p-color-border)); }
.p-combo-trigger:focus  { outline: none; border-color: var(--p-color-primary); box-shadow: 0 0 0 2px color-mix(in srgb, var(--p-color-primary) 25%, transparent); }
.p-combo-label                    { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-combo-label--placeholder       { color: var(--p-color-text-muted); }
.p-combo-chevron                  { display: inline-flex; opacity: 0.55; flex-shrink: 0; }
.p-combo-chevron svg              { width: 14px; height: 14px; }

.p-combo-panel {
    background: var(--p-surface-raised);
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius);
    box-shadow: var(--p-shadow-float);
    min-width: 240px;
    max-width: 480px;




    z-index: var(--p-z-popover);
    display: flex;
    flex-direction: column;
    max-height: 360px;
}
.p-combo-panel[hidden] { display: none; }
.p-combo-search {
    margin: 8px 8px 4px;
    padding: 6px 10px;
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    background: var(--p-surface-chassis);
    color: var(--p-color-text);
    font: inherit;
    font-size: 13px;
    outline: none;
    transition: border-color var(--p-motion-fast);
}
.p-combo-search:focus { border-color: var(--p-color-primary); }
.p-combo-list {
    flex: 1;
    overflow-y: auto;
    padding: 4px 0;
}
.p-combo-item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    cursor: pointer;
    font-size: 13px;


    line-height: 18px;
}
.p-combo-item:hover,
.p-combo-item--hl       { background: var(--p-state-hover); }
.p-combo-item--selected { color: var(--p-text-accent); font-weight: 500; }
.p-combo-tick           { width: 14px; height: 14px; display: inline-flex; flex-shrink: 0; color: var(--p-color-primary); }
.p-combo-tick svg       { width: 14px; height: 14px; }
.p-combo-item-label     { flex: 1; }
.p-combo-item-desc      { color: var(--p-color-text-muted); font-size: 11px; margin-inline-start: 8px; flex-shrink: 0; max-width: 200px; overflow: hidden; text-overflow: ellipsis; }
.p-combo-empty {
    padding: 16px;
    text-align: center;
    color: var(--p-color-text-muted);
    font-size: 12px;
}




.p-form .p-form-footer[hidden] { display: none; }
.p-form-footer {
    display: flex;
    gap: 8px;
    margin-top: 12px;


    justify-content: flex-end;
}
.p-form-footer .p-btn-danger { margin-inline-end: auto; }

.p-form-section--collapsible {
    cursor: pointer;
    user-select: none;


    padding: 6px 10px;


    background: color-mix(in srgb, var(--p-color-primary) 3%, transparent);
    border-radius: var(--p-radius);
    transition: background var(--p-motion-fast);
}
.p-form-section--collapsible:hover {
    background: color-mix(in srgb, var(--p-color-primary) 6%, transparent);
}

.p-form-section--collapsible::after { content: none; }
.p-form-section--collapsible::before {
    content: '';
    width: 0; height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent currentColor;
    margin-inline-end: 4px;
    transition: transform var(--p-motion-fast);
    transform: rotate(90deg);
}
.p-form-section--collapsible.p-form-section--collapsed::before {
    transform: rotate(0deg);
}
.p-form-field--collapsed { display: none !important; }

.p-section::after,
.p-user-menu-label::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--p-color-border);
}


.p-form-field--invalid .p-input,
.p-form-field--invalid select,
.p-form-field--invalid textarea {
    border-color: #dc2626;
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--p-color-danger) 20%, transparent);
}
.p-form-error {
    font-size: 12px;
    color: #dc2626;
    line-height: 17px;
    margin-top: 2px;
}

.p-form-field--verify-diff .p-input,
.p-form-field--verify-diff select,
.p-form-field--verify-diff textarea {
    border-color: var(--p-ink-warn);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--p-ink-warn) 35%, transparent);
}
.p-form-field--verify-as .p-input,
.p-form-field--verify-as select,
.p-form-field--verify-as textarea { border-color: var(--p-ink-info); }

.p-form-field--verify-diff :is(.p-switch, .p-combo-trigger) { outline: 2px solid var(--p-ink-warn); outline-offset: 2px; }
.p-form-field--verify-as :is(.p-switch, .p-combo-trigger) { outline: 1px solid var(--p-ink-info); outline-offset: 2px; }
.p-form-field--dirty > .p-form-label::after {
    content: '•';
    content: '•' / '';
    color: var(--p-text-accent);
    margin-inline-start: 4px;
    font-size: 14px;
    line-height: 1;
}






.p-form-multi {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 4px;
}
.p-form-multi label {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius);
    background: var(--p-surface-raised);
    font-size: 13px;
    cursor: pointer;
    user-select: none;
    transition: background var(--p-motion-fast), border-color var(--p-motion-fast);
}
.p-form-multi label:not(.p-form-multi-ex):hover {
    background: var(--p-state-hover);
    border-color: color-mix(in srgb, var(--p-color-primary) 30%, var(--p-color-border));
}
.p-form-multi label:not(.p-form-multi-ex):has(input[type="checkbox"]:checked) {
    background: var(--p-state-active);
    border-color: var(--p-color-primary);
}
.p-form-multi label:not(.p-form-multi-ex) > input[type="checkbox"] {
    flex-shrink: 0;
    width: 16px; height: 16px;
    margin: 0;
    accent-color: var(--p-color-primary);
    cursor: pointer;
}
.p-form-multi label:not(.p-form-multi-ex) > span:not(.p-form-hint) {
    flex: 1;
    font-weight: 500;
}
.p-form-multi label:not(.p-form-multi-ex) > span.p-form-hint {
    flex: 0 1 auto;
    margin-inline-start: auto;
    padding-inline-start: 12px;
    color: var(--p-color-text-muted);
    font-size: 12px;
    font-weight: 400;
}



.p-form-multi label > span.p-form-multi-flag {
    flex: 0 0 auto;
    width: 72px;
    box-sizing: border-box;
    margin-inline-start: 8px;
    padding: 1px 0;
    border: 1px solid color-mix(in srgb, var(--p-color-danger, #dc2626) 45%, transparent);
    border-radius: var(--p-radius-chip);
    color: var(--p-color-danger, #dc2626);
    font-size: 10px;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .04em;
    line-height: 1.5;
    white-space: nowrap;
}



.p-form-multi-row {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.p-form-multi-extras {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 18px;
    margin: 0 0 2px 28px;
    padding: 8px 12px;
    border-inline-start: 2px solid color-mix(in srgb, var(--p-color-primary) 35%, var(--p-color-border));
    background: color-mix(in srgb, var(--p-color-primary) 3%, transparent);
    border-radius: 0 6px 6px 0;
}
.p-form-multi-extras[hidden] { display: none; }
.p-form-multi-ex {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 0;
    border: none;
    background: none;
    font-size: 12px;
    font-weight: 500;
    color: var(--p-color-text-muted);
    cursor: default;
}
.p-form-multi-ex > input[type="text"] {
    width: 190px;
    height: 26px;
    font-size: 12px;
}
.p-form-multi-ex > input[type="checkbox"] {
    width: 15px; height: 15px;
    margin: 0;
    accent-color: var(--p-color-primary);
    cursor: pointer;
}
.p-form-multi-ex > span.p-form-hint {
    font-size: 11px;
    font-weight: 400;
}







.p-form--readonly :is(.p-input, select, textarea) {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    color: var(--p-color-text);
    -webkit-text-fill-color: currentColor;
    opacity: 1;
    cursor: default;
}
.p-form--readonly textarea.p-input { resize: none; }
.p-form--readonly select { appearance: none; }
.p-form--readonly .p-form-req { display: none; }










.p-table td .p-badge {
    display: inline-block;
    max-width: -webkit-fill-available;
    max-width: stretch;
    overflow: hidden;
    text-overflow: ellipsis;
}











button.p-badge-toggle {
    border: none;
    cursor: pointer;
    font-family: inherit;
    gap: 4px;
    transition: filter var(--p-motion-fast) ease;
}
button.p-badge-toggle:hover { filter: brightness(0.95); }
button.p-badge-toggle:focus-visible {
    outline: 2px solid var(--p-color-primary);
    outline-offset: 1px;
}
button.p-badge-toggle svg { width: 11px; height: 11px; flex-shrink: 0; }



.p-barcode      { display: inline-block; max-width: 100%; }




.p-barcode      { width: 120px; }
.p-barcode[data-type="code128"],
.p-barcode[data-type="ean13"],
.p-barcode[data-type="ean8"],
.p-barcode[data-type="upca"],
.p-barcode[data-type="code39"],
.p-barcode[data-type="gs1-128"] { width: 200px; }
.p-barcode-svg  { display: block; width: 100%; height: auto; }
.p-barcode-text { font: 12px var(--p-font-mono); text-align: center; margin-top: 2px; word-break: break-all; }
.p-barcode-err  { color: var(--p-color-danger, #b00); font: 12px sans-serif; }


.p-pdf-overlay {
    position: fixed; inset: 0; z-index: calc(var(--p-z-overlay) + 1);
    display: flex; align-items: center; justify-content: center;
    background: color-mix(in srgb, var(--p-surface-chassis, #111) 55%, transparent);
    backdrop-filter: blur(1px);
}
.p-pdf-box {
    display: flex; flex-direction: column; align-items: center; gap: 12px;
    padding: 22px 28px; border-radius: 12px;
    background: var(--p-surface-raised, #fff); border: 1px solid var(--p-color-border, #ddd);
    box-shadow: var(--p-shadow-modal);
}

.p-pdf-spinner { --p-mark-cell: 9px; margin: calc(var(--pitch) / 2); }
.p-pdf-msg { font: 13px system-ui, sans-serif; color: var(--p-color-text, #222); }





.p-table-section th {
    background: var(--p-table-header-surface);
    color: var(--p-color-text-muted);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 7px 14px;
    border-top: 1px solid var(--p-color-border);
}


.p-page-breadcrumb {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--p-color-text-muted);
    margin-bottom: 20px;
}







.p-login-page {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: var(--p-surface-chassis);
}






.p-login-mosaic {
    position: fixed;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    display: grid;
    padding: var(--p-desktop-pad);
    gap: var(--p-desktop-pad);
    grid-template-columns: repeat(var(--cols, 40), var(--p-desktop-cell, 48px));
    grid-auto-rows: var(--p-desktop-cell, 48px);
    color: oklch(from var(--p-tone-source, var(--p-color-primary)) l 0 h);

    --p-mosaic-strength: 6;
}
.p-login-mosaic > i {
    --p-face: color-mix(in srgb, currentColor calc(var(--d) * var(--p-mosaic-strength, 1) * 1%), var(--p-surface-chassis));
    background: var(--p-face);
}



.p-login-titlebar { display: none; }
@media (display-mode: window-controls-overlay) {
    .p-login-titlebar {
        display: block;
        position: fixed;
        inset-block-start: 0;
        inset-inline: 0;
        height: env(titlebar-area-height, 36px);
        background: var(--p-surface-chassis);
        app-region: drag;
        -webkit-app-region: drag;
        z-index: 2;
    }
    .p-login-mosaic { top: env(titlebar-area-height, 36px); }
    .p-login-page { padding-top: env(titlebar-area-height, 36px); }
}



.p-login-box {
    position: relative;
    z-index: 1;
    background: var(--p-surface-sheet);
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius);
    padding: 40px;
    width: 100%;
    max-width: 380px;
    display: flex;
    flex-direction: column;
    gap: 20px;


    box-shadow: var(--p-shadow-float);
}

.p-login-header {
    text-align: center;
    padding-bottom: 8px;
}

.p-login-header .p-logo {
    font-size: 22px;
    color: var(--p-color-text);
    opacity: 1;
    width: auto;
    flex: unset;
}
.p-login-header .p-logo-img {
    height: 44px;
    justify-content: center;
}

.p-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 12px;
}

.p-field label {
    font-size: 13px;
    font-weight: 500;
    color: var(--p-color-text);
}










































.p-login-box .p-btn {
    width: 100%;
    justify-content: center;
}

.p-login-divider {
    text-align: center;
    position: relative;
    color: var(--p-color-text-muted);
    font-size: 12px;
}

.p-login-divider::before,
.p-login-divider::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 42%;
    height: 1px;
    background: var(--p-color-border);
}

.p-login-divider::before { left: 0; }
.p-login-divider::after  { right: 0; }













.p-error-icon {
    text-align: center;
    font-size: 40px;
    line-height: 1;
}

.p-error-title {
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    color: var(--p-color-text);
}

.p-error-text {
    text-align: center;
    font-size: 13px;
    color: var(--p-color-text-muted);
    line-height: 21px;
}

.p-error-trace {
    text-align: center;
    font-size: 11px;
    color: var(--p-color-text-muted);
}

.p-error-trace code {
    background: var(--p-surface-chassis);
    padding: 2px 6px;
    border-radius: var(--p-radius-chip);
}

.p-error-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
}



.p-page-title {
    font-size: 20px;
    font-weight: 600;
    color: var(--p-color-text);
    margin: 0;
}






.p-chart {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
    min-height: 0;
    font-size: 12px;
    color: var(--p-color-text);
    user-select: none;
    -webkit-user-select: none;
}
.p-chart-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 11px;
    color: var(--p-color-text-muted);
}


.p-chart-legend[hidden] { display: none; }
.p-chart-legend-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.p-chart-legend-item > i {
    display: inline-block;
    width: 10px; height: 10px;
    border-radius: var(--p-radius-chip);
}

.p-chart-legend-item:focus-visible { outline: 2px solid var(--p-color-primary); outline-offset: 2px; border-radius: var(--p-radius-chip); }
.p-chart-svg:focus-visible { outline: 2px solid var(--p-color-primary); outline-offset: -2px; }

.p-chart-svg:focus:not(:focus-visible),
.p-chart-legend-item:focus:not(:focus-visible) { outline: none; }
.p-chart-canvas {
    position: relative;
    flex: 1;
    min-height: 0;
}

.p-chart-message {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    text-align: center;
    color: var(--p-color-text-muted);
}
.p-chart-message[hidden] { display: none; }

.p-chart-note {
    font-size: 11px;
    color: var(--p-text-warn);
}
.p-chart-note[hidden] { display: none; }
.p-chart-svg {
    display: block;
    width: 100%;
    height: 100%;
}
.p-chart-bar,
.p-chart-slice {
    transition: opacity var(--p-motion-fast);
    cursor: default;
}



.p-chart--clickable :is(.p-chart-bar, .p-chart-slice, .p-chart-point, .p-chart-hitbox) { cursor: pointer; }
.p-chart-bar:hover,
.p-chart-slice:hover {
    opacity: 0.78;
}



.p-chart-bar--dim,
.p-chart-slice--dim { opacity: 0.28; }
.p-chart-bar--dim:hover,
.p-chart-slice--dim:hover { opacity: 0.5; }
.p-chart-point {
    pointer-events: all;
    cursor: default;
}
.p-chart-hitbox {
    pointer-events: all;
}
.p-chart-grid {
    stroke: var(--p-color-border);
    stroke-width: 1;
    stroke-dasharray: 2 3;
    opacity: 0.6;
}
.p-chart-baseline {
    stroke: var(--p-color-border);
    stroke-width: 1;
    opacity: 1;
}
.p-chart-refline {

    opacity: 0.7;
    pointer-events: none;
}






.auto-workers-grid {
    display: grid;

    grid-template-columns: auto auto auto auto auto 1fr auto auto;
    gap: 0 16px;
    align-items: center;
}
.auto-worker-row {
    display: contents;
}


.auto-worker-row > * {
    padding: 6px 0;
}




.p-card.auto-workers-card {
    padding-top: 4px;
    padding-bottom: 4px;
}

.auto-workers-foot {
    display: flex;
    justify-content: flex-end;
    padding: 6px 0 4px;
    border-top: 1px solid var(--p-color-border);
}



.auto-worker-chart-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--p-radius);
    padding: 4px 6px;
    cursor: pointer;
    color: var(--p-color-text-muted);
    transition: background-color var(--p-motion-fast), color var(--p-motion-fast), border-color var(--p-motion-fast);
    user-select: none;
}
.auto-worker-chart-btn:hover {
    background: color-mix(in srgb, var(--p-color-primary-light) 18%, var(--p-surface-raised));
    color: var(--p-color-primary-light);
}


.auto-worker-chart-btn.is-active {
    background: color-mix(in srgb, var(--p-color-primary-light) 28%, var(--p-surface-raised));
    color: var(--p-color-primary-light);
    border-color: color-mix(in srgb, var(--p-color-primary-light) 60%, var(--p-surface-raised));
}
.auto-worker-chart-btn.is-active:hover { background: var(--p-state-active-hover); }



.auto-worker-separator {
    grid-column: 1 / -1;
    height: 0;
    border-top: 1px solid var(--p-color-border);
    margin: 0;
}
.auto-worker-host {
    font-weight: 600;
    font-size: 1.05rem;
    white-space: nowrap;
}
.auto-worker-actions-cell {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}





.auto-worker-actions-cell .p-btn {
    border: 1px solid transparent;
}
.auto-worker-actions-cell .p-btn-success {
    background: color-mix(in srgb, var(--p-color-success) 22%, var(--p-surface-raised));
    color: var(--p-text-success);
    border-color: color-mix(in srgb, var(--p-color-success) 50%, var(--p-surface-raised));
}
.auto-worker-actions-cell .p-btn-warn {
    background: color-mix(in srgb, var(--p-color-warn) 24%, var(--p-surface-raised));
    color: color-mix(in srgb, var(--p-color-warn) 80%, var(--p-color-text));
    border-color: color-mix(in srgb, var(--p-color-warn) 55%, var(--p-surface-raised));
}


.auto-worker-actions-cell .p-btn-secondary {
    background: color-mix(in srgb, var(--p-color-text) 14%, var(--p-surface-raised));
    color: var(--p-color-text);
    border-color: color-mix(in srgb, var(--p-color-text) 35%, var(--p-surface-raised));
}



.auto-worker-actions-cell .p-btn-primary {
    background: color-mix(in srgb, var(--p-color-primary-light) 22%, var(--p-surface-raised));
    color: var(--p-color-primary-light);
    border-color: color-mix(in srgb, var(--p-color-primary-light) 50%, var(--p-surface-raised));
}
.auto-worker-actions-cell .p-btn:hover {
    opacity: 0.85;
}



@media (max-width: 1024px) {
    .auto-worker-actions-cell .p-btn span {
        display: none;
    }
    .auto-worker-actions-cell .p-btn {
        padding: 6px 8px;
    }
}





@media (max-width: 768px) {
    .auto-workers-grid {
        display: block;
    }
    .auto-worker-row {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 6px 10px;
        padding: 8px 0;
    }
    .auto-worker-row > * {
        padding: 0;
    }
    .auto-worker-host {
        width: 100%;
    }
    .auto-worker-actions-cell {
        width: 100%;
        justify-content: flex-start;
    }


    .auto-worker-separator {
        height: 0;
        border-top: 1px solid var(--p-color-border);
        margin: 4px 0;
    }
}

.auto-workers-grid .p-badge {
    font-size: 0.9rem;
    padding: 4px 10px;
    font-weight: 500;
    gap: 5px;
}


.auto-worker-state-cell .p-badge {
    min-width: 100px;
    justify-content: center;
}
.auto-worker-uptime-cell .p-badge {
    min-width: 90px;
    justify-content: center;
}












.p-badge--pulse {
    animation: p-badge-pulse 1.6s ease-in-out infinite;
}
.p-badge--pulse.p-badge-default { --p-badge-color: var(--p-color-text-muted); }
.p-badge--pulse.p-badge-primary { --p-badge-color: var(--p-color-primary); }
.p-badge--pulse.p-badge-success { --p-badge-color: var(--p-color-success); }
.p-badge--pulse.p-badge-warn    { --p-badge-color: var(--p-color-warn); }
.p-badge--pulse.p-badge-info    { --p-badge-color: var(--p-color-info); }
.p-badge--pulse.p-badge-danger  { --p-badge-color: var(--p-color-danger); }
.p-badge--pulse.is-alert {
    animation: p-badge-pulse 0.9s ease-in-out infinite;
}
@keyframes p-badge-pulse {


    0%, 100% { background-color: color-mix(in srgb, var(--p-badge-color) 14%, var(--p-surface-raised)); }
    50%      { background-color: color-mix(in srgb, var(--p-badge-color)  7%, var(--p-surface-raised)); }
}
.p-chart-axis {
    fill: var(--p-color-text-muted);
    font-size: 10px;
    font-family: inherit;
    user-select: none;
    pointer-events: none;
}


.p-chart-strip-title,
.p-chart-strip-total,
.p-chart-strip-label {
    font-family: inherit;
    user-select: none;
    pointer-events: none;
}
.p-chart-strip-title { fill: var(--p-color-text); font-size: 11px; }
.p-chart-strip-total { fill: var(--p-color-text-muted); font-size: 11px; }
.p-chart-strip-label { fill: var(--p-color-text-muted); font-size: 10px; }
.p-chart-strip-track { fill: var(--p-state-quiet); }



.p-chart-value {
    fill: var(--p-color-text);
    stroke: var(--p-chart-halo, transparent);
    stroke-width: 3px;
    stroke-linejoin: round;
    paint-order: stroke;
    font-size: 10px;
    font-family: inherit;
    user-select: none;
    pointer-events: none;
}
.p-chart-value--dim { opacity: 0.28; }
.p-chart-tooltip {
    position: absolute;
    pointer-events: none;
    background: var(--p-surface-raised);
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip);
    padding: 6px 10px;
    font-size: 12px;
    line-height: 1.5;
    box-shadow: var(--p-shadow-float);
    white-space: nowrap;
    z-index: 10;
}

.p-stat--pick.is-active { outline: 2px solid var(--p-color-primary); outline-offset: -2px; }


.p-chart-tip-dot {
    display: inline-block;
    width: 8px; height: 8px;
    border-radius: var(--p-radius-chip);
    margin-inline-end: 4px;
    vertical-align: middle;
}




.p-chart-tip-here {
    background: color-mix(in srgb, currentColor 16%, transparent);
    color: inherit;
    border-radius: var(--p-radius-chip);
    padding: 1px 4px;
    margin-inline-start: -4px;
}



.p-table-pivot3d-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    background: color-mix(in srgb, var(--p-color-text-muted) 5%, var(--p-surface-chassis));
    border-top: 1px solid var(--p-color-border);
    min-height: 0;
}
.p-table-pivot3d-panel[hidden] { display: none; }

.p-table-pivot3d-splitter {
    position: absolute;
    top: -3px; left: 0; right: 0;
    height: 6px;
    cursor: ns-resize;
    background: transparent;
    z-index: 4;
}
.p-table-pivot3d-splitter::before {
    content: ''; position: absolute; left: 0; right: 0; top: 2px; height: 2px;
    background: var(--p-color-border); opacity: 0; transition: opacity var(--p-motion-fast);
}
.p-table-pivot3d-splitter:hover::before,
.p-table-pivot3d-splitter:focus-visible::before,
.p-table-pivot3d-splitter.dragging::before { opacity: 1; background: var(--p-color-primary); }

.p-table-pivot3d-strip {
    flex: 0 0 auto;
    height: 30px;
    flex-direction: row;
    padding: 0 8px;
    gap: 10px;
    border-bottom: 1px solid var(--p-color-border);
}
.p-table-pivot3d-strip .p-drilldown-strip-controls { flex-direction: row; margin-inline-start: auto; }

.p-table-pivot3d-panel.p-state-min .p-table-pivot3d-host { display: none; }

.p-table-pivot3d-panel.p-state-max { flex: 1 1 auto; height: auto !important; }
.p-table--pivot3d-maxed > :not(.p-table-pivot3d-panel) { display: none !important; }
.p-table-pivot3d-status { font-size: 11px; color: var(--p-color-text-muted); }
.p-table-pivot3d-host { flex: 1; position: relative; min-height: 0; min-width: 0; overflow: hidden; }
.p-table-pivot3d-host canvas { display: block; width: 100% !important; height: 100% !important; }
.p-table-pivot3d-tip {
    position: absolute; z-index: 5; pointer-events: none; display: none;
    background: var(--p-surface-raised); border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-card); padding: 6px 9px; font-size: 12px; color: var(--p-color-text);
    box-shadow: var(--p-shadow-float);
}
.p-table-pivot3d-axislbl {
    font-size: 11px; font-weight: 600; color: var(--p-color-text-muted);
    white-space: nowrap; user-select: none; pointer-events: none;
}




.p-spark {
    display: inline-block;
    vertical-align: middle;
}
.p-gauge {
    display: inline-block;
    vertical-align: middle;
}
.p-glyph {
    display: inline-block;
    vertical-align: middle;
}

.p-vis-label {
    margin-inline-start: 6px;
    color: var(--p-color-text-muted);
    font-size: 0.92em;
    vertical-align: middle;
}



.p-table td:has(> svg.p-glyph),
.p-table td:has(> svg.p-spark) {
    text-overflow: clip;
    overflow: hidden;
}



.p-table td:has(> .p-actions-row) {
    text-overflow: clip;
    overflow: visible;
}
.p-gauge text {
    font-family: inherit;
    pointer-events: none;
    user-select: none;
}
.p-heatcell {
    display: inline-block;
    min-width: 28px;
    padding: 2px 6px;
    border-radius: var(--p-radius-chip);
    font-size: 11px;
    text-align: center;
    font-variant-numeric: tabular-nums;
    line-height: 15px;
    vertical-align: middle;
}






.p-tabs-container {
    display: flex;
    width: 100%;
    min-height: 0;





    --pt-c: var(--pt-surface-tab, var(--pt-surface, var(--p-tab-active-bg, var(--pt-surface-auto, var(--p-surface-sheet)))));
    --pt-p: var(--pt-strip, var(--p-tabs-strip-bg, color-mix(in oklab, var(--pt-c), #000000 var(--pt-recess))));
}

:root { --pt-recess: 5%; }
:root[data-theme="dark"] { --pt-recess: 28%; }
@media (prefers-color-scheme: dark) { :root[data-theme="auto"] { --pt-recess: 28%; } }


.p-tabs-body {
    --pt-surface: initial; --pt-surface-tab: initial; --pt-surface-auto: initial; --pt-strip: initial; --pt-tab: initial;
    --pt-hover: initial; --pt-selected: initial; --pt-mark: initial; --p-tab-active-bg: initial; --p-tabs-strip-bg: initial;
    --pt-strip-h: initial;
}


.p-tabs-container--top    { flex-direction: column; }
.p-tabs-container--bottom { flex-direction: column; }
.p-tabs-container--left   { flex-direction: row; }
.p-tabs-container--right  { flex-direction: row; }








.p-tabs {
    display: flex;
    align-items: stretch;




    background: var(--pt-p);
    overflow-x: auto;
    flex-shrink: 0;
}






.p-tabs-chrome .p-tab > .p-tab-icon:not([class*="p-ink-"]) { color: var(--p-color-text-muted); }




.p-tabs-container--top    > .p-tabs,
.p-tabs-container--bottom > .p-tabs {
    flex-direction: row;






    scrollbar-width: none;
}
.p-tabs-container--left  > .p-tabs,
.p-tabs-container--right > .p-tabs {
    flex-direction: column;


    width: var(--p-tabs-strip-width, 220px);
    overflow-x: hidden;
    overflow-y: auto;
}



.p-tabs-container--divider {
    --p-tabs-divider: 1px;
}


.p-tabs-container--divider.p-tabs-container--top    > .p-tabs {
    border-bottom: var(--p-tabs-divider) solid var(--p-color-border);
}
.p-tabs-container--divider.p-tabs-container--bottom > .p-tabs {
    border-top: var(--p-tabs-divider) solid var(--p-color-border);
}
.p-tabs-container--divider.p-tabs-container--left   > .p-tabs {
    border-inline-end: var(--p-tabs-divider) solid var(--p-color-border);
}
.p-tabs-container--divider.p-tabs-container--right  > .p-tabs {
    border-inline-start: var(--p-tabs-divider) solid var(--p-color-border);
}









.p-tab {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    font-size: 13px;
    color: var(--p-color-sidebar-fg);
    background: var(--pt-tab, transparent);
    border: none;
    border-inline-start: 1px solid var(--p-color-border);
    cursor: pointer;
    white-space: nowrap;
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
    user-select: none;
    font-family: inherit;
}
.p-tabs-container--left  > .p-tabs > .p-tab,
.p-tabs-container--right > .p-tabs > .p-tab {
    border-inline-start: none;
    border-bottom: 1px solid var(--p-color-border);
    justify-content: flex-start;
    text-align: start;
}
.p-tabs > .p-tab:first-child {
    border-inline-start: none;
    border-top: none;
}


.p-tabs-container--top    > .p-tabs > .p-tab:last-child,
.p-tabs-container--bottom > .p-tabs > .p-tab:last-child,
.p-tabs-container--top    > .p-tabs > .p-tab:has(+ :is(.p-tabs-actions, .p-tabs-add, .p-tabs-more)),
.p-tabs-container--bottom > .p-tabs > .p-tab:has(+ :is(.p-tabs-actions, .p-tabs-add, .p-tabs-more)) {
    border-inline-end: 1px solid var(--p-color-border);
}

.p-tabs-container--no-separators:is(.p-tabs-container--top, .p-tabs-container--bottom) > .p-tabs > .p-tab { border-inline: none; }
.p-tabs-container--no-separators:is(.p-tabs-container--left, .p-tabs-container--right) > .p-tabs > .p-tab { border-bottom: none; }







.p-tabs-container--inset:is(.p-tabs-container--top, .p-tabs-container--bottom) > .p-tabs { padding-block: var(--p-tabs-air, 3px); padding-inline-start: 6px; }
.p-tabs-container--inset:is(.p-tabs-container--left, .p-tabs-container--right) > .p-tabs { padding-inline: var(--p-tabs-air, 3px); padding-block-start: 6px; }
.p-tabs-container--inset > .p-tabs > .p-tab { border-radius: var(--p-radius); }
.p-tabs-container--inset > .p-tabs > .p-tab[aria-selected="true"] { --p-tab-ring: inset 0 0 0 1px var(--p-color-border); }









.p-tabs:dir(rtl) { --p-dir: -1; }
.p-tabs-container--connect.p-tabs-container--top    > .p-tabs { padding-block-end: 0; }
.p-tabs-container--connect.p-tabs-container--bottom > .p-tabs { padding-block-start: 0; }
.p-tabs-container--connect.p-tabs-container--left   > .p-tabs { padding-inline-end: 0; }
.p-tabs-container--connect.p-tabs-container--right  > .p-tabs { padding-inline-start: 0; }
.p-tabs-container--connect.p-tabs-container--top    > .p-tabs > .p-tab { border-end-start-radius: 0; border-end-end-radius: 0; }
.p-tabs-container--connect.p-tabs-container--bottom > .p-tabs > .p-tab { border-start-start-radius: 0; border-start-end-radius: 0; }
.p-tabs-container--connect.p-tabs-container--left   > .p-tabs > .p-tab { border-start-end-radius: 0; border-end-end-radius: 0; }
.p-tabs-container--connect.p-tabs-container--right  > .p-tabs > .p-tab { border-start-start-radius: 0; border-end-start-radius: 0; }
.p-tabs-container--connect.p-tabs-container--top    > .p-tabs > .p-tab[aria-selected="true"] {
    --p-tab-ring: inset 1px 0 0 0 var(--p-color-border), inset -1px 0 0 0 var(--p-color-border), inset 0 1px 0 0 var(--p-color-border);
}
.p-tabs-container--connect.p-tabs-container--bottom > .p-tabs > .p-tab[aria-selected="true"] {
    --p-tab-ring: inset 1px 0 0 0 var(--p-color-border), inset -1px 0 0 0 var(--p-color-border), inset 0 -1px 0 0 var(--p-color-border);
}
.p-tabs-container--connect.p-tabs-container--left   > .p-tabs > .p-tab[aria-selected="true"] {
    --p-tab-ring: inset 0 1px 0 0 var(--p-color-border), inset 0 -1px 0 0 var(--p-color-border), inset calc(var(--p-dir, 1) * 1px) 0 0 0 var(--p-color-border);
}
.p-tabs-container--connect.p-tabs-container--right  > .p-tabs > .p-tab[aria-selected="true"] {
    --p-tab-ring: inset 0 1px 0 0 var(--p-color-border), inset 0 -1px 0 0 var(--p-color-border), inset calc(var(--p-dir, 1) * -1px) 0 0 0 var(--p-color-border);
}
.p-tabs-container--connect.p-tabs-container--divider.p-tabs-container--top    > .p-tabs { border-bottom: 0; box-shadow: inset 0 calc(-1 * var(--p-tabs-divider)) 0 var(--p-color-border); }
.p-tabs-container--connect.p-tabs-container--divider.p-tabs-container--bottom > .p-tabs { border-top: 0;    box-shadow: inset 0 var(--p-tabs-divider) 0 var(--p-color-border); }
.p-tabs-container--connect.p-tabs-container--divider.p-tabs-container--left   > .p-tabs { border-inline-end: 0;   box-shadow: inset calc(-1 * var(--p-tabs-divider)) 0 0 var(--p-color-border); }
.p-tabs-container--connect.p-tabs-container--divider.p-tabs-container--right  > .p-tabs { border-inline-start: 0; box-shadow: inset var(--p-tabs-divider) 0 0 var(--p-color-border); }
.p-tabs-container--connect.p-tabs-container--divider.p-tabs-container--left   > .p-tabs:dir(rtl) { box-shadow: inset var(--p-tabs-divider) 0 0 var(--p-color-border); }
.p-tabs-container--connect.p-tabs-container--divider.p-tabs-container--right  > .p-tabs:dir(rtl) { box-shadow: inset calc(-1 * var(--p-tabs-divider)) 0 0 var(--p-color-border); }





.p-tab:hover {
    background: var(--pt-hover, color-mix(in oklab, var(--pt-tab, var(--pt-p)), var(--pt-c) 50%));
}

.p-tabs-container--sm > .p-tabs > .p-tab { padding: 5px 10px; font-size: 12px; gap: 6px; }
.p-tabs-container--lg > .p-tabs > .p-tab { padding: 11px 18px; font-size: 14px; }
.p-tabs-container--px > .p-tabs > .p-tab { padding-block: 0; min-height: var(--p-tabs-tab-h); box-sizing: border-box; }
.p-tab:focus-visible {
    outline: 2px solid var(--p-color-primary);
    outline-offset: -2px;
}








.p-tab[aria-selected="true"] {
    color: var(--p-color-sidebar-active-fg);
    background: var(--pt-selected, var(--pt-c));
}









:root                          { --p-tab-mark: var(--p-color-primary); }
:root[data-theme="half-dark"] { --p-tab-mark: color-mix(in srgb, var(--p-color-primary-light) 80%, #ffffff); }

.p-tabs-container--top    > .p-tabs > .p-tab[aria-selected="true"] { box-shadow: inset 0  2px 0 0 var(--pt-mark, var(--p-tab-mark)), var(--p-tab-ring, 0 0 transparent); }
.p-tabs-container--bottom > .p-tabs > .p-tab[aria-selected="true"] { box-shadow: inset 0 -2px 0 0 var(--pt-mark, var(--p-tab-mark)), var(--p-tab-ring, 0 0 transparent); }
.p-tabs-container--left   > .p-tabs > .p-tab[aria-selected="true"] { box-shadow: inset  2px 0 0 0 var(--pt-mark, var(--p-tab-mark)), var(--p-tab-ring, 0 0 transparent); }
.p-tabs-container--right  > .p-tabs > .p-tab[aria-selected="true"] { box-shadow: inset -2px 0 0 0 var(--pt-mark, var(--p-tab-mark)), var(--p-tab-ring, 0 0 transparent); }


.p-tabs-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-inline-start: auto;
    padding-inline: 8px;
    flex-shrink: 0;
}
.p-tabs-actions .p-btn {
    font-size: 13px;
    padding: 4px 10px;
}


.p-tabs-container--top    > .p-tabs > .p-tabs-actions,
.p-tabs-container--bottom > .p-tabs > .p-tabs-actions {
    position: sticky;
    inset-inline-end: 0;
    background: var(--pt-p);
}
.p-tabs-container--divider.p-tabs-container--top    > .p-tabs > .p-tabs-actions { margin-block-end: var(--p-tabs-divider); }
.p-tabs-container--divider.p-tabs-container--bottom > .p-tabs > .p-tabs-actions { margin-block-start: var(--p-tabs-divider); }
.p-tabs-container--left  > .p-tabs > .p-tabs-actions,
.p-tabs-container--right > .p-tabs > .p-tabs-actions {
    margin: auto 0 0;
    padding: 8px;
}


.p-tabs > .p-tabs-add {
    flex-shrink: 0;
    align-self: center;
    margin-inline-start: 6px;
    padding: 0;
    font-size: 13px;
    block-size: calc(1lh + 10px);
    aspect-ratio: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.p-tabs > .p-tabs-add svg { width: 14px; height: 14px; }
.p-tabs-container--left  > .p-tabs > .p-tabs-add,
.p-tabs-container--right > .p-tabs > .p-tabs-add { margin: 6px auto 0; }




.p-tabs-container--cramped > .p-tabs { width: auto; }




.p-tabs-container--cramped > .p-tabs > .p-tab { flex-direction: column; padding: 12px; flex-shrink: 0; }
.p-tabs-container--cramped > .p-tabs > .p-tab > .p-tab-label,
.p-tabs-container--cramped > .p-tabs > .p-tab > .p-tab-count { writing-mode: vertical-rl; }
.p-tabs-container--cramped > .p-tabs > .p-tabs-actions { flex-direction: column; }
.p-tabs-container--cramped > .p-tabs > .p-tabs-actions .p-btn { writing-mode: vertical-rl; padding: 10px 4px; }

.p-tab-icon {
    display: inline-flex;
    align-items: center;
    width: 16px; height: 16px;
    flex-shrink: 0;
}
.p-tab-icon svg { width: 100%; height: 100%; }
.p-tab-label {
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 240px;
}

.p-tab-label--lines { white-space: pre; line-height: 1.25; text-align: start; }

.p-tab-label--custom { max-width: none; overflow: visible; display: inline-flex; align-items: center; gap: 6px; }
.p-tab-count {
    font-size: 11px;
    padding: 1px 6px;
    background: color-mix(in srgb, var(--p-color-text-muted) 18%, transparent);
    border-radius: var(--p-radius-chip);
    font-variant-numeric: tabular-nums;
    margin-inline-start: auto;
}
.p-tab[aria-selected="true"] .p-tab-count {
    background: color-mix(in srgb, var(--p-color-primary) 14%, transparent);
    color: var(--p-color-text);
}
.p-tab-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px; height: 16px;
    border-radius: var(--p-radius-chip);
    color: var(--p-color-text-muted);
    cursor: pointer;
    margin-inline-start: 4px;
}
.p-tab-close svg { width: 11px; height: 11px; }
.p-tab-close:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 22%, transparent);
    color: var(--p-color-text);
}



@media (hover: hover) {
    .p-tab-close { transition: opacity var(--p-motion-fast); }
    .p-tab:not([aria-selected="true"]):not(:hover):not(:focus-within) > .p-tab-close { opacity: 0; }
}




.p-tabs-sep { flex: 0 0 2px; align-self: center; border-radius: 1px; background: var(--p-strip-divider); }
.p-tabs-container--top    > .p-tabs > .p-tabs-sep,
.p-tabs-container--bottom > .p-tabs > .p-tabs-sep { block-size: 1lh; margin-inline: 8px; }
.p-tabs-container--left   > .p-tabs > .p-tabs-sep,
.p-tabs-container--right  > .p-tabs > .p-tabs-sep { inline-size: 16px; block-size: 2px; flex-basis: 2px; margin-block: 8px; }

.p-tabs > .p-tabs-sep + .p-tab { border-inline-start: none; border-top: none; }
.p-tabs-container--left  > .p-tabs > .p-tab:has(+ .p-tabs-sep),
.p-tabs-container--right > .p-tabs > .p-tab:has(+ .p-tabs-sep) { border-bottom: none; }



.p-tab--live { background: color-mix(in oklab, var(--pt-tab, var(--pt-p)), var(--pt-mark, var(--p-tab-mark)) 10%); }


.p-tab--dot > .p-tab-icon { position: relative; }
.p-tab--dot > .p-tab-icon::after,
.p-tab--dot:not(:has(> .p-tab-icon))::after {
    content: ''; width: 6px; height: 6px; border-radius: 50%; flex: 0 0 6px;
    background: var(--p-color-primary);
    box-shadow: 0 0 0 1.5px var(--pt-p);
}
.p-tab--dot > .p-tab-icon::after { position: absolute; inset-block-start: -2px; inset-inline-end: -3px; }
.p-tab--dot:not(:has(> .p-tab-icon))::after { order: 1; align-self: flex-start; margin-block-start: 2px; margin-inline-start: -3px; }
.p-tab--dot:not(:has(> .p-tab-icon)) > :is(.p-tab-count, .p-tab-close) { order: 2; }

.p-tab--dragging { opacity: 0.45; }



.p-tabs-container--wrap:is(.p-tabs-container--top, .p-tabs-container--bottom) > .p-tabs { flex-wrap: wrap; overflow-x: visible; row-gap: 2px; }
.p-tabs-container--wrap > .p-tabs > .p-tabs-actions { position: static; }



.p-tabs-container--menu > .p-tabs { overflow: hidden; }

.p-tabs-container--menu:is(.p-tabs-container--top, .p-tabs-container--bottom) > .p-tabs > .p-tab { flex: 0 1 auto; min-width: calc(28px + 3ch); }
.p-tabs-container--menu:is(.p-tabs-container--top, .p-tabs-container--bottom) > .p-tabs > .p-tab:has(> .p-tab-icon) { min-width: calc(52px + 3ch); }
.p-tabs-container--menu > .p-tabs > .p-tab > .p-tab-label { min-width: 0; }
.p-tabs-container--menu > .p-tabs > .p-tab:is([aria-selected="true"], .p-tab--keep) { flex-shrink: 0; }


.p-tabs-container--menu:is(.p-tabs-container--top, .p-tabs-container--bottom) > .p-tabs > .p-tab.p-tab--compact { gap: 0; min-width: 0; flex-shrink: 0; }
.p-tab--compact > .p-tab-label,
.p-tab--compact > .p-tab-count { display: none; }
.p-tabs-more {
    flex-shrink: 0; align-self: center;
    display: inline-flex; align-items: center; gap: 4px;
    padding: 4px 8px; margin-inline-start: 2px;
    border: 0; border-radius: var(--p-radius); background: transparent;
    font: inherit; font-size: 12px; font-variant-numeric: tabular-nums;
    color: var(--p-color-text-muted); cursor: pointer;
}
.p-tabs-more[hidden] { display: none; }
.p-tabs-more:hover { background: var(--pt-hover, color-mix(in oklab, var(--pt-p), var(--pt-c) 50%)); }
.p-tabs-more .p-tab-icon { width: 14px; height: 14px; }
.p-tabs-more-count:empty { display: none; }





.p-tabs-container--plates > .p-tabs { gap: 2px; }
.p-tabs-container--plates > .p-tabs > .p-tab {
    border: 1px solid transparent;
    border-radius: var(--p-radius-card);
    background: var(--pt-tab, transparent);
    transition: color var(--p-motion-fast), background var(--p-motion-fast), border-color var(--p-motion-fast);
}

.p-tabs-container--plates > .p-tabs > .p-tab { padding-block: 7px; }
.p-tabs-container--plates.p-tabs-container--sm > .p-tabs > .p-tab { padding-block: 4px; }
.p-tabs-container--plates.p-tabs-container--lg > .p-tabs > .p-tab { padding-block: 10px; }
.p-tabs-container--plates.p-tabs-container--px > .p-tabs > .p-tab { padding-block: 0; }
.p-tabs-container--plates > .p-tabs > .p-tab.p-tab--live { background: var(--p-accent-soft); }
.p-tabs-container--plates > .p-tabs > .p-tab:hover { background: var(--pt-hover, var(--p-state-hover)); }
.p-tabs-container--plates > .p-tabs > .p-tab[aria-selected="true"] { background: var(--pt-selected, var(--p-accent-muted)); --p-tab-ring: 0 0 transparent; }
.p-tabs-container--plates > .p-tabs > .p-tab[aria-selected="true"]:hover { background: var(--pt-selected, var(--p-accent-muted-hover)); }
.p-tabs-container--plates.p-tabs-container--top    > .p-tabs > .p-tab[aria-selected="true"] { border-top-color:          color-mix(in srgb, var(--pt-mark, var(--p-tab-mark)) 35%, transparent); }
.p-tabs-container--plates.p-tabs-container--bottom > .p-tabs > .p-tab[aria-selected="true"] { border-bottom-color:       color-mix(in srgb, var(--pt-mark, var(--p-tab-mark)) 35%, transparent); }
.p-tabs-container--plates.p-tabs-container--left   > .p-tabs > .p-tab[aria-selected="true"] { border-inline-start-color: color-mix(in srgb, var(--pt-mark, var(--p-tab-mark)) 35%, transparent); }
.p-tabs-container--plates.p-tabs-container--right  > .p-tabs > .p-tab[aria-selected="true"] { border-inline-end-color:   color-mix(in srgb, var(--pt-mark, var(--p-tab-mark)) 35%, transparent); }



.p-tabs-container--plates > .p-tabs > .p-tab[style*="--pt-tint"] {
    --p-accent-solid:       oklch(from var(--pt-tint) var(--p-fill-l) c h);
    --p-accent-soft:        color-mix(in srgb, var(--p-accent-solid) 10%, var(--pt-p));
    --p-accent-muted:       color-mix(in srgb, var(--p-accent-solid) 16%, var(--pt-p));
    --p-accent-muted-hover: color-mix(in srgb, var(--p-accent-solid) 21%, var(--pt-p));
}


.p-tabs-container > .p-tabs > .p-tab.p-tab--drop {
    background: color-mix(in srgb, var(--p-color-primary) 24%, transparent);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--p-color-primary) 60%, transparent);
}



.p-tabs-body {
    flex: 1;
    min-width: 0;
    min-height: 0;
    background: var(--pt-c);
    overflow: auto;
}
.p-tabs-panel { min-height: 100%; }
.p-tabs-panel[hidden] { display: none; }












.p-tabs-container--fill { flex: 1; min-height: 0; min-width: 0; }
.p-tabs-container--fill > .p-tabs-body { flex: 1; min-height: 0; min-width: 0; display: flex; flex-direction: column; }
.p-tabs-container--fill > .p-tabs-body > .p-tabs-panel { min-height: 0; }
.p-tabs-container--fill > .p-tabs-body > .p-tabs-panel:not([hidden]) {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}















.p-tabs-container--top    > .p-tabs,
.p-tabs-container--bottom > .p-tabs { min-height: var(--pt-strip-h, 40px); }
.p-tabs-container--sm { --pt-strip-h: 32px; }
.p-tabs-container--lg { --pt-strip-h: 48px; }
.p-tabs-container--px { --pt-strip-h: 0px; }
.p-tabs-container .p-tab { min-height: 32px; }
.p-tabs-container--sm > .p-tabs > .p-tab { min-height: 0; }







.p-toolbar-count-seg.p-toolbar-cap {
    color: var(--p-color-text);
    background: color-mix(in srgb, var(--p-color-warn) 16%, var(--p-surface-raised));
}
.p-toolbar-count-seg.p-toolbar-cap:hover {
    background: color-mix(in srgb, var(--p-color-warn) 24%, var(--p-surface-raised));
}

.p-toolbar-cap-icon { display: inline-flex; color: var(--p-color-warn); }


.p-toolbar-count-seg.p-toolbar-topped {
    color: var(--p-color-text);
    background: color-mix(in srgb, var(--p-color-info) 14%, var(--p-surface-raised));
}
.p-toolbar-count-seg.p-toolbar-topped:hover {
    background: color-mix(in srgb, var(--p-color-info) 22%, var(--p-surface-raised));
}


.p-table-cap-overlay {
    position: absolute; inset: 0; z-index: 30;
    display: flex; align-items: center; justify-content: center; padding: 16px;
    background: color-mix(in srgb, var(--p-surface-raised) 55%, transparent);
    backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px);
}
.p-table-cap-card {
    max-width: 460px; background: var(--p-surface-raised);
    border: 1px solid var(--p-color-border); border-radius: 12px;
    padding: 20px 22px; box-shadow: var(--p-shadow-modal);
}
.p-table-cap-card .p-cap-h {
    font-size: 15px; font-weight: 600; display: flex; align-items: center; gap: 8px; margin-bottom: 8px;
}
.p-table-cap-card .p-cap-h i { color: var(--p-color-warn); font-style: normal; }
.p-table-cap-card p { font-size: 13px; color: var(--p-color-text-muted); line-height: 20px; margin: 0 0 16px; }
.p-table-cap-card .p-cap-actions { display: flex; gap: 8px; justify-content: flex-end; }





.p-markdown {
    font-size: 14px;
    line-height: 22px;
    color: var(--p-color-text);
    word-wrap: break-word;
    min-width: 0;
}
.p-markdown > :first-child { margin-top: 0; }
.p-markdown > :last-child  { margin-bottom: 0; }
.p-markdown h1, .p-markdown h2, .p-markdown h3,
.p-markdown h4, .p-markdown h5, .p-markdown h6 {
    margin: 1.2em 0 0.4em;
    font-weight: 600;
    line-height: 1.3;
    color: var(--p-color-text);
}
.p-markdown h1 { font-size: 22px; border-bottom: 1px solid var(--p-color-border); padding-bottom: 6px; }
.p-markdown h2 { font-size: 18px; }
.p-markdown h3 { font-size: 16px; }
.p-markdown h4 { font-size: 14px; }
.p-markdown h5, .p-markdown h6 { font-size: 13px; color: var(--p-color-text-muted); }
.p-markdown p { margin: 0 0 0.8em; }
.p-markdown ul, .p-markdown ol { margin: 0 0 0.8em; padding-inline-start: 24px; }
.p-markdown li { margin-bottom: 0.2em; }
.p-markdown li > p { margin: 0; }
.p-markdown a {
    color: var(--p-color-link);
    text-decoration: none;
}
.p-markdown a:hover { text-decoration: underline; }
.p-markdown blockquote {
    margin: 0 0 0.8em;
    padding: 4px 12px;
    border-inline-start: 3px solid var(--p-color-primary);
    color: var(--p-color-text-muted);
    background: color-mix(in srgb, var(--p-color-primary) 5%, transparent);
}
.p-markdown hr {
    border: none;
    border-top: 1px solid var(--p-color-border);
    margin: 1.2em 0;
}
.p-markdown table {
    border-collapse: collapse;
    margin: 0 0 0.8em;
    font-size: 13px;
}
.p-markdown th, .p-markdown td {
    padding: 6px 10px;
    border: 1px solid var(--p-color-border);
    text-align: start;
}
.p-markdown th {
    background: color-mix(in srgb, var(--p-color-text-muted) 8%, var(--p-surface-raised));
    font-weight: 600;
}

.p-markdown code {
    font-family: var(--p-font-mono);
    font-size: 0.9em;
    padding: 1px 5px;
    border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-color-text-muted) 12%, transparent);
    color: var(--p-color-text);
}

.p-markdown pre {
    margin: 0 0 0.8em;
    padding: 12px 14px;
    border-radius: var(--p-radius);
    background: color-mix(in srgb, var(--p-color-text-muted) 10%, var(--p-surface-raised));
    border: 1px solid var(--p-color-border);
    overflow-x: auto;
    font-size: 13px;
    line-height: 20px;
}
.p-markdown pre code {
    background: transparent;
    padding: 0;
    border-radius: 0;
    font-size: inherit;
    color: var(--p-color-text);
}
.p-markdown img { max-width: 100%; height: auto; border-radius: var(--p-radius-chip); }
.p-markdown input[type="checkbox"] { margin-inline-end: 6px; vertical-align: middle; }





.p-markdown .token.comment,
.p-markdown .token.prolog,
.p-markdown .token.doctype,
.p-markdown .token.cdata { color: var(--pc-syn-comment); font-style: italic; }
.p-markdown .token.keyword,
.p-markdown .token.atrule,
.p-markdown .token.boolean,
.p-markdown .token.tag > .token.punctuation { color: var(--pc-syn-keyword); }
.p-markdown .token.string,
.p-markdown .token.char,
.p-markdown .token.regex,
.p-markdown .token.template-string { color: var(--pc-syn-cstring); }
.p-markdown :is(.language-sql, .language-html, .language-markup, .language-cshtml) .token.string,
.p-markdown .token.attr-value { color: var(--pc-syn-string); }
.p-markdown .language-sql .token.function { color: var(--pc-syn-function); }
.p-markdown .token.class-name { color: var(--pc-syn-type); }
.p-markdown .token.tag,
.p-markdown .token.selector { color: var(--pc-syn-tag); }
.p-markdown .token.attr-name,
.p-markdown .token.property { color: var(--pc-syn-attr); }
.p-markdown .token.important,
.p-markdown .token.bold { font-weight: 700; }
.p-markdown .token.italic { font-style: italic; }




.p-table tbody tr.p-tr-pivot-agg td {
    font-weight: 500;
    background: color-mix(in srgb, var(--p-color-primary) 3%, var(--p-surface-raised));
}

.p-table tbody tr.p-tr-pivot-agg:hover td {
    background: color-mix(in srgb, var(--p-color-primary) 7%, var(--p-surface-raised));
}



.p-table tbody tr.p-tr-pivot-raw td {
    color: var(--p-color-text-muted);
    font-size: 0.9em;
    background: var(--p-surface-raised);
}


.p-table .p-cell-pivot-total {
    font-weight: 600;
    border-inline-start: 1px solid color-mix(in srgb, var(--p-color-border) 70%, transparent);
    background: color-mix(in srgb, var(--p-color-primary) 2%, var(--p-surface-raised));
}








.p-pivot-pct-cell {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1.15;
    margin: -3px -8px;
    padding: 3px 8px;
    background: color-mix(in srgb, var(--p-color-primary) calc(var(--pivot-pct, 0) * 0.25 * 1%), transparent);
}
:root[data-theme="dark"] .p-pivot-pct-cell {



    background: color-mix(in srgb, var(--p-accent-solid) calc(var(--pivot-pct, 0) * 0.55 * 1%), transparent);
}

@media (prefers-color-scheme: dark) {
    :root[data-theme="auto"] .p-pivot-pct-cell {
        background: color-mix(in srgb, var(--p-accent-solid) calc(var(--pivot-pct, 0) * 0.55 * 1%), transparent);
    }
}


.p-table-host .p-table tbody tr[data-key] > td .p-pivot-pct-cell { max-height: none; }




.p-pivot-pct-mode .p-pivot-pct-cell {
    box-sizing: border-box;
    min-height: calc(var(--p-row-h) - 1px);
    justify-content: flex-start;
    padding-bottom: 5px;
}


.p-pivot-pct-mode .p-table:not(.p-no-footer) tbody tr:last-child .p-pivot-pct-cell { min-height: var(--p-row-h); }
.p-pivot-pct-abs {
    font-variant-numeric: tabular-nums;
}
.p-pivot-pct-rel {
    font-size: 10px;
    color: var(--p-color-text-muted);
    margin-top: 1px;
}



.p-pivot-cnt-tip { display: block; }
.p-pivot-cnt-cell { display: flex; align-items: center; justify-content: space-between; gap: 6px; }
.p-pivot-cnt-val { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.p-pivot-pct-foot { display: flex; align-self: stretch; align-items: center; justify-content: space-between; gap: 6px; margin-top: 1px; }
.p-pivot-pct-foot .p-pivot-pct-rel { margin: 0; margin-inline-start: auto; }




.p-pivot-dim-lbl {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: flex-start;
    column-gap: 6px;
    width: 100%;
    height: calc(var(--p-cell-fs, 13px) + 4px);
    overflow: hidden;
    vertical-align: middle;
}
.p-pivot-dim-lbl--tree { width: calc(100% - 22px); }
.p-pivot-dim-txt {
    flex: 0 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: calc(var(--p-cell-fs, 13px) + 4px);
}
.p-pivot-dim-lbl > .p-pivot-dim-cnt { margin-inline-start: auto; }
.p-pivot-cnt,
.p-pivot-dim-cnt {
    flex-shrink: 0;
    padding: 0 5px;
    border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-color-text-muted) 14%, transparent);
    color: var(--p-color-text-muted);
    font-size: 10px;
    line-height: 14px;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
}


.p-table tfoot td.p-td-aggregate { font-weight: 600; }




.p-toast-container {
    position: fixed;
    top: 16px;
    left: 50%;
    transform: translateX(-50%);
    z-index: var(--p-z-toast);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    pointer-events: none;
    max-width: calc(100vw - 32px);
}



.p-toast {
    pointer-events: auto;
    app-region: no-drag;
    -webkit-app-region: no-drag;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-width: 280px;
    max-width: 480px;
    padding: 10px 14px;
    background: var(--p-surface-raised);
    border: 1px solid var(--p-color-border);
    border-inline-start: 3px solid var(--p-color-text-muted);
    border-radius: var(--p-radius);
    box-shadow: var(--p-shadow-drag);
    font-size: 13px;
    color: var(--p-color-text);
    opacity: 0;
    transform: translateY(-20px);
    transition: opacity var(--p-motion-calm) ease-out, transform var(--p-motion-calm) ease-out;
}
.p-toast--visible { opacity: 1; transform: translateY(0); }
.p-toast--leaving { opacity: 0; transform: translateY(-20px); }


.p-toast--success { border-inline-start-color: var(--p-color-success); }
.p-toast--error   { border-inline-start-color: var(--p-color-danger);  }
.p-toast--warn    { border-inline-start-color: var(--p-color-warn); }
.p-toast--info    { border-inline-start-color: var(--p-color-info);    }
.p-toast-icon {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 1px;
    color: var(--p-color-text-muted);
}
.p-toast-icon svg { width: 18px; height: 18px; }
.p-toast--success .p-toast-icon { color: var(--p-color-success); }
.p-toast--error   .p-toast-icon { color: var(--p-color-danger);  }
.p-toast--warn    .p-toast-icon { color: var(--p-color-warn); }
.p-toast--info    .p-toast-icon { color: var(--p-color-info);    }
.p-toast-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.p-toast-title {
    font-weight: 600;
    line-height: 1.3;
}
.p-toast-message {
    color: var(--p-color-text);
    line-height: 1.4;
    word-wrap: break-word;
}
.p-toast-action {
    flex-shrink: 0;
    background: transparent;
    border: none;
    color: var(--p-color-link);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    padding: 2px 6px;
    border-radius: var(--p-radius-chip);
    align-self: center;
}
.p-toast-action:hover {
    background: var(--p-state-active);
}
.p-toast-close {
    flex-shrink: 0;
    background: transparent;
    border: none;
    color: var(--p-color-text-muted);
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--p-radius-chip);
    margin-top: 1px;
}
.p-toast-close:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 20%, transparent);
    color: var(--p-color-text);
}


























































.p-tooltip {
    position: fixed;
    z-index: var(--p-z-tooltip);
    max-width: 280px;
    padding: 6px 10px;
    border-radius: var(--p-radius);
    background: var(--p-color-text);
    color: var(--p-surface-chassis);
    font-size: 12px;
    line-height: 17px;
    box-shadow: var(--p-shadow-float);
    pointer-events: none;
    opacity: 0;
    transition: opacity var(--p-motion-fast);
    white-space: normal;
}
.p-tooltip[data-show] { opacity: 1; }








.p-pull {
    position: fixed;
    top: -44px;
    left: 50%;
    transform: translate(-50%, 0);




    z-index: calc(var(--p-z-shell) + 2);
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--p-surface-raised);
    color: var(--p-color-text-muted);
    box-shadow: var(--p-shadow-raised);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--p-motion-fast);
}
.p-pull svg { width: 18px; height: 18px; transition: transform 0.05s linear; }

.p-pull--ready { color: var(--p-text-accent); }





.p-pull--hard {
    background: var(--p-accent-solid);
    color: var(--p-fill-fg);
    --p-color-on-surface-mix: var(--p-accent-solid);
}
.p-pull--running svg { animation: p-pull-spin 0.7s linear infinite; }
@keyframes p-pull-spin { to { transform: rotate(360deg); } }








.p-sectionnav {
    position: sticky;
    top: -24px;
    z-index: 5;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
    margin: -24px -24px 16px;
    padding: 12px 24px;





    background: var(--p-surface-frame);
    border-bottom: 1px solid var(--p-color-border);
    box-shadow: var(--p-shadow-raised);
}
.p-sectionnav a {
    padding: 4px 10px;
    font-size: 12px;
    color: var(--p-color-text-muted);
    text-decoration: none;
    border-radius: var(--p-radius-chip);
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
}
.p-sectionnav a:hover {
    background: var(--p-state-hover);
    color: var(--p-color-text);
}






.p-sectionnav a.is-active {
    background: var(--p-state-active);
    color: var(--p-text-accent);
    font-weight: 600;
}





.p-docs-tabs-host { display: flex; flex-direction: column; min-height: 0; --p-tab-active-bg: var(--p-surface-raised); }
.p-docs-body { padding: 16px 20px; line-height: 1.6; max-width: 900px; }
.p-docs-body > :first-child { margin-top: 0; }
.p-docs-empty { padding: 16px 20px; color: var(--p-color-text-muted); font-size: .9rem; }


.p-help-drawer-body--flush { padding: 0; }




.p-docs-shell { display: flex; flex-direction: column; min-height: 0; }
#p-docs-root { flex: 1; min-height: 0; display: flex; }
#p-docs-root .p-docs-tabs-host,
#p-docs-root .p-docs-tabs-host > .p-tabs-container { flex: 1; min-height: 0; }



.p-docs-inner { display: flex; flex-direction: column; min-height: 0; }
#p-docs-root .p-docs-inner { flex: 1; }



.p-docs-head-slot { margin-inline-start: auto; display: inline-flex; align-items: center; align-self: center; }
.p-docs-xlate { padding: 3px 10px; font-size: 12px; line-height: 17px; }
.p-docs-xlate[disabled] { opacity: var(--p-disabled-opacity); cursor: default; }
.p-docs-xlate.is-busy { opacity: .8; cursor: default; }
.p-docs-xlate.is-busy::before {


    content: "";
    --p-mark-cell: 5px;
    margin: calc(var(--pitch) / 2);
    margin-inline-end: calc(var(--pitch) / 2 + 3px);
}




.pageedit-status { font-size: 12px; color: var(--p-color-text-muted); font-variant-numeric: tabular-nums; }
.pageedit-status.is-saved { color: var(--p-text-success); }
.pageedit-status.is-error { color: var(--p-text-danger); }
.pageedit-docs { display: flex; flex-direction: column; overflow: auto; background: var(--p-surface-raised); }
.pageedit-docs-inner { flex: 1; max-width: 1100px; width: 100%; margin: 0 auto; padding: 18px 22px 24px; display: flex; flex-direction: column; gap: 16px; }


.pageedit-docs-block { flex: 1; display: flex; flex-direction: column; gap: 7px; }
.pageedit-docs-block > h3 { margin: 0; font-size: 14px; font-weight: 600; color: var(--p-color-text); }
.pageedit-docs-hint { font-size: 12px; color: var(--p-color-text-muted); margin: -3px 0 2px; }
.pageedit-docs-langs { display: flex; gap: 2px; align-items: center; }
.pageedit-docs-lang { background: transparent; border: 0; border-bottom: 2px solid transparent; padding: 5px 12px; font-size: 12px; color: var(--p-color-text-muted); cursor: pointer; text-transform: uppercase; letter-spacing: 0.04em; font-weight: 600; }
.pageedit-docs-lang:hover { color: var(--p-color-text); }
.pageedit-docs-lang.is-active { color: var(--p-color-text); border-bottom-color: var(--p-color-primary); }

.pageedit-docs-lang:not(.has-content) { opacity: 0.5; }
.pageedit-docs-header .p-btn.is-busy, .pageedit-docs-header .p-btn[disabled] { opacity: var(--p-disabled-opacity); cursor: default; }


.pageedit-docs-split { flex: 1; min-height: 180px; contain: size; display: flex; gap: 12px; }
.pageedit-docs-split > * { flex: 1; min-width: 0; }
.pageedit-docs-split textarea { resize: vertical; min-height: 180px; padding: 10px 12px; border: 1px solid var(--p-color-border); border-radius: var(--p-radius); background: var(--p-surface-chassis); color: var(--p-color-text); font-family: var(--p-font-mono); font-size: 13px; line-height: 20px; }
.pageedit-docs-preview { border: 1px solid var(--p-color-border); border-radius: var(--p-radius); background: var(--p-surface-chassis); padding: 10px 14px; overflow: auto; font-size: 14px; color: var(--p-color-text); }
.pageedit-docs-preview:empty::before { content: attr(data-empty); color: var(--p-color-text-muted); font-style: italic; font-size: 13px; }

@media (max-width: 768px) { .pageedit-docs-split { flex-direction: column; contain: none; } }

.pageedit-docs-header { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: space-between; }
.pageedit-docs-footer { display: flex; gap: 8px; align-items: center; }


.pageedit-docs .p-btn:disabled { opacity: var(--p-disabled-opacity); cursor: default; }
.pageedit-docs .p-btn:disabled:hover { opacity: var(--p-disabled-opacity); }
.pageedit-docs-extra { font-size: 12px; margin: 2px 0 6px; }
.pageedit-docs-key-label { margin: 0; font-size: 14px; font-weight: 600; color: var(--p-color-text); }
.pageedit-docs-chips { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; position: relative; }
.pageedit-docs-chip { display: inline-flex; align-items: center; border: 1px solid var(--p-color-border); border-radius: 14px; background: var(--p-surface-raised); overflow: hidden; }
.pageedit-docs-chip.is-active { border-color: var(--p-color-primary); background: color-mix(in srgb, var(--p-color-primary) 10%, var(--p-surface-raised)); }
.pageedit-docs-chip-label { background: transparent; border: 0; padding: 4px 10px; font-size: 12px; font-weight: 600; color: var(--p-color-text-muted); cursor: pointer; }
.pageedit-docs-chip.is-active .pageedit-docs-chip-label { color: var(--p-color-text); }

.pageedit-docs-chip:not(.has-content) { border-style: dashed; }
.pageedit-docs-chip:not(.has-content) .pageedit-docs-chip-label { opacity: 0.6; }
.pageedit-docs-chip-x { background: transparent; border: 0; padding: 0 8px 0 2px; font-size: 15px; line-height: 1; color: var(--p-color-text-muted); cursor: pointer; }
.pageedit-docs-chip-x:hover { color: var(--p-text-danger); }
.pageedit-docs-add { width: 26px; height: 26px; border: 1px dashed var(--p-color-border); border-radius: 50%; background: transparent; color: var(--p-color-text-muted); cursor: pointer; font-size: 16px; line-height: 1; }
.pageedit-docs-add:hover { border-color: var(--p-color-primary); color: var(--p-text-accent); }
.pageedit-docs-addmenu { position: absolute; top: 100%; inset-inline-start: 0; margin-top: 4px; z-index: 20; min-width: 200px; display: flex; flex-direction: column; gap: 2px; padding: 6px; background: var(--p-surface-raised); border: 1px solid var(--p-color-border); border-radius: var(--p-radius-card); box-shadow: var(--p-shadow-float); }
.pageedit-docs-addmenu-item { text-align: start; background: transparent; border: 0; padding: 6px 10px; border-radius: var(--p-radius); font-size: 13px; color: var(--p-color-text); cursor: pointer; }
.pageedit-docs-addmenu-item:hover { background: var(--p-state-hover); }
.pageedit-docs-addmenu-form { display: flex; flex-direction: column; gap: 4px; border-top: 1px solid var(--p-color-border); margin-top: 4px; padding-top: 6px; }
.pageedit-docs-addmenu-formlabel { font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: var(--p-color-text-muted); }
.pageedit-docs-addmenu-form input { padding: 5px 8px; border: 1px solid var(--p-color-border); border-radius: var(--p-radius); background: var(--p-surface-chassis); color: var(--p-color-text); font-size: 13px; }
.pageedit-docs-addmenu-form input.is-invalid { border-color: var(--p-color-danger); }





.p-tgaps { flex-shrink: 0; padding: 8px 14px; border-bottom: 1px solid var(--p-color-border); background: var(--p-surface-frame); }
.p-tgaps-row { display: flex; align-items: center; gap: 10px; padding: 3px 0; font-size: 13px; }
.p-tgaps-lang { font-weight: 600; min-width: 34px; }

.p-tgaps-bar { flex: 1; max-width: 260px; }
.p-tgaps-count { color: var(--p-color-text-muted); min-width: 170px; }

.p-tgaps-spin {
    flex-shrink: 0;
    --p-mark-cell: 5px;
}


.p-tgaps-stray { color: var(--p-color-text-muted); }
.p-tgaps-stray-label { font-size: 12px; }
.p-tgaps-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.p-tgaps-chip {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 1px 2px 1px 8px;
    font-size: 12px; line-height: 18px;
    border: 1px solid var(--p-color-border);
    border-radius: 999px;
    background: var(--p-surface-raised);
}
.p-tgaps-chip code { font-size: 12px; color: var(--p-color-text); }

.p-tgaps-chip-count { font-variant-numeric: tabular-nums; }

.p-tgaps-chip:not(:has(.p-tgaps-x)) { padding-inline-end: 8px; }
.p-tgaps-x {
    display: inline-flex; align-items: center; justify-content: center;
    width: 16px; height: 16px; padding: 0;
    border: 0; border-radius: 50%; background: none; cursor: pointer;
    color: var(--p-color-text-muted); font-size: 11px; line-height: 1;
}
.p-tgaps-x:hover:not(:disabled) {
    background: color-mix(in srgb, var(--p-color-danger) 15%, transparent);
    color: var(--p-text-danger);
}
.p-tgaps-x:disabled { cursor: default; }

.p-tgaps-x.p-tgaps-spin { margin: 2px; }








.p-user-detail { max-width: 900px; }
.p-user-detail .p-form { max-width: 740px; }




.p-user-detail > .p-form-section--form { max-width: 740px; }



.p-user-security {
    margin-top: 8px;
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius);
    background: var(--p-surface-raised);
    overflow: hidden;
}
.p-user-security-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 14px 16px;
}
.p-user-security-item + .p-user-security-item { border-top: 1px solid var(--p-color-border); }
.p-user-security-title { font-size: 13px; font-weight: 600; color: var(--p-color-text); }
.p-user-security-note  { font-size: 12px; color: var(--p-color-text-muted); margin-top: 2px; max-width: 60ch; }

.p-user-security-item > form,
.p-user-security-item > .p-btn { flex: 0 0 auto; }




.p-table td.p-td-check {
    padding-inline: 0;
    text-align: center;
    text-overflow: clip;
}



.p-th-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--p-color-text-muted);
}








.p-form-grid { container-type: inline-size; }

@container (min-width: 520px) {
    .p-form-grid > .p-form-field {
        display: grid;
        grid-template-columns: var(--p-form-label-w, 170px) minmax(0, 1fr);
        align-items: start;
        column-gap: 16px;
        row-gap: 4px;
    }

    .p-form-grid > .p-form-field > .p-form-label { grid-column: 1; padding-top: 8px; }
    .p-form-grid > .p-form-field > :not(.p-form-label) { grid-column: 2; }





    .p-form-grid > .p-form-field--bool > .p-switch { display: contents; }


    .p-form-grid > .p-form-field--bool > .p-switch > .p-form-label   { grid-column: 1; grid-row: 1; padding-top: 0; }


    .p-form-grid > .p-form-field--bool > .p-switch > .p-switch-track {
        grid-column: 2; grid-row: 1;
        align-self: center;
    }
    .p-form-grid > .p-form-field--bool > .p-switch > .p-form-label { align-self: center; }
    .p-form-grid > .p-form-field--bool { min-height: var(--p-field-h); align-items: center; }



    .p-form-grid > .p-form-field > .p-form-hint { margin-top: -2px; }



    .p-form-grid > .p-form-field--bool {
        grid-template-columns: var(--p-form-label-w, 170px) auto minmax(0, 1fr);
    }
    .p-form-grid > .p-form-field--bool > .p-form-hint {
        grid-column: 3; grid-row: 1;
        align-self: center;
        margin: 0 0 0 12px;
    }


    .p-form-grid > .p-form-section,
    .p-form-grid > .p-form-footer { grid-column: 1 / -1; display: flex; }
}











:root { --pp-w: 450px; }

#pp-stage { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; z-index: 40;
    background: var(--p-surface-chassis, #fff); display: none; }
#pp-stage.show { display: block; }


#p-pilot { flex: 0 0 0; width: 0; height: 100vh; overflow: hidden; display: flex; flex-direction: column;
    position: relative;


    background: var(--p-surface-chassis, #fff);




    color: var(--p-color-text, #1a1a1a);


    visibility: hidden;
    transition: flex-basis var(--p-transition, var(--p-motion-calm) ease), width var(--p-transition, var(--p-motion-calm) ease),
        visibility 0s linear var(--p-motion-calm);
    font-family: ui-sans-serif, system-ui, sans-serif; }


#p-pilot > .pp-bg { position: absolute; inset: 0; z-index: 0; }
#p-pilot > :not(.pp-bg) { position: relative; z-index: 1; }
body.pp-open #p-pilot { flex-basis: var(--pp-w); width: var(--pp-w); visibility: visible;
    transition: flex-basis var(--p-transition, var(--p-motion-calm) ease), width var(--p-transition, var(--p-motion-calm) ease), visibility 0s;
    border-inline-start: 1px solid var(--p-color-sidebar-border, rgba(0,0,0,.12)); }





#pp-split { position: fixed; top: 0; inset-inline-end: calc(var(--pp-w) - 3px); width: 6px; height: 100vh;
    cursor: ew-resize; user-select: none; z-index: 50; background: transparent; display: none;
    transition: background var(--p-motion-fast), inset-inline-end var(--p-transition, var(--p-motion-calm) ease); }
body.pp-open #pp-split { display: block; }

body.pp-dragging #p-pilot, body.pp-dragging #pp-split { transition: none !important; }
#pp-split:hover, #pp-split:focus-visible, #pp-split.drag { background: color-mix(in srgb, var(--p-color-primary) 40%, transparent); }


#pp-tab { position: fixed; inset-inline-end: 0; top: 50%; transform: translateY(-50%); z-index: 60;
    width: 22px; height: 66px; display: none; align-items: center; justify-content: center; cursor: pointer;
    background: var(--p-surface-raised, #fff); color: var(--p-color-primary, #2563eb);
    border: 1px solid var(--p-color-border, rgba(0,0,0,.12)); border-inline-end: 0;
    border-start-start-radius: 9px; border-end-start-radius: 9px; }
#pp-tab:hover { background: var(--p-color-hover, rgba(0,0,0,.05)); }
body:not(.pp-open) #pp-tab { display: flex; }



body.pp-strip-toggle:not(.pp-open) #pp-tab { display: none; }










.p-shell-nav { display: none; }
@media (display-mode: window-controls-overlay), (display-mode: standalone) {
    html.p-shell-nav-on .p-shell-nav {
        display: flex;
        flex: 0 0 auto;
        align-self: stretch;
        margin-block: var(--p-strip-air);
        margin-inline: var(--p-strip-air) var(--p-desktop-pad);
        border: 1px solid transparent;
        border-radius: var(--p-radius-card);
        background: transparent;
    }
    html[data-bars="left"] .p-shell-nav { flex-direction: column; margin: var(--p-strip-air) var(--p-strip-air) var(--p-desktop-pad); }
    html[data-bars="left"] .p-shell-nav-btn { width: auto; height: 30px; }
    @container p-bars (min-width: 120px) {
        html[data-bars="left"] .p-shell-nav { flex-direction: row; }
        html[data-bars="left"] .p-shell-nav-btn { width: 30px; height: 33px; }
    }
    @media (max-width: 768px) {
        .p-shell-nav { display: none; }
    }
}
.p-shell-nav-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    padding: 0;
    border: 0;
    border-radius: calc(var(--p-radius-card) - 1px);
    background: transparent;
    color: var(--p-color-text-muted);
    cursor: pointer;
    transition: color var(--p-motion-fast), background var(--p-motion-fast);
}
.p-shell-nav-btn[hidden] { display: none; }
.p-shell-nav-btn:hover { color: var(--p-color-text); background: var(--p-state-hover); }
.p-shell-nav-btn :is(i, svg) { width: 16px; height: 16px; display: block; }

html[dir="rtl"] .p-shell-nav-btn:is([data-shell-nav="back"], [data-shell-nav="forward"]) svg { transform: scaleX(-1); }


.p-desktop-assistant-open {
    display: none;
    flex: 0 0 auto;
    align-self: center;
    align-items: center;
    justify-content: center;
    width: calc(2 * 12px + var(--p-strip-icon) + 2 * 1px);
    height: var(--p-strip-tab-h);
    padding: 0;
    border: 1px solid transparent;
    border-radius: var(--p-radius-card);
    background: transparent;



    color: var(--p-color-text-muted);
    cursor: pointer;
    transition: color var(--p-motion-fast), background var(--p-motion-fast);
}
body:not(.pp-open) .p-desktop-assistant-open { display: inline-flex; }
.p-desktop-assistant-open:hover { color: var(--p-color-text); }
.p-desktop-assistant-open:hover { background: var(--p-state-hover); }
.p-desktop-assistant-open svg { width: 16px; height: 16px; display: block; }




.pp-head { flex: 0 0 auto; height: 48px; display: flex; align-items: center; gap: 2px; padding: 0 14px 0 8px;
    border-bottom: 1px solid var(--p-color-sidebar-border, rgba(0,0,0,.1)); background: var(--p-surface-chassis, transparent); }




.pp-tools { flex: 0 0 auto; box-sizing: border-box; height: 40px; display: flex; align-items: center; gap: 2px;
    padding: 0 8px;
    border-bottom: 1px solid var(--p-color-sidebar-border, rgba(0,0,0,.1)); background: var(--p-surface-chassis, transparent); }
.pp-tools :is(.pp-data-badge, .p-icon-btn) { flex: 0 0 auto; }


.pp-tools .p-icon-btn { width: auto; gap: 6px; padding: 0 8px; }


.pp-tools .pp-clear { margin-inline-start: auto; }
.pp-tool-label { font-size: 12px; line-height: 1; white-space: nowrap; }
.pp-head .pp-glyph { color: var(--p-color-primary, #2563eb); display: flex; flex: 0 0 auto; margin-inline-start: 4px; }



.pp-glyph-core { fill: var(--p-color-primary, #2563eb); }
.pp-glyph-ray  { fill: color-mix(in srgb, var(--p-color-primary, #2563eb) 68%, #fff); }
.pp-head .pp-title { font-weight: 600; font-size: 14px; flex: 0 0 auto; color: var(--p-color-text, #1a1a1a);
    margin-inline-start: 8px; }




.pp-data-badge { flex: 0 0 auto;
    display: inline-flex; align-items: center; gap: 6px; padding: 3px 7px; border-radius: 999px;
    background: transparent; color: var(--p-color-text-muted); }



.pp-data-badge.is-on { background: color-mix(in srgb, var(--p-color-primary) 14%, transparent);
    color: var(--p-color-text); }



.pp-tools .pp-fill { flex: 0 0 auto; }
.pp-tools .pp-fill[hidden] { display: none; }


.pp-fill-pct { font-size: 12px; line-height: 1; color: var(--p-color-text-muted, #888);
    font-variant-numeric: tabular-nums; white-space: nowrap; }

.pp-fill-ring { width: 16px; height: 16px; border-radius: 50%; position: relative; flex: 0 0 auto;
    background: conic-gradient(var(--fill-c, var(--p-color-accent, #6d5dfc)) calc(var(--fill-p, 0) * 1%), var(--p-color-border, rgba(0,0,0,.15)) 0);
    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px));
            mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px)); }
.pp-fill-txt { font-size: 11px; color: var(--p-color-text-muted, #888); font-variant-numeric: tabular-nums; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }


.pp-quota { flex: 0 0 auto; padding: 8px 14px 9px; display: flex; flex-direction: column; gap: 6px;
    border-bottom: 1px solid var(--p-color-sidebar-border, rgba(0,0,0,.1)); background: var(--p-surface-chassis, transparent); }
.pp-quota[hidden] { display: none; }


.pp-quota-row { display: flex; flex-direction: column; gap: 3px; }
.pp-quota-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px;
    font-size: 11px; color: var(--p-color-text-muted, #888); font-variant-numeric: tabular-nums; }
.pp-quota-head > span:first-child { color: var(--p-color-text, #1a1a1a); }
.pp-quota-bar { display: block; height: 4px; border-radius: var(--p-radius-chip); background: var(--p-color-border, rgba(0,0,0,.12)); overflow: hidden; }
.pp-quota-bar > i { display: block; height: 100%; border-radius: var(--p-radius-chip); background: var(--q-c, var(--p-color-accent, #6d5dfc));
    width: var(--q-p, 0%); transition: width var(--p-motion-calm); }
.pp-quota-when { white-space: nowrap; opacity: .8; }


.pp-mem { flex: 0 0 auto; padding: 9px 14px 10px; display: flex; flex-direction: column; gap: 7px;
    border-bottom: 1px solid var(--p-color-sidebar-border, rgba(0,0,0,.1)); background: var(--p-surface-chassis, transparent); }
.pp-mem[hidden] { display: none; }
.pp-mem-hint { font-size: 11px; line-height: 16px; color: var(--p-color-text-muted, #888); }
.pp-mem-ta { width: 100%; box-sizing: border-box; resize: vertical; min-height: 62px; max-height: 220px;
    font: inherit; font-size: 12px; line-height: 1.5; padding: 7px 9px; border-radius: var(--p-radius-card);
    border: 1px solid var(--p-color-border, rgba(0,0,0,.15)); background: var(--p-surface-raised, #fff);
    color: var(--p-color-text, #1a1a1a); }
.pp-mem-ta:focus { outline: none; border-color: var(--p-color-primary, #2563eb); }
.pp-mem-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.pp-mem-count { font-size: 11px; color: var(--p-color-text-muted, #888); font-variant-numeric: tabular-nums; }
.pp-mem-count.over { color: var(--p-color-danger, #dc2626); font-weight: 600; }
.pp-mem-btns { display: flex; gap: 8px; }
.pp-mem-btns button { border: 1px solid var(--p-color-border, rgba(0,0,0,.15)); border-radius: var(--p-radius);
    padding: 4px 11px; font-size: 12px; cursor: pointer; background: var(--p-surface-chassis, #fff); color: inherit; }
.pp-mem-save { background: var(--p-accent-solid) !important; border-color: transparent !important; color: var(--p-accent-solid-fg) !important; }
.pp-mem-btns button:disabled { cursor: default; opacity: var(--p-disabled-opacity); }


.pp-confirm { align-self: stretch; margin: 6px 0; padding: 10px 12px; border-radius: var(--p-radius-card);
    border: 1px solid var(--p-color-border, rgba(0,0,0,.15)); background: var(--p-surface-raised, rgba(0,0,0,.02)); }
.pp-confirm.done    { border-color: var(--p-color-success, #16a34a); }
.pp-confirm.refused { opacity: .65; }
.pp-confirm-title { font-size: 12px; font-weight: 600; color: var(--p-color-text, #1a1a1a); }
.pp-confirm-sub { font-size: 12px; color: var(--p-color-text-muted, #888); margin: 2px 0 7px; }
.pp-confirm-list { margin: 0 0 8px; padding-inline-start: 16px; font-size: 12px; color: var(--p-color-text-muted, #888); }
.pp-confirm-btns { display: flex; gap: 8px; justify-content: flex-end; }
.pp-confirm-btns button { border: 1px solid var(--p-color-border, rgba(0,0,0,.15)); border-radius: var(--p-radius);
    padding: 5px 12px; font-size: 12px; cursor: pointer; background: var(--p-surface-chassis, #fff); color: inherit; }
.pp-confirm-ok { background: var(--p-accent-solid) !important; border-color: transparent !important; color: var(--p-accent-solid-fg) !important; }
.pp-confirm-btns button:disabled { cursor: default; opacity: var(--p-disabled-opacity); }



.pp-showpage { align-self: stretch; display: flex; justify-content: center; margin: 4px 0 2px; }
.pp-showpage-btn { border: 1px solid var(--p-color-border, rgba(0,0,0,.15)); border-radius: 999px;
    padding: 5px 14px; font-size: 12px; cursor: pointer;
    background: var(--p-surface-chassis, #fff); color: var(--p-color-text-muted, #888); }





.pp-head button { flex: 0 0 auto; font-size: 18px; line-height: 1; }
.pp-head button:hover { background: var(--p-color-sidebar-hover-bg, var(--p-color-hover, rgba(0,0,0,.06)));
    color: var(--p-color-sidebar-active-fg, var(--p-color-primary)); }


.pp-head .pp-brand { display: flex; align-items: center; background: none; border: 0; padding: 0; font: inherit;
    color: inherit; cursor: pointer; }
.pp-head .pp-brand:hover { background: none; }











.pp-messages { background: var(--p-surface-sheet, #fff); flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 10px;

    scrollbar-width: thin; scrollbar-color: transparent transparent; }
#p-pilot:hover .pp-messages { scrollbar-color: color-mix(in srgb, var(--p-color-text-muted, #888) 40%, transparent) transparent; }
.pp-messages::-webkit-scrollbar { width: 10px; }
.pp-messages::-webkit-scrollbar-thumb { background: transparent; border: 3px solid transparent; border-radius: var(--p-radius); background-clip: content-box; transition: background-color var(--p-motion-calm); }
#p-pilot:hover .pp-messages::-webkit-scrollbar-thumb { background: color-mix(in srgb, var(--p-color-text-muted, #888) 40%, transparent); background-clip: content-box; }



.pp-msg { max-width: 88%; padding: 8px 11px; border-radius: var(--p-radius-card); font-size: 13px; line-height: 20px; white-space: pre-wrap; word-break: break-word; }
.pp-msg.user { align-self: flex-end; background: var(--p-color-accent, #6d5dfc); color: #fff; border-end-end-radius: calc(var(--p-radius-card) / 3); }
.pp-msg.assistant { align-self: flex-start; background: var(--p-color-hover, rgba(0,0,0,.05)); color: var(--p-color-text, #1a1a1a); border-end-start-radius: calc(var(--p-radius-card) / 3); }
.pp-note { align-self: center; font-size: 11px; color: var(--p-color-text-muted, #999); padding: 2px 8px; opacity: .75; }


.pp-note--click { cursor: pointer; border-radius: var(--p-radius-card); }
.pp-note--click:hover { opacity: 1; text-decoration: underline; }
.pp-note--click:focus-visible { outline: 2px solid var(--p-color-accent, #6d5dfc); outline-offset: 2px; opacity: 1; }
.pp-summary { max-height: 60vh; overflow: auto; font-size: 13px; line-height: 20px; }
.pp-step { align-self: flex-start; font-size: 12px; color: var(--p-color-text-muted, #888); display: flex; align-items: center; gap: 6px; padding: 1px 2px; }
.pp-step .pp-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--p-color-accent, #6d5dfc); animation: pp-pulse 1s infinite; }
@keyframes pp-pulse { 0%,100%{opacity:.3} 50%{opacity:1} }



.pp-toolbar { flex: 0 0 auto; background: var(--p-surface-sheet, #fff); height: 34px; display: flex; align-items: center; gap: 6px; padding: 0 10px;
    border-top: 1px solid var(--p-color-sidebar-border, rgba(0,0,0,.1)); }



.pp-note { flex: 1 1 auto; min-width: 0; text-align: end; font-size: 11px; white-space: nowrap;
    overflow: hidden; text-overflow: ellipsis; color: var(--p-color-text-muted); text-decoration: none;
    transition: color var(--p-motion-fast) ease; }

.pp-note:hover, .pp-note:focus-visible { color: var(--p-color-text); }
#p-pilot.busy .pp-note { display: none; }












#p-pilot { --p-surface-sheet: var(--p-assistant-sheet); }














.pp-foot { flex: 0 0 auto; background: var(--p-surface-chassis, #fff); border-top: 1px solid var(--p-color-sidebar-border, rgba(0,0,0,.1)); padding: 5px; }


#p-pilot:has(> .pp-bg) :is(.pp-head, .pp-tools, .pp-foot) {
    background: color-mix(in srgb, var(--p-surface-chassis, #fff) 50%, transparent);
    backdrop-filter: blur(10px) saturate(1.1); -webkit-backdrop-filter: blur(10px) saturate(1.1);
}






:root #p-pilot:has(> .pp-bg) :is(.pp-messages, .pp-toolbar) { background: color-mix(in srgb, var(--p-surface-sheet) 75%, transparent); }


:root:not([data-theme="half-dark"]) .pp-tools { background: var(--p-surface-frame); }
:root:not([data-theme="half-dark"]) #p-pilot:has(> .pp-bg) .pp-tools { background: color-mix(in srgb, var(--p-surface-frame) 50%, transparent); }




.pp-cfg { flex: 0 1 auto; min-width: 0; margin-inline-start: auto; text-align: start;
    font: inherit; font-size: 11px; font-weight: 400;
    padding: 3px 7px; border-radius: var(--p-radius); border: 1px solid transparent; background: transparent;
    color: var(--p-color-text-muted, #777); cursor: pointer; white-space: nowrap;
    overflow: hidden; text-overflow: ellipsis;
    transition: background var(--p-transition, var(--p-motion-calm) ease), border-color var(--p-transition, var(--p-motion-calm) ease),
                color var(--p-transition, var(--p-motion-calm) ease); }


.pp-cfg-model { font-weight: 500; color: var(--p-color-text, #1a1a1a); }
.pp-cfg-sep { opacity: .45; }

.pp-cfg:hover { background: var(--p-color-sidebar-hover-bg, rgba(0,0,0,.05));
    color: var(--p-color-text, #1a1a1a); }
.pp-cfg:focus-visible { outline: none; background: var(--p-surface-raised, #fff);
    border-color: color-mix(in srgb, var(--p-color-primary) 45%, transparent); }




.pp-inputrow { position: relative; display: flex; }





.pp-foot textarea { flex: 1; resize: none; max-height: 120px; min-height: 37px; padding: 8px 11px; padding-inline-end: 40px;


    border-radius: var(--p-radius);
    border: 1px solid var(--p-color-border, rgba(0,0,0,.15)); background: var(--p-surface-raised, #fff); color: var(--p-color-text, #1a1a1a);
    font: inherit; font-size: 13px; outline: none; }
.pp-foot textarea:focus { border-color: var(--p-color-accent, #6d5dfc); }
.pp-inputrow button { position: absolute; inset-inline-end: 5px; bottom: 5px; width: 28px; height: 28px; padding: 0;
    border-radius: var(--p-radius-card); border: none; cursor: pointer; align-items: center; justify-content: center; transition: opacity var(--p-motion-fast), background var(--p-motion-fast); }
.pp-send { background: var(--p-color-accent, #6d5dfc); color: #fff; display: inline-flex; }

.pp-send[disabled] { opacity: var(--p-disabled-opacity); cursor: default; }
.pp-stop { background: var(--p-color-hover, rgba(0,0,0,.08)); color: var(--p-color-text, #1a1a1a); display: none; }
#p-pilot.busy .pp-send { display: none; }
#p-pilot.busy .pp-stop { display: inline-flex; }


.pp-msg.p-markdown { white-space: normal; }
.pp-msg.p-markdown pre { white-space: pre; overflow-x: auto; }




.pp-status { flex: 0 1 auto; min-width: 0; display: none; align-items: center; gap: 7px; font-size: 11px;
    color: var(--p-color-text-muted, #888); white-space: nowrap; }
.pp-status > span:not(.pp-spinner) { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
#p-pilot.busy .pp-status { display: flex; }







.pp-status .pp-spinner {
    --p-mark-cell: 5px;
    margin: calc(var(--pitch) / 2);
    flex-shrink: 0;
}





#pp-backdrop { display: none; position: fixed; inset: 0; background: rgba(0,0,0,.4); z-index: calc(var(--p-z-shell) - 1); }
@media (max-width: 768px) {



    #p-pilot { position: fixed; top: 0; inset-inline-end: 0; height: 100vh; height: 100dvh; width: 100% !important;
        flex: none; transform: translateX(100%);
        transition: transform var(--p-transition, var(--p-motion-calm) ease), visibility 0s linear var(--p-motion-calm);
        border-inline-start: none; z-index: calc(var(--p-z-shell) + 3); }
    body.pp-open #p-pilot { transform: translateX(0); width: 100% !important; flex: none; box-shadow: none;
        transition: transform var(--p-transition, var(--p-motion-calm) ease), visibility 0s; }




    html[dir="rtl"] #p-pilot { transform: translateX(-100%); }
    html[dir="rtl"] body.pp-open #p-pilot { transform: translateX(0); box-shadow: none; }
    #pp-split { display: none !important; }



    #pp-backdrop { display: none !important; }
}






.p-code {
    position: relative;
    overflow: hidden;
    background: var(--p-surface-raised);




    direction: ltr;
}
.p-code .pc-scroll {
    position: absolute;
    inset: 0;
    overflow: auto;
}
.p-code .pc-area { position: relative; min-height: 100%; }

.p-code .pc-scroll[data-wrap="off"] .pc-area { width: max-content; min-width: 100%; }
.p-code .pc-lines,
.p-code .pc-input,
.p-code .pc-diff {


    font-family: var(--p-font-mono);
    font-size: var(--pc-fs, 13px);
    line-height: var(--pc-lh, 20px);
    font-variant-ligatures: none;
    letter-spacing: 0;
    tab-size: var(--pc-ts, 4);
    margin: 0;
    border: 0;
    padding: 0;
}
.p-code .pc-line {
    position: relative;
    white-space: pre;
    padding-inline-start: var(--pc-gw, 10px);
    padding-inline-end: 12px;
    color: var(--p-color-text);
}
.p-code .pc-scroll[data-wrap="on"] .pc-line { white-space: pre-wrap; overflow-wrap: break-word; }
.p-code .pc-ln {
    position: absolute;
    inset-inline-start: 0;
    top: 0;
    width: calc(var(--pc-gw, 10px) - 14px);
    text-align: end;
    color: var(--p-color-text-muted);
    user-select: none;
}
.p-code .pc-input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding-inline-start: var(--pc-gw, 10px);
    padding-inline-end: 12px;
    resize: none;
    overflow: hidden;
    background: transparent;
    color: transparent;
    caret-color: var(--p-color-text);
    outline: none;
    white-space: pre;
}
.p-code .pc-scroll[data-wrap="on"] .pc-input { white-space: pre-wrap; overflow-wrap: break-word; }
.p-code .pc-input::selection {
    background: color-mix(in srgb, var(--p-color-primary) 28%, transparent);
    color: transparent;
}
.p-code .pc-line--act { background: color-mix(in srgb, var(--p-color-text) 5%, transparent); }
.p-code--ro .pc-line--act { background: none; }














.p-code, .p-markdown {
    --pc-syn-keyword:  #0000ff;
    --pc-syn-function: #ff00ff;
    --pc-syn-string:   #ff0000;
    --pc-syn-comment:  #008000;
    --pc-syn-tag:      #800000;
    --pc-syn-attr:     #e50000;
    --pc-syn-control:  #8f08c4;
    --pc-syn-type:     #2b91af;
    --pc-syn-cstring:  #a31515;
}
:root[data-theme="dark"] :is(.p-code, .p-markdown),
:root[data-theme="half-dark"] :is(.p-sidebar, .p-desktop-topbar, .p-desktop-statusbar, .p-desktop, #p-pilot) .p-markdown {
    --pc-syn-keyword:  #569cd6;
    --pc-syn-function: #da70d6;
    --pc-syn-string:   #ce9178;
    --pc-syn-comment:  #6a9955;
    --pc-syn-tag:      #569cd6;
    --pc-syn-attr:     #9cdcfe;
    --pc-syn-control:  #c586c0;
    --pc-syn-type:     #4ec9b0;
    --pc-syn-cstring:  #ce9178;
}
@media (prefers-color-scheme: dark) {
    :root[data-theme="auto"] :is(.p-code, .p-markdown) {
        --pc-syn-keyword:  #569cd6;
        --pc-syn-function: #da70d6;
        --pc-syn-string:   #ce9178;
        --pc-syn-comment:  #6a9955;
        --pc-syn-tag:      #569cd6;
        --pc-syn-attr:     #9cdcfe;
        --pc-syn-control:  #c586c0;
        --pc-syn-type:     #4ec9b0;
        --pc-syn-cstring:  #ce9178;
    }
}
.p-code .pc-k  { color: var(--pc-syn-keyword); }
.p-code .pc-f  { color: var(--pc-syn-function); }
.p-code .pc-s  { color: var(--pc-syn-string); }
.p-code .pc-c  { color: var(--pc-syn-comment); font-style: italic; }
.p-code .pc-t  { color: var(--pc-syn-tag); }
.p-code .pc-a  { color: var(--pc-syn-attr); }
.p-code .pc-ck { color: var(--pc-syn-control); }
.p-code .pc-ty { color: var(--pc-syn-type); }
.p-code .pc-cs { color: var(--pc-syn-cstring); }



.p-code .pc-sql .pc-k { color: color-mix(in srgb, var(--pc-syn-keyword)  28%, var(--pc-syn-cstring)); }
.p-code .pc-sql .pc-f { color: color-mix(in srgb, var(--pc-syn-function) 28%, var(--pc-syn-cstring)); }
.p-code .pc-sql .pc-s { color: color-mix(in srgb, var(--pc-syn-string)   28%, var(--pc-syn-cstring)); }
.p-code .pc-sql .pc-c { color: color-mix(in srgb, var(--pc-syn-comment)  28%, var(--pc-syn-cstring)); }


.p-code .pc-line--added::before,
.p-code .pc-line--modified::before {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: var(--p-color-success);
}
.p-code .pc-line--modified::before { background: var(--p-color-warn); }

.p-code .pc-line--del-above::before {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    top: -1px;
    width: 9px;
    height: 2px;
    background: var(--p-color-danger);
}


.p-code--diff .pc-diff {
    display: grid;
    grid-template-columns: 1fr 1fr;


    align-content: start;
    min-height: 100%;
}
.p-code--diff .pc-dcell { min-width: 0; }
.p-code--diff .pc-dcell:nth-child(odd) { border-inline-end: 1px solid var(--p-color-border); }
.p-code--diff .pc-dcell--del { background: color-mix(in srgb, var(--p-color-danger) 10%, transparent); }
.p-code--diff .pc-dcell--add { background: color-mix(in srgb, var(--p-color-success) 10%, transparent); }
.p-code--diff .pc-dcell--spacer {
    background: repeating-linear-gradient(-45deg,
        transparent 0 6px,
        color-mix(in srgb, var(--p-color-text-muted) 8%, transparent) 6px 12px);
}





















@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        transition-duration: 0.01ms !important;
        animation-delay: 0ms !important;
        scroll-behavior: auto !important;
    }


    #p-nav-progress::before,
    .p-toolbar-toolbar-btn.is-busy svg,
    .p-toolbar-reload-btn.is-busy svg,
    .p-progress--indeterminate .p-progress-fill,
    .p-progress--active .p-progress-fill::after,
    .p-pull--running svg {
        animation-name: p-reduced-pulse !important;
        animation-duration: 1.4s !important;
        animation-timing-function: ease-in-out !important;
    }
}



@keyframes p-reduced-pulse {
    0%, 100% { opacity: 1;   }
    50%      { opacity: 0.4; }
}






.p-table-host--list > .p-groupbar,
.p-table-host--list > .p-table-wrap > .p-groupbar,
.p-table-host--list .p-table-original-side > .p-groupbar,
.p-table-host--list > .p-table-viewport,
.p-table-host--list > .p-table-wrap > .p-table-viewport,
.p-table-host--list .p-table-original-side > .p-table-viewport { display: none !important; }

.p-table-list { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; min-width: 0; }
.p-table-list[hidden] { display: none; }


.p-table-dock { height: 100%; }



.p-table-list-body.p-table-list-body--chart { display: flex; flex-direction: column; overflow: hidden; }

.p-table-list-body.p-table-list-body--preview { display: flex; flex-direction: column; overflow: hidden; }


.p-preview { flex: 1 1 auto; height: 100%; min-height: 0; display: flex; flex-direction: column; overflow: hidden; }
.p-preview-frame { flex: 1 1 auto; width: 100%; min-height: 0; border: 0; display: block; background: var(--p-surface-raised); }
.p-preview-image { flex: 1 1 auto; width: 100%; min-height: 0; object-fit: contain; }
.p-preview-other { margin: auto; display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 24px; color: var(--p-color-text-muted); text-align: center; }
.p-preview-other-icon svg { width: 32px; height: 32px; }
.p-preview-note { font-size: 12px; }
.p-preview-empty { margin: auto; padding: 24px; text-align: center; color: var(--p-color-text-muted); font-size: 13px; }
.p-preview-markdown { flex: 1 1 auto; min-height: 0; overflow: auto; padding: 16px 20px; }
.p-preview-text {
    flex: 1 1 auto; min-height: 0; overflow: auto; margin: 0; padding: 12px 16px;
    white-space: pre-wrap; overflow-wrap: anywhere; font-family: var(--p-font-mono); font-size: 13px;
}
.p-preview-code { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; }


.p-preview-htmlbar {
    flex: 0 0 auto; display: flex; justify-content: flex-end; gap: 12px;
    padding: 4px 10px; font-size: 12px; border-bottom: 1px solid var(--p-color-border);
}
.p-preview-htmlbar:empty { display: none; }
.p-table-list-body--chart .p-table-chart-canvas { flex: 1 1 auto; min-height: 200px; min-width: 0; }

.p-table-list-body--chart .p-table-chart-canvas--z-dat { flex: 0 0 auto; min-height: 0; }
.p-table-list-body.p-table-list-body--chart:has(> .p-table-chart-canvas--z-dat) { overflow-y: auto; }

.p-table-list-body.p-table-list-body--ext { display: flex; flex-direction: column; overflow: hidden; }
.p-table-ext { flex: 1 1 auto; min-height: 0; min-width: 0; position: relative; overflow: auto; }





.p-table-list-body {
    flex: 1 1 auto; min-height: 0;
    overflow: auto;
    overflow-anchor: none;
    padding: 8px;
    -webkit-overflow-scrolling: touch;
}
.p-table-auto .p-table-list-body { flex: 0 1 auto; max-height: var(--p-table-auto-max); }
.p-table-list-window { display: flex; flex-direction: column; gap: 8px; }
.p-table-list-spacer { flex: none; }


.p-table-list-row { display: grid; grid-template-columns: repeat(var(--p-list-cols, 1), minmax(0, 1fr)); gap: 8px; }
.p-table-list-sticky { position: sticky; inset-block-start: 0; height: 0; overflow: visible; z-index: 2; }
.p-table-list-sticky[hidden] { display: none; }

.p-table-list-card {
    display: flex; align-items: flex-start; gap: 8px;
    padding: 10px 12px;
    background: var(--p-surface-raised);
    border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-card, 10px);
    cursor: pointer;
    outline: none;
    transition: background var(--p-motion-fast), border-color var(--p-motion-fast);
}


.p-table-list-card:hover { background: color-mix(in srgb, var(--p-color-text) 6%, var(--p-surface-raised)); }
.p-table-list-card:focus-visible { border-color: var(--p-color-primary); box-shadow: 0 0 0 2px color-mix(in srgb, var(--p-color-primary) 30%, transparent); }
.p-table-list-card--selected {
    background: color-mix(in srgb, var(--p-color-primary) 8%, var(--p-surface-raised));
    border-color: color-mix(in srgb, var(--p-color-primary) 40%, var(--p-color-border));
}


.p-table-list-card--current {
    border-inline-start: 3px solid var(--p-color-primary);
    padding-inline-start: 10px;
}
.p-table-list-card-content { flex: 1 1 auto; min-width: 0; }


.p-table-list-branch {
    flex: 0 0 auto; width: 22px; height: 22px;
    display: inline-flex; align-items: center; justify-content: center;
    padding: 0; border: 0; background: transparent; border-radius: var(--p-radius-chip);
    color: var(--p-color-text-muted); cursor: pointer;
    transition: background var(--p-motion-fast), color var(--p-motion-fast);
}

button.p-table-list-branch:hover { background: var(--p-accent-ghost-hover); color: var(--p-color-text); }
button.p-table-list-branch:focus-visible { outline: none; box-shadow: 0 0 0 2px color-mix(in srgb, var(--p-color-primary) 30%, transparent); color: var(--p-color-text); }
.p-table-list-branch svg { width: 16px; height: 16px; transform: rotate(-90deg); transition: transform var(--p-motion-fast); }
html[dir="rtl"] .p-table-list-branch svg { transform: rotate(90deg); }
.p-table-list-branch--open svg, html[dir="rtl"] .p-table-list-branch--open svg { transform: none; }
.p-table-list-branch--leaf { visibility: hidden; }


.p-table-list-row--tree { position: relative; margin-inline-start: calc(var(--p-list-depth, 0) * var(--p-list-indent, 20px)); }
.p-table-list-treeline {
    position: absolute; inset-block-start: -8px; inset-inline-start: calc(-1 * var(--p-list-depth, 0) * var(--p-list-indent, 20px));
    height: calc(100% + 8px); overflow: visible; pointer-events: none;
    fill: none; stroke: var(--p-color-border); stroke-width: 1;
}
html[dir="rtl"] .p-table-list-treeline { transform: scaleX(-1); }













.p-table-list-body--tree { gap: 0; user-select: none; }
.p-table-list-body--tree .p-table-list-window { gap: 0; }


.p-table-list-body--tree .p-table-list-row { margin-block: 0; }
.p-table-list-body--tree .p-table-list-card {
    position: relative;
    align-items: center;
    gap: var(--p-tree-gap, 6px);



    padding-block: var(--p-tree-row-pad-block, 3px);




    padding-inline: calc(var(--p-tree-row-pad-start, 5px) + var(--p-list-depth, 0) * var(--p-tree-indent-inner, 0px)) var(--p-tree-row-pad-end, 8px);
    min-height: var(--p-tree-row-min-h, 28px);
    color: var(--p-tree-fg, inherit);
    background: transparent;

    border: var(--p-tree-row-border, 1px) solid transparent;
    border-radius: var(--p-radius-chip, 6px);
}
.p-table-list-body--tree .p-table-list-card:hover {
    background: var(--p-tree-hover-bg, color-mix(in srgb, var(--p-color-primary) 8%, transparent));
    color: var(--p-tree-hover-fg, var(--p-tree-fg, inherit));
}
.p-table-list-body--tree .p-table-list-card--selected,
.p-table-list-body--tree .p-table-list-card--selected:hover {
    background: var(--p-tree-selected-bg, color-mix(in srgb, var(--p-color-primary) 16%, transparent));
    color: var(--p-tree-selected-fg, var(--p-tree-fg, inherit));
    border-color: transparent;
}
.p-table-list-body--tree .p-table-list-card--selected .p-table-list-text--title { font-weight: 500; }

.p-table-list-body--tree .p-table-list-card--current { border-inline-start: var(--p-tree-row-border, 1px) solid transparent; }
.p-table-list-body--tree .p-table-list-card--current::before {
    content: ""; position: absolute; inset-inline-start: 0; inset-block: 3px; width: 2px;
    border-radius: 1px; background: var(--p-color-primary); pointer-events: none;
}


.p-table-list-body--tree .p-table-list-card--selected::after {
    content: ""; position: absolute; inset-inline-start: 0; inset-block: 3px;
    width: var(--p-tree-selected-bar, 0); border-radius: 1px; background: var(--p-color-primary); pointer-events: none;
}


.p-table-list-body--tree .p-table-list-card--root-line::before {
    content: ""; position: absolute; inset-inline: 0; inset-block-start: calc(-1 * var(--p-tree-row-border, 1px)); height: 1px;
    background: var(--p-tree-root-line, color-mix(in srgb, var(--p-color-text) 14%, transparent)); pointer-events: none;
}


.p-table-list-body--tree .p-table-list-branch {
    width: var(--p-tree-branch-w, 16px); height: var(--p-tree-branch-h, 16px); border-radius: var(--p-radius-chip);
    margin-inline-end: var(--p-tree-branch-after, 3px);
    opacity: var(--p-tree-branch-opacity, 1); color: var(--p-tree-branch-fg, var(--p-color-text-muted));
}
.p-table-list-body--tree button.p-table-list-branch:hover {
    background: var(--p-tree-branch-hover-bg, var(--p-accent-ghost-hover)); color: var(--p-tree-branch-hover-fg, var(--p-color-text)); opacity: 1;
}
.p-table-list-body--tree .p-table-list-branch svg { width: var(--p-tree-branch-icon, 14px); height: var(--p-tree-branch-icon, 14px); }







.p-table-list-body--tree button.p-table-list-branch::before {
    content: ""; position: absolute;
    inset-block: calc(-1 * var(--p-tree-row-border, 1px));
    inset-inline-start: calc(var(--p-list-depth, 0) * var(--p-tree-indent-inner, 0px) + var(--p-tree-row-pad-start, 5px)
                             - (var(--p-tree-row-min-h, 28px) - var(--p-tree-branch-w, 16px)) / 2);
    width: var(--p-tree-row-min-h, 28px);
    border-radius: var(--p-radius-chip);
    transition: background var(--p-motion-fast);
}
.p-table-list-body--tree button.p-table-list-branch:hover { background: transparent; }
.p-table-list-body--tree button.p-table-list-branch:hover::before { background: var(--p-tree-branch-hover-bg, var(--p-accent-ghost-hover)); }

.p-table-list-body--tree .p-table-list-branch svg { position: relative; }


.p-table-list-body--tree .p-table-list-lead {
    width: var(--p-tree-icon, 16px); height: var(--p-tree-icon, 16px); min-height: 0;
    color: var(--p-tree-icon-fg, var(--p-color-text-muted));
}
.p-table-list-body--tree .p-table-list-lead svg { width: 100%; height: 100%; }
.p-table-list-body--tree .p-table-list-card--selected .p-table-list-lead { color: var(--p-tree-icon-selected-fg, inherit); }


.p-table-list-body--tree .p-table-list-card--drop-before { box-shadow: inset 0  2px 0 0 var(--p-color-primary); }
.p-table-list-body--tree .p-table-list-card--drop-after  { box-shadow: inset 0 -2px 0 0 var(--p-color-primary); }

.p-table-list-body--tree .p-table-list-card--drop-into {
    box-shadow: inset 0 0 0 2px var(--p-color-primary);
    background: color-mix(in srgb, var(--p-color-primary) 10%, transparent);
}


.p-table-list-body--tree .p-table-list-drag {
    background: var(--p-surface-raised);
    border-color: var(--p-color-border);
    opacity: .75;
    box-shadow: 0 2px 8px color-mix(in srgb, var(--p-color-text) 18%, transparent);
}

.p-table-list-body--tree .p-table-list-main { min-width: 0; }
.p-table-list-body--tree .p-table-list-line { align-items: center; gap: var(--p-tree-lead-gap, 6px); }

.p-table-list-body--tree .p-table-list-text--title {
    display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    font-weight: 400; font-size: var(--p-tree-font-size, 13px); line-height: 18px; color: inherit;
}

.p-table-list-body--tree .p-table-list-trail { flex: 0 0 auto; display: inline-flex; align-items: center; }
.p-table-list-body--tree .p-table-list-trail .p-badge { font-size: 10px; padding: 1px 6px; line-height: 1.4; }

.p-table-list-body--tree .p-table-list-text--value {
    margin-inline-start: auto; color: var(--p-color-text-muted); font-variant-numeric: tabular-nums;
}




.p-table-list-body--timeline { --p-tl-lane: 32px; --p-tl-head: 28px; --p-tl-souhrn: 14px; display: flex; flex-direction: column; overflow: hidden; padding: 0; }
.p-table-list-tl-bar { flex: none; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 6px 8px; }
.p-table-list-tl-group { display: inline-flex; gap: 2px; }
.p-table-list-tl-btn {
    font: inherit; font-size: 12px; line-height: 20px; padding: 1px 8px; cursor: pointer;
    background: var(--p-surface-raised); color: var(--p-color-text);
    border: 1px solid var(--p-color-border); border-radius: var(--p-radius-chip);
}
.p-table-list-tl-btn:hover { background: color-mix(in srgb, var(--p-color-primary) 10%, var(--p-surface-raised)); }
.p-table-list-tl-btn[aria-pressed="true"] { background: color-mix(in srgb, var(--p-color-primary) 16%, var(--p-surface-raised));
    border-color: color-mix(in srgb, var(--p-color-primary) 45%, var(--p-color-border)); }
.p-table-list-tl-picks { margin-inline-start: auto; gap: 6px; align-items: center; }

.p-table-list-tl-check { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--p-color-text); cursor: pointer; margin-inline-end: 4px; }
.p-table-list-tl-check > input { margin: 0; }
.p-table-list-tl-axis { flex: none; direction: ltr; overflow: hidden; border-block-end: 1px solid var(--p-color-border); }
.p-table-list-tl-axis > svg { display: block; }

.p-table-list-tl-scroll { flex: 1 1 auto; min-height: 0; direction: ltr; overflow-x: hidden; overflow-y: auto; touch-action: none; user-select: none; }
.p-table-list-tl-axis, .p-table-list-tl-bar { user-select: none; }


.p-table-list-tl-canvas { position: relative; overflow: clip; min-height: 100%; }
.p-table-list-tl-backdrop, .p-table-list-tl-stage { position: absolute; inset-block-start: 0; }
.p-table-list-tl-backdrop { inset: 0; pointer-events: none; }
.p-table-list-tl-day { position: absolute; inset-block: 0; background: color-mix(in srgb, var(--p-color-text) 5%, transparent); }
.p-table-list-tl-day--holiday { background: color-mix(in srgb, var(--p-color-danger) 7%, transparent); }
.p-table-list-tl-today { position: absolute; inset-block: 0; width: 0; border-inline-start: 1.5px solid var(--p-color-danger); }

.p-table-list-tl-heads { position: absolute; inset-inline: 0; inset-block-start: 0; }
.p-table-list-section-head.p-table-list-tl-head {
    position: absolute; inset-inline: 0; height: var(--p-tl-head); box-sizing: border-box; padding-block: 0; padding-inline: 8px;
    flex-wrap: nowrap; overflow: hidden; white-space: nowrap; border-block: 1px solid var(--p-color-border);
}
.p-table-list-body--spacebar .p-table-list-tl-scroll { cursor: move; }
.p-table-list-body--panning .p-table-list-tl-scroll { cursor: move; user-select: none; }
.p-table-list-card.p-table-list-card--tl { position: absolute; }
.p-table-list-card--tl .p-table-list-card-content { unicode-bidi: plaintext; }


.p-table-list-card.p-table-list-card--bar {
    --p-mark: var(--p-mark-neutral);
    height: calc(var(--p-tl-lane) - 6px); min-height: 0; box-sizing: border-box; gap: 0;
    padding-block: 0; padding-inline-end: 6px; padding-inline-start: calc(6px + var(--p-tl-shift, 0px));
    align-items: center; overflow: visible; border-radius: calc(var(--p-radius-base) * 0.5); box-shadow: none;
    border: 1.5px solid var(--p-mark); background: color-mix(in srgb, var(--p-mark) 16%, var(--p-surface-raised));
}
.p-table-list-card--bar:hover { background: color-mix(in srgb, var(--p-mark) 28%, var(--p-surface-raised)); z-index: 2; }

.p-table-list-card--bar.p-table-list-card--current,
.p-table-list-card--bar.p-table-list-card--selected,
.p-table-list-card--bar:focus-visible { border-width: 3px; z-index: 2; }
.p-table-list-card--bar > .p-table-list-card-content {
    flex: none; width: max-content; max-width: calc(var(--p-tl-room, 100%) - 12px); overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
}

.p-table-list-card--tl .p-table-list-line { align-items: center; gap: 6px; flex-wrap: nowrap; }
.p-table-list-card--tl .p-table-list-main { display: flex; align-items: baseline; gap: 6px; min-width: 0; white-space: nowrap; }
.p-table-list-card--tl .p-table-list-text--title { flex: none; font-size: 13px; }
.p-table-list-card--tl .p-table-list-sub, .p-table-list-card--tl .p-table-list-chips { margin: 0; flex-wrap: nowrap; }
.p-table-list-card--tl .p-table-list-lead svg { width: 16px; height: 16px; }
.p-table-list-tl-icon { flex: none; display: inline-flex; margin-inline-end: 4px; }
.p-table-list-tl-icon svg { width: 16px; height: 16px; }

.p-table-list-card--bar > .p-table-list-point-toggle { position: static; flex: none; margin-inline-start: 4px; }
.p-table-list-card--bar > .p-table-list-point-card { inset-inline-start: var(--p-tl-shift, 0px); top: calc(100% + 4px); }
.p-table-list-card--bar.p-table-list-card--detail { z-index: 4; }
.p-table-list-card--bar.p-table-list-card--detail > .p-table-list-card-content { display: block; }
.p-table-list-card--bar.p-tr-success, .p-table-list-card--bar.p-tr-soft-success { --p-mark: var(--p-color-success); }
.p-table-list-card--bar.p-tr-warn, .p-table-list-card--bar.p-tr-soft-warn { --p-mark: var(--p-color-warn); }
.p-table-list-card--bar.p-tr-danger, .p-table-list-card--bar.p-tr-soft-danger { --p-mark: var(--p-color-danger); }
.p-table-list-card--bar.p-tr-info, .p-table-list-card--bar.p-tr-soft-info { --p-mark: var(--p-color-info); }
.p-table-list-card--bar.p-tr-muted { --p-mark: var(--p-color-text-muted); }
.p-table-list-card--tl.p-table-list-card--point > .p-table-list-card-content { max-width: var(--p-tl-room, 240px); overflow: hidden; text-overflow: ellipsis; }

.p-table-list-body--timeline { position: relative; }
.p-table-list-card--tl.p-table-list-card--movable { cursor: move; }
.p-table-list-card--tl.p-table-list-card--dragging { z-index: 5; box-shadow: 0 6px 18px color-mix(in srgb, var(--p-color-text) 22%, transparent); }

.p-table-list-tl-handle { position: absolute; z-index: 1; width: 8px; cursor: ew-resize; }
.p-table-list-card--bar > .p-table-list-tl-handle { inset-block: -1px; }
.p-table-list-card--bar > .p-table-list-tl-handle--start { inset-inline-start: -4px; }
.p-table-list-card--bar > .p-table-list-tl-handle--end { inset-inline-end: -4px; }
.p-table-list-card--point > .p-table-list-tl-handle--end { inset-inline-start: calc(var(--p-point) / 2); top: calc(var(--p-point) / -2); height: var(--p-point); }
.p-table-list-tl-handle::after {
    content: ''; position: absolute; inset-block: 4px; inset-inline-start: 3px; width: 2px; border-radius: 1px;
    background: var(--p-mark); opacity: 0;
}
.p-table-list-card--tl:is(:hover, .p-table-list-card--current, .p-table-list-card--resizing) > .p-table-list-tl-handle::after { opacity: .9; }


.p-table-list-card--bar > .p-table-list-tl-handle--start::after { inset-inline-start: 5px; }
.p-table-list-card--bar > .p-table-list-tl-handle--end::after { inset-inline-start: 1px; }
.p-table-list-card--point > .p-table-list-tl-handle--end::after { inset-inline-start: 2px; }

.p-table-list-section-head.p-table-list-tl-head--target {
    background: color-mix(in srgb, var(--p-color-primary) 16%, var(--p-table-surface, var(--p-surface-raised)));
    box-shadow: inset 0 -2px 0 var(--p-color-primary);
}

.p-table-list-tl-undated .p-table-list-card--movable { cursor: move; }
.p-table-list-tl-marker { position: absolute; inset-block: 0; width: 0; z-index: 6; pointer-events: none; border-inline-start: 2px dashed var(--p-color-primary); }

.p-table-list-tl-ghost {
    position: absolute; z-index: 4; height: calc(var(--p-tl-lane) - 6px); box-sizing: border-box; pointer-events: none;
    border: 1.5px dashed var(--p-mark-neutral); border-radius: calc(var(--p-radius-base) * 0.5);
    background: color-mix(in srgb, var(--p-mark-neutral) 10%, transparent);
}
.p-table-list-tl-tip {
    position: fixed; z-index: var(--p-z-tooltip); pointer-events: none; padding: 3px 8px; font-size: 12px; white-space: pre;
    background: var(--p-surface-raised); color: var(--p-color-text); border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-chip); box-shadow: 0 2px 6px color-mix(in srgb, var(--p-color-text) 14%, transparent);
}

.p-table-list-tl-tip.p-table-list-tl-tip--denied { color: var(--p-text-danger); border-color: var(--p-color-danger); white-space: pre-line; max-width: 280px; }
.p-table-list-card--tl.p-table-list-card--denied { --p-mark: var(--p-color-danger); }
.p-table-list-card--bar.p-table-list-card--denied { border-style: dashed; }
.p-table-list-card--point.p-table-list-card--denied > .p-table-list-point { border-style: dashed; }

.p-table-list-card--plane.p-table-list-card--denied:not(.p-table-list-card--point) { border-style: dashed; border-color: var(--p-color-danger); }
.p-table-list-tl-ghost.p-table-list-tl-ghost--denied { border-color: var(--p-color-danger); background: color-mix(in srgb, var(--p-color-danger) 10%, transparent); }
.p-table-list-tl-marker.p-table-list-tl-marker--denied { border-color: var(--p-color-danger); }

.p-table-list-tl-canvas--anim :is(.p-table-list-card--tl, .p-table-list-tl-head) { transition: top var(--p-motion-calm) ease-out; }

.p-table-list-card--occupancy { --p-point: 20px; }


.p-table-list-card.p-table-list-card--bar.p-table-list-card--ended { overflow: clip; }
.p-table-list-card--ended > :is(.p-table-list-card-content, .p-table-list-tl-icon) { visibility: hidden; }
.p-table-list-card.p-table-list-card--bar.p-table-list-card--occupancy { height: var(--p-tl-souhrn); padding: 0; background: color-mix(in srgb, var(--p-mark) 30%, transparent); }
.p-table-list-card--occupancy > :not(.p-table-list-point) { display: none; }

.p-table-list-body--quiet .p-table-list-card--tl.p-table-list-card--point > .p-table-list-card-content { display: none; max-width: 240px; }
.p-table-list-body--quiet .p-table-list-card--tl.p-table-list-card--point:is(:hover, :focus-visible, .p-table-list-card--current) { z-index: 4; }
.p-table-list-body--quiet .p-table-list-card--tl.p-table-list-card--point:is(:hover, :focus-visible, .p-table-list-card--current) > .p-table-list-card-content { display: block; }

.p-table-list-tl-empty {
    position: absolute; inset-block-start: 24px; inset-inline: 0; margin-inline: auto; width: max-content; max-width: calc(100% - 32px);
    z-index: 3; padding: 10px 16px; display: flex; flex-direction: column; align-items: center; gap: 8px;
    background: var(--p-surface-raised); border: 1px solid var(--p-color-border); border-radius: var(--p-radius-base);
    box-shadow: 0 2px 6px color-mix(in srgb, var(--p-color-text) 12%, transparent);
    color: var(--p-color-text-muted); pointer-events: none;
}
.p-table-list-tl-empty > button { pointer-events: auto; }

.p-table-list-tl-undated { flex: none; max-height: 33%; overflow-y: auto; padding: 8px; border-block-start: 1px solid var(--p-color-border); user-select: none; }
.p-table-list-tl-undated[hidden] { display: none; }

.p-table-list-tl-undated.p-table-list-tl-undated--zone { outline: 1.5px dashed var(--p-color-border); outline-offset: -4px; }
.p-table-list-tl-undated--zone::after { content: attr(data-zone); display: block; padding-block: 4px; font-size: 12px; color: var(--p-color-text-muted); }
.p-table-list-tl-undated.p-table-list-tl-undated--target {
    outline-color: var(--p-color-primary); background: color-mix(in srgb, var(--p-color-primary) 8%, transparent);
}
.p-table-list-tl-undated-cards { display: flex; flex-wrap: wrap; gap: 6px; }
.p-table-list-tl-undated-cards > .p-table-list-card { padding: 4px 8px; }






.p-table-list-body--plane { position: relative; overflow: hidden; padding: 0; touch-action: none; user-select: none; cursor: default; }





.p-table-list-body--plane,
.p-table-auto .p-table-list-body--plane { flex: 1 1 320px; }
.p-table-list-body--plane.p-table-list-body--panning { cursor: move; }

.p-table-list-stage { position: absolute; transform-origin: 0 0; transform-style: preserve-3d; }



.p-table-list-body--tilt { perspective: 1600px; perspective-origin: 50% 50%; }
.p-table-list-relief3d { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }



.p-table-list-body.p-table-list-body--space,
.p-table-auto .p-table-list-body.p-table-list-body--space { position: relative; overflow: hidden; padding: 0; flex: 1 1 320px; touch-action: none; user-select: none; }
.p-table-list-space3d { position: absolute; inset: 0; width: 100%; height: 100%; display: block; outline: none; }
.p-table-list-space3d.p-table-list-space3d--pan { cursor: move; }
.p-table-list-space3d.p-table-list-space3d--walk { cursor: grab; }
.p-table-list-space3d.p-table-list-space3d--record { cursor: pointer; }

.p-table-list-space3d.p-table-list-space3d--grab { cursor: grab; }
.p-table-list-space3d.p-table-list-space3d--grabbing { cursor: grabbing; }

.p-table-list-space3d-label {
    position: absolute; left: 0; top: 0; z-index: 2; pointer-events: none; white-space: nowrap;
    padding: 2px 6px; border-radius: var(--p-radius-card); font-size: 12px; color: var(--p-color-text);
    background: var(--p-surface-raised); box-shadow: var(--p-shadow-raised); border: 1px solid var(--p-color-primary);
}
.p-table-list-space3d-label.p-table-list-space3d-label--hover { border-color: transparent; }

.p-table-list-space3d-hint {
    position: absolute; inset-inline: 16px; bottom: 16px; width: fit-content; margin-inline: auto; z-index: 3;
    pointer-events: none; padding: 6px 10px; border-radius: var(--p-radius-card); font-size: 13px; text-align: center;
    color: var(--p-color-text); background: var(--p-surface-raised); box-shadow: var(--p-shadow-raised);
}


.p-table-list-space3d-label--current { pointer-events: auto; display: flex; align-items: center; gap: 6px; }
.p-table-list-space3d-label[hidden] { display: none; }
.p-table-list-space3d-label--current > .p-table-list-point-toggle { position: relative; inset: auto; flex: none; }
.p-table-list-space3d-label--current > .p-table-list-point-card {
    inset-inline-start: 0; top: 0; transform: translate(var(--p-space-card-x, 0px), var(--p-space-card-y, 0px));
    max-height: var(--p-space-card-max, none); overflow: auto; white-space: normal; font-size: 13px; line-height: normal; }
.p-table-list-card--plane { position: absolute; cursor: default; box-shadow: 0 1px 3px color-mix(in srgb, var(--p-color-text) 10%, transparent); }
.p-table-list-card--plane.p-table-list-card--movable { cursor: move; }
.p-table-list-card--sized { overflow: hidden; }
.p-table-list-body--plane.p-table-list-body--spacebar { cursor: move; }


.p-table-list-marquee { position: absolute; z-index: 5; pointer-events: none; border: 1px solid var(--p-color-primary);
    background: color-mix(in srgb, var(--p-color-primary) 12%, transparent); }

.p-table-list-guides { position: absolute; inset: 0; pointer-events: none; z-index: 4; overflow: hidden; }
.p-table-list-guide { position: absolute; display: block; }
.p-table-list-guide--v { top: 0; bottom: 0; width: 0; border-inline-start: 1px dotted var(--p-color-primary); }
.p-table-list-guide--h { left: 0; right: 0;  height: 0; border-top: 1px dotted var(--p-color-primary); }
.p-table-list-resize { position: absolute; inset-inline-end: 0; bottom: 0; width: 16px; height: 16px; cursor: nwse-resize; z-index: 3;
    opacity: .55; border-end-end-radius: calc(var(--p-radius, 6px) - 1px);
    background: linear-gradient(to bottom right, transparent 0 50%, color-mix(in srgb, var(--p-color-text-muted) 55%, transparent) 50% 100%); }
.p-table-list-card:hover .p-table-list-resize, .p-table-list-resize:hover { opacity: 1; }
html[dir="rtl"] .p-table-list-resize { cursor: nesw-resize;
    background: linear-gradient(to bottom left, transparent 0 50%, color-mix(in srgb, var(--p-color-text-muted) 55%, transparent) 50% 100%); }

.p-table-list-card--plane.p-table-list-card--dragging { cursor: move; box-shadow: 0 8px 24px color-mix(in srgb, var(--p-color-text) 22%, transparent); z-index: 2; }
.p-table-list-links { position: absolute; pointer-events: none; overflow: visible; fill: none; stroke: var(--p-color-border); stroke-width: 1.5; }



.p-table-list-underlay { position: absolute; pointer-events: none; user-select: none; overflow: hidden; }



.p-table-list-body--tilt .p-table-list-underlay { overflow: visible; transform-style: preserve-3d; }


.p-table-list-pickers { position: absolute; inset-inline-start: 8px; top: 8px; z-index: 3; display: flex; flex-wrap: wrap; gap: 4px; }
.p-table-list-picker {
    padding: 3px 8px; border: 0; border-radius: var(--p-radius-card);
    background: var(--p-surface-raised); box-shadow: var(--p-shadow-raised); color: var(--p-color-text); font: inherit; font-size: 12px;
}
button.p-table-list-picker { cursor: pointer; }
button.p-table-list-picker::after { content: '▾'; margin-inline-start: 4px; color: var(--p-color-text-muted); }
button.p-table-list-picker:hover { background: color-mix(in srgb, var(--p-color-primary) 10%, var(--p-surface-raised)); }

button.p-table-list-picker.p-table-list-picker--edit { background: color-mix(in srgb, var(--p-color-primary) 18%, var(--p-surface-raised)); }
button.p-table-list-picker.p-table-list-picker--edit::after { content: none; }
button.p-table-list-picker.p-table-list-picker--act::after { content: none; }

.p-table-list-picker.p-table-list-picker--check { display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
.p-table-list-picker--check > input { margin: 0; accent-color: var(--p-color-primary); cursor: inherit; }

.p-table-list-picker.p-table-list-picker--range { position: relative; display: inline-flex; align-items: center; gap: 6px; }
.p-table-list-picker--range > span,
.p-table-list-picker--range > button { min-width: 6.4em; font: inherit; color: inherit; font-variant-numeric: tabular-nums; text-align: start;
                                       background: none; border: 0; padding: 0; cursor: pointer; }
.p-table-list-picker--range > button::after { content: '▾'; margin-inline-start: 4px; color: var(--p-color-text-muted); }
.p-table-list-picker--range > input[type="range"] { width: 110px; margin: 0; accent-color: var(--p-color-primary); cursor: pointer; }

.p-table-list-picker-datum { position: absolute; inset-inline-start: 0; bottom: 0; width: 1px; height: 1px; opacity: 0; pointer-events: none; border: 0; padding: 0; }

.p-table-list-picker.p-table-list-picker--note { color: var(--p-color-text-muted); box-shadow: none; background: color-mix(in srgb, var(--p-surface-raised) 85%, transparent); }

.p-table-list-body--edit.p-table-list-body--plane::after,
.p-table-list-body--edit .p-table-list-tl-canvas::after {
    content: ''; position: absolute; inset: 0; z-index: 6; pointer-events: none;
    box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--p-color-primary) 40%, transparent);
}
.p-table-list-underlay > img, .p-table-list-underlay > canvas { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; max-width: none; }



.p-table-list-card--mark { --p-mark: var(--p-mark-neutral); padding: 0; min-height: 0; overflow: visible; cursor: default;
    background: color-mix(in srgb, var(--p-mark) 18%, transparent); border: 1.5px solid var(--p-mark); border-radius: calc(var(--p-radius-base) * 0.25); box-shadow: none; }
.p-table-list-card--mark.p-tr-success, .p-table-list-card--mark.p-tr-soft-success { --p-mark: var(--p-color-success); }
.p-table-list-card--mark.p-tr-warn, .p-table-list-card--mark.p-tr-soft-warn { --p-mark: var(--p-color-warn); }
.p-table-list-card--mark.p-tr-danger, .p-table-list-card--mark.p-tr-soft-danger { --p-mark: var(--p-color-danger); }
.p-table-list-card--mark.p-tr-info, .p-table-list-card--mark.p-tr-soft-info { --p-mark: var(--p-color-info); }
.p-table-list-card--mark.p-tr-muted { --p-mark: var(--p-color-text-muted); }
.p-table-list-card--mark:hover, .p-table-list-card--mark:focus-visible { background: color-mix(in srgb, var(--p-mark) 32%, transparent); z-index: 3; }

.p-table-list-card--mark.p-table-list-card--current,
.p-table-list-card--mark.p-table-list-card--selected { border-width: 3px; }
.p-table-list-card--mark > .p-table-list-card-content, .p-table-list-card--mark > .p-table-list-card-chevron, .p-table-list-card--mark > .p-table-list-branch { display: none; }
.p-table-list-card--mark:hover > .p-table-list-card-content, .p-table-list-card--mark:focus-visible > .p-table-list-card-content {
    display: block; position: absolute; left: -2px; top: calc(100% + 4px); z-index: 6; width: max-content; min-width: 200px; max-width: 320px;
    padding: 8px 10px; background: var(--p-surface-raised); color: var(--p-color-text); border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius, 6px); box-shadow: 0 8px 24px color-mix(in srgb, var(--p-color-text) 22%, transparent);
    transform: rotate(calc(var(--p-plane-rz, 0) * -1deg)) scale(calc(1 / var(--p-plane-s, 1))); transform-origin: top left; cursor: default; }










.p-table-list-body { --p-point: 24px; --p-point-icon: 16px; }


.p-table-list-body { --p-mark-neutral: color-mix(in srgb, var(--p-color-text) 70%, var(--p-surface-raised)); }
html[data-nav-icons="l"] .p-table-list-body { --p-point: 32px; --p-point-icon: 22px; }
html[data-nav-icons="l"] .p-table-list-point svg { stroke-width: var(--p-icon-stroke-lg, 2); }
.p-table-list-card.p-table-list-card--point { --p-mark: var(--p-mark-neutral); width: 0; height: 0; min-height: 0; padding: 0; border: 0;
    background: none; box-shadow: none; overflow: visible; transform: rotate(calc(var(--p-plane-rz, 0) * -1deg)) scale(calc(1 / var(--p-plane-s, 1))); transform-origin: 0 0; }
.p-table-list-card--point:hover, .p-table-list-card--point:focus-visible, .p-table-list-card--point.p-table-list-card--selected { background: none; box-shadow: none; z-index: 3; }
.p-table-list-card--point.p-tr-success, .p-table-list-card--point.p-tr-soft-success { --p-mark: var(--p-color-success); }
.p-table-list-card--point.p-tr-warn, .p-table-list-card--point.p-tr-soft-warn { --p-mark: var(--p-color-warn); }
.p-table-list-card--point.p-tr-danger, .p-table-list-card--point.p-tr-soft-danger { --p-mark: var(--p-color-danger); }
.p-table-list-card--point.p-tr-info, .p-table-list-card--point.p-tr-soft-info { --p-mark: var(--p-color-info); }
.p-table-list-card--point.p-tr-muted { --p-mark: var(--p-color-text-muted); }
.p-table-list-point { position: absolute; inset-inline-start: calc(var(--p-point) / -2); top: calc(var(--p-point) / -2);
    width: var(--p-point); height: var(--p-point); box-sizing: border-box;
    display: flex; align-items: center; justify-content: center; border-radius: calc(var(--p-radius-base) * 0.375);
    background: var(--p-surface-raised); border: 1.5px solid var(--p-mark);
    box-shadow: 0 1px 3px color-mix(in srgb, var(--p-color-text) 25%, transparent); }
.p-table-list-point svg { width: var(--p-point-icon); height: var(--p-point-icon); flex: none; }
.p-table-list-point:empty { inset-inline-start: calc(var(--p-point) / -4); top: calc(var(--p-point) / -4); width: calc(var(--p-point) / 2);
    height: calc(var(--p-point) / 2); background: var(--p-mark); border-color: var(--p-surface-raised); }
.p-table-list-card--point.p-tr-muted .p-table-list-point { opacity: .6; }

.p-table-list-card--point:focus-visible > .p-table-list-point,
.p-table-list-card--point.p-table-list-card--current > .p-table-list-point,
.p-table-list-card--point.p-table-list-card--selected > .p-table-list-point { border-width: 3px; }

.p-table-list-card--point:is(:focus-visible, .p-table-list-card--current, .p-table-list-card--selected) > .p-table-list-point:empty {
    border-width: 2px; box-shadow: 0 0 0 2px var(--p-mark); }
.p-table-list-card--point > .p-table-list-card-content {
    position: absolute; inset-inline-start: calc(var(--p-point) / 2 + 8px); top: 0; transform: translateY(-50%); flex: none; min-width: 0;
    width: max-content; max-width: 240px; padding: 1px 6px; border-radius: calc(var(--p-radius-base) * 0.5); line-height: 1.3; white-space: nowrap;
    background: color-mix(in srgb, var(--p-surface-raised) 88%, transparent); color: var(--p-color-text); }


.p-table-list-point-card {
    position: absolute; inset-inline-start: calc(var(--p-point) / 2 + 10px); top: calc(var(--p-point) / -2 - var(--p-point-card-dy, 0px)); z-index: 1;
    width: max-content; min-width: 220px; max-width: 320px; padding: 8px 10px; cursor: default;
    background: var(--p-surface-raised); color: var(--p-color-text); border: 1px solid var(--p-color-border);
    border-radius: var(--p-radius-card, 10px); box-shadow: 0 8px 24px color-mix(in srgb, var(--p-color-text) 22%, transparent); }
.p-table-list-card--flip > .p-table-list-point-card { inset-inline-start: auto; inset-inline-end: calc(var(--p-point) / 2 + 10px); }
.p-table-list-card--detail > .p-table-list-card-content { display: none; }


.p-table-list-point-toggle {
    position: absolute; inset-inline-start: calc(var(--p-point) / 6); top: calc(var(--p-point) / 6); z-index: 2; width: 16px; height: 16px; padding: 0; margin: 0;
    box-sizing: border-box; display: flex; align-items: center; justify-content: center; border-radius: 50%;
    border: 1px solid var(--p-color-border); background: var(--p-surface-raised); color: var(--p-color-text);
    box-shadow: var(--p-shadow-raised); cursor: pointer; }
.p-table-list-point-toggle:hover { background: color-mix(in srgb, var(--p-color-primary) 14%, var(--p-surface-raised)); }
.p-table-list-point-toggle svg { width: 10px; height: 10px; flex: none; }
html[dir="rtl"] .p-table-list-point-toggle svg { transform: scaleX(-1); }
.p-table-list-card--point.p-table-list-card--detail { z-index: 4; }
.p-table-list-card--point.p-table-list-card--quiet:not(:hover):not(:focus-visible):not(.p-table-list-card--selected):not(.p-table-list-card--current) > .p-table-list-card-content { visibility: hidden; }
.p-table-list-card--point > .p-table-list-card-chevron, .p-table-list-card--point > .p-table-list-branch,
.p-table-list-card--point > .p-table-list-resize { display: none; }



.p-table-list-card--piled { display: none; }
.p-table-list-card--pile > .p-table-list-point { box-shadow: 0 -3px 0 -1px var(--p-surface-raised), 0 -3px 0 0 var(--p-mark-neutral),
    0 -6px 0 -1px var(--p-surface-raised), 0 -6px 0 0 var(--p-mark-neutral), 0 1px 3px color-mix(in srgb, var(--p-color-text) 25%, transparent); }
.p-table-list-card--pile-sel > .p-table-list-point { border-width: 3px; }
.p-table-list-pile-count { position: absolute; inset-inline-start: calc(var(--p-point) / 2 - 8px); top: calc(var(--p-point) / -2 - 10px); z-index: 2;
    min-width: 16px; height: 16px; padding: 0 4px; box-sizing: border-box; display: flex; align-items: center; justify-content: center;
    border-radius: 8px; font-size: 10px; font-weight: 600; line-height: 1; pointer-events: none;
    background: var(--p-mark-neutral); color: var(--p-surface-raised); box-shadow: 0 0 0 1.5px var(--p-surface-raised); }
.p-table-list-pile-count[data-stav="danger"] { background: var(--p-fill-danger); color: var(--p-fill-fg-danger); }
.p-table-list-pile-count[data-stav="warn"] { background: var(--p-fill-warn); color: var(--p-fill-fg-warn); }





.p-table-list-card--point.p-table-list-card--fan { z-index: 5; }
.p-table-list-card--point.p-table-list-card--fan:is(:hover, :focus-visible, .p-table-list-card--detail) { z-index: 6; }
.p-table-list-body--fan .p-table-list-card--point:not(.p-table-list-card--fan) { opacity: .35; }
.p-table-list-card--fan > :is(.p-table-list-point, .p-table-list-card-content, .p-table-list-point-toggle, .p-table-list-point-card) {
    translate: var(--p-fan-x, 0px) var(--p-fan-y, 0px); }
.p-table-list-card--fan-flip > .p-table-list-card-content { inset-inline-start: auto; inset-inline-end: calc(var(--p-point) / 2 + 8px); }
.p-table-list-fan-base { position: absolute; width: 0; height: 0; z-index: 4; pointer-events: none;
    transform: rotate(calc(var(--p-plane-rz, 0) * -1deg)) scale(calc(1 / var(--p-plane-s, 1))); transform-origin: 0 0; }
.p-table-list-fan-base > svg { position: absolute; inset-inline-start: 0; top: 0; width: 1px; height: 1px; overflow: visible; }
.p-table-list-fan-disc { fill: color-mix(in srgb, color-mix(in srgb, var(--p-color-text) 7%, var(--p-surface-raised)) 92%, transparent);
    stroke: color-mix(in srgb, var(--p-color-text) 22%, var(--p-surface-raised)); }
.p-table-list-fan-base line { stroke: var(--p-mark-neutral); stroke-width: 1.5; }
.p-table-list-fan-hub { fill: var(--p-mark-neutral); stroke: var(--p-surface-raised); stroke-width: 2; }





.p-table-list-body--board { display: flex; flex-direction: row; align-items: stretch; gap: 0; overflow-x: auto; overflow-y: hidden; user-select: none; }

.p-table-list-body--board input, .p-table-list-body--board textarea { user-select: text; }

.p-table-list-board-bar { flex: none; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 6px 8px 0; user-select: none; }
.p-table-list-spacer--x { flex: none; height: 1px; }
.p-table-list-spacer--x[hidden] { display: none; }

.p-table-list-lane {
    flex: none; display: flex; flex-direction: column; min-height: 0;
    transition: box-shadow var(--p-motion-fast);
}
.p-table-list-lane + .p-table-list-lane { border-inline-start: 1px solid var(--p-color-border); }
.p-table-list-lane--drop { box-shadow: inset 0 0 0 2px var(--p-color-primary); border-radius: var(--p-radius); }
.p-table-list-lane-head { flex: none; padding: 8px 10px 6px; cursor: default; background: transparent; }
.p-table-list-lane-head .p-table-list-section-caret { display: none; }
.p-table-list-lane-body { flex: 1 1 auto; min-height: 0; overflow-y: auto; overflow-x: hidden; overflow-anchor: none; padding: 0 8px 8px; }
.p-table-list-card--dragging { opacity: .4; }
html.p-table-list-dragging, html.p-table-list-dragging * { user-select: none; cursor: move; }
.p-table-list-drag {
    position: fixed; z-index: var(--p-z-overlay); pointer-events: none; opacity: .95;
    box-shadow: 0 8px 24px color-mix(in srgb, var(--p-color-text) 20%, transparent);
}

.p-table-list-drag-count {
    position: absolute; inset-block-start: -8px; inset-inline-end: -8px;
    min-width: 20px; height: 20px; padding: 0 6px; border-radius: 10px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--p-accent-solid); color: var(--p-fill-fg);
    font-size: 12px; font-weight: 600; line-height: 1;
}
.p-table-list-card-chevron {
    flex: 0 0 auto; display: inline-flex; align-items: center;
    color: var(--p-color-text-muted); opacity: .55;
    transition: transform var(--p-motion-fast);
    margin-block-start: 2px;
}
.p-table-list-card-chevron svg { width: 18px; height: 18px; }

.p-table-list-card-chevron { cursor: pointer; transition: transform var(--p-motion-fast), opacity var(--p-motion-fast), color var(--p-motion-fast); }
.p-table-list-card-chevron:hover { opacity: 1; color: var(--p-color-text); }
.p-table-list-card--expanded > .p-table-list-card-chevron { transform: rotate(180deg); }

.p-table-list-line { display: flex; align-items: flex-start; gap: 10px; }
.p-table-list-lead { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 20px; }
.p-table-list-lead svg { width: 20px; height: 20px; }
.p-table-list-main { flex: 1 1 auto; min-width: 0; }
.p-table-list-stack { display: flex; flex-direction: column; }
.p-table-list-text--title {
    display: block; font-size: 14px; font-weight: 500; color: var(--p-color-text);
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.p-table-list-sub {
    display: flex; flex-wrap: wrap; gap: 2px 10px;
    margin-block-start: 2px;
    font-size: 12px; color: var(--p-color-text-muted);
}
.p-table-list-text--caption { font-size: 12px; color: var(--p-color-text-muted); }
.p-table-list-text--mono { font-family: var(--p-font-mono); }
.p-table-list-text--value {
    flex: 0 0 auto;
    font-size: 15px; font-weight: 600; color: var(--p-color-text);
    white-space: nowrap;
}
.p-table-list-cell--num { font-variant-numeric: tabular-nums; }
.p-table-list-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-block-start: 6px; }
.p-table-list-chip {
    display: inline-flex; align-items: center; gap: 4px;
    font-size: 11px; line-height: 18px;
    padding-inline: 8px;
    border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-color-text) 8%, transparent);
    color: var(--p-color-text-muted);
    white-space: nowrap;
}

.p-table-list-chip--bare { background: none; padding-inline: 0; }
.p-table-list-pairs {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 6px 14px;
    margin-block-start: 8px; padding-block-start: 8px;
    border-block-start: 1px dashed var(--p-color-border);
}
.p-table-list-pair { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.p-table-list-pair .p-table-list-cell { overflow: hidden; text-overflow: ellipsis; }


.p-table-list-label {
    font-size: 11px; text-transform: uppercase; letter-spacing: .2px;
    color: var(--p-color-text-muted);
}



:is(.p-table-list-cell, .p-table-list-chip):is([class*="p-text-"], [class*="p-cell-text-"]) { color: var(--p-text-pick); }
:is(.p-table-list-cell, .p-table-list-chip).p-cell-muted { color: var(--p-color-text-muted); }
:is(.p-table-list-cell, .p-table-list-chip):is(.p-strong, .p-cell-emphasis) { font-weight: 600; }
.p-table-list-cell:is(.p-cell-success, .p-cell-warn, .p-cell-danger, .p-cell-info, [class*="p-cell-soft-"], [class*="p-fill-"], [class*="p-soft-"]) {
    width: fit-content; max-width: 100%; box-sizing: border-box;
    padding-inline: 6px; border-radius: var(--p-radius-chip);
}
:is(.p-table-list-cell, .p-table-list-chip):is([class*="p-fill-"], .p-cell-success, .p-cell-warn, .p-cell-danger, .p-cell-info) { background: var(--p-fill-pick); color: var(--p-fill-fg-pick, var(--p-fill-fg)); }
:is(.p-table-list-cell, .p-table-list-chip):is([class*="p-soft-"], [class*="p-cell-soft-"]) { background: var(--p-soft-pick); }
.p-table-list-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-block-start: 10px; }


.p-table-list-control { display: flex; align-items: center; gap: 8px; min-height: 28px; margin-block-start: 6px; }
.p-table-list-control-label { flex: 0 0 auto; min-width: 4.5em; font-size: 12px; color: var(--p-color-text-muted); }
.p-table-list-control-range { flex: 1 1 80px; min-width: 80px; margin: 0; accent-color: var(--p-accent-solid); }
.p-table-list-control-value { flex: 0 0 auto; min-width: 3.5em; text-align: end; font-variant-numeric: tabular-nums; }
.p-table-list-control-values .p-seg-btn { width: auto; padding-inline: 10px; font-size: 12px; }
.p-table-list-action svg { width: 14px; height: 14px; margin-inline-end: 4px; vertical-align: -2px; }
.p-table-list-action--more svg { margin-inline-end: 0; }


.p-table-list-section-head {
    display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
    padding: 6px 4px;
    font-size: 12px; font-weight: 600; letter-spacing: .3px; text-transform: uppercase;
    color: var(--p-color-text-muted);
    background: var(--p-table-surface, var(--p-surface-raised));
    cursor: pointer; user-select: none;
}
.p-table-list-section-head--float { box-shadow: 0 2px 6px color-mix(in srgb, var(--p-color-text) 12%, transparent); }
.p-table-list-section-caret { display: inline-flex; transition: transform var(--p-motion-fast); }
.p-table-list-section-caret svg { width: 16px; height: 16px; }
.p-table-list-section-head--collapsed .p-table-list-section-caret { transform: rotate(-90deg); }
.p-table-list-section-title { text-transform: none; font-size: 13px; color: var(--p-color-text); }
.p-table-list-section-count {
    font-size: 11px; line-height: 18px; padding-inline: 7px; border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-color-text) 8%, transparent);
    font-variant-numeric: tabular-nums;
}
.p-table-list-section-agg { font-weight: 400; text-transform: none; font-size: 12px; display: inline-flex; gap: 4px; align-items: baseline; }

.p-table-list-empty { padding: 24px; text-align: center; color: var(--p-color-text-muted); font-size: 13px; }























:is(.p-ent-tree, .p-nav-tree) {
    --p-tree-row-pad-block: 5px; --p-tree-row-pad-start: 2px; --p-tree-row-pad-end: 12px; --p-tree-branch-after: 0px;
    --p-tree-row-min-h: 0px; --p-tree-row-border: 0px;
    --p-tree-gap: 0px; --p-tree-lead-gap: 8px; --p-tree-indent-inner: 12px;
    --p-tree-branch-w: 24px; --p-tree-branch-h: 16px; --p-tree-branch-icon: 16px; --p-tree-branch-opacity: .6;
    --p-tree-branch-fg: currentColor; --p-tree-branch-hover-fg: currentColor; --p-tree-branch-hover-bg: transparent;
    --p-tree-icon: 16px; --p-tree-icon-fg: currentColor;
    --p-tree-fg: var(--p-color-sidebar-fg);
    --p-tree-hover-bg: var(--p-color-sidebar-hover-bg); --p-tree-hover-fg: var(--p-color-sidebar-active-fg);
    --p-tree-selected-bg: var(--p-accent-muted); --p-tree-selected-fg: var(--p-color-sidebar-active-fg); --p-tree-selected-bar: 2px;



    --p-tree-root-line: color-mix(in srgb, var(--p-color-sidebar-fg) 14%, transparent);
}

:is(.p-ent-tree, .p-nav-tree) .p-table-list-card--selected .p-table-list-text--title { font-weight: 400; }


.p-nav-tree { --p-tree-row-pad-block: 0px; --p-tree-row-pad-end: 0px; }


.p-nav-tree .p-nav-link { line-height: 18px; }


.p-nav-tree .p-nav-root-leaf { --p-tree-branch-w: 6px; }


:is(.p-ent-tree, .p-nav-tree) .p-table-list-empty { display:none; }


.p-sidebar :is(.p-ent-tree, .p-nav-tree).p-table-host { background: transparent; }




.p-ctx-bar { padding:0; background:transparent; }
.p-ctx-bar[hidden] { display:none; }







.p-ctx-row { display:flex; align-items:center; gap:4px; margin:2px 6px 0; }
.p-ctx-row[hidden] { display:none; }










.p-ctx-chip { width:100%; box-sizing:border-box; min-height:var(--p-ctx-row-h); display:flex; align-items:center; gap:6px; font:inherit; font-size:13px; text-align:start; padding:3px; padding-inline:0 10px; border-radius: var(--p-radius-chip); background:var(--p-accent-soft); color:var(--p-color-sidebar-active-fg); }
.p-ctx-chip-label { flex:1 1 auto; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }


.p-ctx-chip-label .p-nav-icon { vertical-align:middle; margin-inline-end:8px; }



.p-sidebar--tabs:not(.p-sidebar--entities) .p-ctx-bar,
.p-sidebar--entities .p-sidebar-nav { display:none; }
.p-sidebar--entities .p-ctx-bar { flex:1 1 auto; min-height:0; display:flex; flex-direction:column; }

.p-side-tabs { flex-shrink:0; }
.p-side-tabs[hidden] { display:none; }






#p-side-tabs { flex:0 0 auto; margin-inline-start:4px; }
#p-side-tabs .p-tabs { min-height:0; padding:0; gap:2px; background:transparent; }
#p-side-tabs .p-tab { min-width:30px; height:30px; box-sizing:border-box; padding:0 6px; gap:4px; justify-content:center; border:0; border-radius:var(--p-radius); color:var(--p-color-sidebar-fg); }
#p-side-tabs .p-tab-label { display:none; }
#p-side-tabs .p-tab-icon { width:16px; height:16px; }
#p-side-tabs .p-tab:not([aria-selected="true"]) { background:transparent; }
#p-side-tabs .p-tab:not([aria-selected="true"]) .p-tab-icon { opacity:0.6; }
#p-side-tabs .p-tab:not([aria-selected="true"]):hover { color:var(--p-color-sidebar-active-fg); background:var(--p-color-sidebar-hover-bg); }
#p-side-tabs .p-tab:not([aria-selected="true"]):hover .p-tab-icon { opacity:1; }
#p-side-tabs .p-tab[aria-selected="true"] { color:var(--p-color-sidebar-active-fg); background:transparent; box-shadow:none; }
#p-side-tabs .p-tab-count { margin-inline-start:0; color:inherit; background:color-mix(in srgb, var(--p-color-sidebar-fg) 18%, transparent); }



.p-sidebar .p-ctx-row:is([data-ctx-row], [data-ent-focus]) { margin:0; padding:0 6px 1px; height:40px; box-sizing:border-box; flex-shrink:0; position:relative; }
.p-sidebar .p-ctx-row:is([data-ctx-row], [data-ent-focus])::after {
    content:""; position:absolute; inset-inline:0; bottom:0; height:1px; background:var(--p-color-sidebar-border); pointer-events:none;
}




.p-sidebar .p-ctx-row:is([data-ctx-row], [data-ent-focus]) .p-ctx-chip { height:28px; min-height:0; border-radius:var(--p-radius-chip); padding:0 2px; gap:0; }
.p-sidebar .p-ctx-row:is([data-ctx-row], [data-ent-focus]) .p-ctx-access { margin-inline:6px 5px; }


.p-ctx-row:is([data-ctx-row], [data-ent-focus]) .p-ctx-chip { cursor:pointer; }
.p-ctx-row:is([data-ctx-row], [data-ent-focus]) .p-ctx-chip:hover { background:var(--p-accent-muted); }





.p-ctx-clear { appearance:none; cursor:pointer; border:0; background:transparent; color:inherit; opacity:.6; display:flex; align-items:center; justify-content:center; width:24px; height:24px; padding:0; flex:0 0 auto; }
.p-ctx-clear:hover { opacity:1; }
.p-ctx-clear[hidden] { display:none; }



.p-ctx-clear svg { width:16px; height:16px; }



.p-ctx-access { flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:16px; height:16px; color:var(--p-color-primary); opacity:.6; text-decoration:none; }
.p-ctx-access:hover { opacity:1; }
.p-ctx-access[hidden] { display:none; }
.p-ctx-access svg { width:16px; height:16px; }


.p-ctx-access.is-disabled, .p-ctx-access.is-disabled:hover { opacity:var(--p-disabled-opacity); cursor:default; color:var(--p-color-sidebar-fg); background:transparent; }


.p-ctx-pop { flex:1 1 auto; min-height:0; display:flex; flex-direction:column; overflow:hidden; }
.p-ctx-pop[hidden] { display:none; }


.p-ctx-pop .p-ent-tree { flex:1 1 auto; min-height:0; display:flex; flex-direction:column; overflow:hidden; }
.p-ctx-pop .p-ent-tree .p-table-list-body { padding:var(--p-nav-zone-gap, 6px) 6px 10px; }



.p-nav-caption { display:block; font-size:11px; line-height:16px; padding:10px 12px 2px 8px; opacity:.65; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
:is(.p-nav-tree, .p-ent-tree) :is(.p-nav-caption-row, .p-ent-caption-row) {
    cursor:default; --p-tree-hover-bg: transparent; --p-tree-hover-fg: var(--p-tree-fg); --p-tree-selected-bg: transparent;
}
:is(.p-nav-tree, .p-ent-tree) :is(.p-nav-caption-row, .p-ent-caption-row) .p-table-list-branch { display:none; }
.p-ent-tree .p-ent-caption-row .p-table-list-text--title { font-size:11px; line-height:16px; padding-top:5px; opacity:.65; }
.p-ent-tree .p-ent-flat, .p-ent-tree .p-ent-caption-row { --p-tree-branch-w: 6px; }



.p-ent-tree { --p-tree-selected-bar: 0; }
.p-ent-tree .p-ent-here::after,
.p-ent-tree .p-ent-has-here:not(:has(> .p-table-list-branch--open))::after {
    content: ""; position: absolute; inset-inline-start: 0; inset-block: 3px;
    width: 2px; border-radius: 1px; background: var(--p-color-primary); pointer-events: none;
}




#p-nav-refresh.is-busy { pointer-events:none; }
#p-nav-refresh.is-busy svg { animation:p-spin 0.7s linear infinite; }





.p-desktop {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;





    --p-desktop-cell: 48px;
}

.p-desktop-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;



    color: var(--p-color-brand);


    background: var(--p-surface-chassis);
}





.p-desktop-mosaic {
    position: absolute;
    inset: 0;
    padding: var(--p-desktop-pad);
    overflow: hidden;
    z-index: 0;
    pointer-events: none;
    display: grid;
    grid-template-columns: repeat(var(--p-mosaic-cols, 25), var(--p-desktop-cell));
    grid-auto-rows: var(--p-desktop-cell);
    gap: var(--p-desktop-pad);
}








:where(.p-desktop-mosaic) { color: var(--p-tone-source, var(--p-color-primary)); }















:where(:root[data-theme="half-dark"] .p-desktop-mosaic) {
    color: oklch(from var(--p-tone-source) l calc(c * clamp(0, var(--p-desktop-tinted, 0), 1)) h);
}








:where(:root[data-theme="dark"] .p-desktop-mosaic) {
    color: oklch(from var(--p-tone-source) calc(l * 0.35 * clamp(0, var(--p-desktop-tinted, 0), 1)) calc(c * clamp(0, var(--p-desktop-tinted, 0), 1)) h);
}
:root[data-theme="dark"] { --p-mosaic-strength: 3; --p-mosaic-mix: darken; }
:root[data-theme="dark"] .p-desktop-mosaic { background: var(--p-surface-work); }
:root[data-theme="dark"][data-mosaic="3d"] .p-desktop-mosaic { --mosaic-grout: var(--p-surface-work); }
@media (prefers-color-scheme: dark) {
    :where(:root[data-theme="auto"] .p-desktop-mosaic) {
        color: oklch(from var(--p-tone-source) calc(l * 0.35 * clamp(0, var(--p-desktop-tinted, 0), 1)) calc(c * clamp(0, var(--p-desktop-tinted, 0), 1)) h);
    }
    :root[data-theme="auto"] { --p-mosaic-strength: 3; --p-mosaic-mix: darken; }
    :root[data-theme="auto"] .p-desktop-mosaic { background: var(--p-surface-work); }
    :root[data-theme="auto"][data-mosaic="3d"] .p-desktop-mosaic { --mosaic-grout: var(--p-surface-work); }
}








.p-desktop-mosaic[hidden] { display: none; }







:where(:root[data-theme="light"] .p-desktop-mosaic) {
    color: oklch(from var(--p-tone-source) calc(1 - 0.02 * clamp(0, var(--p-desktop-tinted, 0), 1)) calc(c * 0.4 * clamp(0, var(--p-desktop-tinted, 0), 1)) h);
}
:root[data-theme="light"] { --p-mosaic-strength: 12; }
:root[data-theme="light"][data-mosaic="3d"] .p-desktop-mosaic { --mosaic-grout: var(--p-surface-chassis); }
@media (prefers-color-scheme: light) {
    :where(:root[data-theme="auto"] .p-desktop-mosaic) {
        color: oklch(from var(--p-tone-source) calc(1 - 0.02 * clamp(0, var(--p-desktop-tinted, 0), 1)) calc(c * 0.4 * clamp(0, var(--p-desktop-tinted, 0), 1)) h);
    }
    :root[data-theme="auto"] { --p-mosaic-strength: 12; }
    :root[data-theme="auto"][data-mosaic="3d"] .p-desktop-mosaic { --mosaic-grout: var(--p-surface-chassis); }
}





.p-desktop-mosaic-tile { border-radius: 0; background: var(--p-face); }











:root[data-mosaic="3d"] .p-desktop-mosaic,
.p-login-mosaic {
    --mosaic-grout: oklch(from var(--p-surface-chassis) calc(l - 0.06) c h);
    background: var(--mosaic-grout);
}
:root[data-mosaic="3d"] .p-desktop-mosaic-tile,
.p-login-mosaic > i {
    --tile-hi: calc(0.025 + var(--tile-h, 0) * 0.012);
    --tile-lo: calc(0.03 + var(--tile-h, 0) * 0.013);
    border-radius: 0;
    background-image:
        linear-gradient(to right, var(--mosaic-grout), transparent calc(var(--tile-sl, 0) * 1px)),
        linear-gradient(to bottom, var(--mosaic-grout), transparent calc(var(--tile-st, 0) * 1px));
    box-shadow:
        inset 0 1px 1.5px oklch(from var(--p-face) calc(l + var(--tile-hi)) c h / calc(1 - min(var(--tile-st, 0), 1))),
        inset 1px 0 1.5px oklch(from var(--p-face) calc(l + var(--tile-hi)) c h / calc(1 - min(var(--tile-sl, 0), 1))),
        inset 0 -1px 1.5px oklch(from var(--p-face) calc(l - var(--tile-lo)) c h),
        inset -1px 0 1.5px oklch(from var(--p-face) calc(l - var(--tile-lo)) c h);
}
.p-desktop-statusbar { position: relative; z-index: 1; }










:root[data-theme="dark"] .p-desktop-card:not(:hover) {
    border-color: color-mix(in srgb, var(--p-color-text) 18%, transparent);
}
@media (prefers-color-scheme: dark) {
    :root[data-theme="auto"] .p-desktop-card:not(:hover) {
        border-color: color-mix(in srgb, var(--p-color-text) 18%, transparent);
    }
}


.p-desktop-picker { display: flex; flex-direction: column; gap: 10px; min-width: 280px; }
.p-desktop-picker-search {
    width: 100%; height: 36px; padding: 0 12px;
    border: 1px solid var(--p-color-border); border-radius: var(--p-radius);
    background: var(--p-surface-raised); color: var(--p-color-text); font-size: 14px; outline: none;
}
.p-desktop-picker-search:focus { border-color: var(--p-color-primary); }
.p-desktop-picker-list { max-height: 50vh; overflow-y: auto; display: flex; flex-direction: column; gap: 2px; }
.p-desktop-picker-item {
    display: flex; align-items: center; gap: 9px;
    width: 100%; padding: 8px 10px; border: none; border-radius: var(--p-radius);
    background: transparent; color: var(--p-color-text); font-size: 14px; text-align: start; cursor: pointer;
}
.p-desktop-picker-item:hover { background: var(--p-surface-raised-hover); }
.p-desktop-picker-item .p-nav-icon { width: 16px; height: 16px; flex: 0 0 auto; }
.p-desktop-picker-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-desktop-picker-badge { flex: 0 0 auto; font-size: 11px; }
.p-desktop-picker-empty { padding: 16px; text-align: center; color: var(--p-color-text-muted); font-size: 13px; }
@media (max-width: 640px) {
    #p-desktop-tabs .p-tab { max-width: 130px; }
}


.p-desktop-statusbar {
    flex-shrink: 0;
    height: 48px;
    display: flex;
    align-items: stretch;
    border-top: 1px solid var(--p-color-sidebar-border);


    background: var(--p-surface-chassis);
    overflow: hidden;
    position: relative;
}



.p-content--bg .p-desktop-statusbar {
    background: color-mix(in srgb, var(--p-surface-chassis) 50%, transparent);
    backdrop-filter: blur(10px) saturate(1.1); -webkit-backdrop-filter: blur(10px) saturate(1.1);
}
.p-desktop-calendar {
    flex: 1;
    display: flex;




    gap: var(--p-desktop-pad);
    padding-inline: var(--p-desktop-pad);


    scroll-padding-inline-start: var(--p-desktop-pad);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: auto;
    cursor: default;
    user-select: none;
    -webkit-user-select: none;
    scrollbar-width: none;
}
.p-desktop-calendar::-webkit-scrollbar { display: none; }
.p-desktop-calendar.is-dragging { cursor: default; }

.p-desktop-calendar-day {
    flex-shrink: 0;
    flex-grow: 0;
    height: 100%;



    width: var(--p-desktop-cell);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;




    padding-top: 4px;
    font-size: 11px;
    color: var(--p-color-text-muted);
    line-height: 12px;
    position: relative;
    gap: 1px;
}






.p-desktop-calendar-day:not(.is-month-start) { content-visibility: auto; }







.p-desktop-calendar-day.is-holiday::before,
.p-desktop-calendar-day.is-today::before {
    content: "";
    position: absolute;








    inset: var(--p-desktop-pad) 0;
    border-radius: var(--p-radius-card);
    pointer-events: none;
}
.p-desktop-calendar-day.is-holiday::before {
    background: color-mix(in srgb, var(--p-color-danger) 12%, transparent);
}

.p-desktop-calendar-day > span { position: relative; }
.p-desktop-calendar-day .num {
    font-size: 16px;
    font-weight: 600;
    color: var(--p-color-text-muted);
    font-variant-numeric: tabular-nums;
}
.p-desktop-calendar-day .mon {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--p-color-text-muted);
    display: none;
}



.p-desktop-calendar-day.is-month-start .mon { display: block; }



.p-desktop-calendar-day .dow {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: color-mix(in srgb, var(--p-color-text-muted) 65%, transparent);
    margin-top: -3px;
}


@supports (text-box: trim-both cap alphabetic) {
    .p-desktop-calendar-day .num,
    .p-desktop-calendar-day .mon,
    .p-desktop-calendar-day .dow { text-box: trim-both cap alphabetic; }
    .p-desktop-calendar-day .dow { margin-top: 0; }
    .p-desktop-calendar-day { gap: 6px; }
}
.p-desktop-calendar-day.is-month-start .dow { display: none; }







.p-desktop-calendar-day.is-weekend .num,
.p-desktop-calendar-day.is-weekend .dow {
    color: color-mix(in srgb, var(--p-color-text-muted) 42%, transparent);
    font-weight: 500;
}



.p-desktop-calendar-day.is-holiday .num {
    color: var(--p-color-danger);
    font-weight: 700;
}








.p-desktop-calendar-day.is-holiday.is-weekend:not(.is-today) .num {
    color: color-mix(in srgb, var(--p-color-danger) 62%, transparent);
    font-weight: 600;
}
.p-desktop-calendar-day.is-holiday.is-weekend:not(.is-today)::before {
    background: color-mix(in srgb, var(--p-color-danger) 6%, transparent);
}






.p-desktop-calendar-day.is-today::before {
    background: color-mix(in srgb, var(--p-color-primary) 12%, transparent);
}
.p-desktop-calendar-day.is-today .num,
.p-desktop-calendar-day.is-today .dow,
.p-desktop-calendar-day.is-today .mon {
    color: var(--p-color-primary);
}







.p-desktop-calendar-day.is-month-start.is-strip-edge::after { display: none; }
.p-desktop-calendar-day.is-month-start::after {
    content: "";
    position: absolute;



    inset-inline-start: calc(-1 * var(--p-desktop-pad));
    top: var(--p-desktop-pad);
    bottom: var(--p-desktop-pad);
    width: var(--p-desktop-pad);
    border-radius: 1px;
    pointer-events: none;


    background: var(--p-strip-divider);
}





.p-desktop-grid {
    flex: 1;
    min-height: 0;
    overflow: auto;
    outline: none;
    position: relative;
    display: grid;


    grid-template-columns: repeat(var(--desk-cols, 24), var(--p-desktop-cell));
    grid-template-rows: repeat(var(--desk-rows, 16), var(--p-desktop-cell));
    grid-auto-columns: var(--p-desktop-cell);
    grid-auto-rows: var(--p-desktop-cell);
    justify-content: start;
    align-content: start;





    gap: var(--p-desktop-pad);
    padding: var(--p-desktop-pad);







    background: var(--p-surface-chassis);
}

.p-desktop-drop-ghost {
    border: 1px dashed var(--p-color-primary);
    border-radius: var(--p-radius-chip);
    background: color-mix(in srgb, var(--p-color-primary) 8%, transparent);
    pointer-events: none;
    z-index: 1;
}

.p-desktop-marquee {
    position: fixed;
    z-index: 90;
    border: 1px solid var(--p-color-primary);
    background: color-mix(in srgb, var(--p-color-primary) 12%, transparent);
    pointer-events: none;
}




@media (max-width: 640px) {
    .p-desktop-grid {
        grid-template-columns: 1fr;
        grid-template-rows: none;
        grid-auto-columns: auto;
        grid-auto-rows: auto;
        grid-auto-flow: row;
        overflow-x: hidden;
    }










    .p-desktop-card { grid-column: 1 / -1 !important; grid-row: auto !important;
                      min-height: calc(var(--card-h, 2) * (var(--p-desktop-cell) + var(--p-desktop-pad)) - var(--p-desktop-pad)); }
    .p-desktop-drop-ghost { display: none !important; }















    .p-desktop-mosaic { grid-template-columns: repeat(auto-fill, minmax(44px, 1fr)); }
}

.p-desktop-card {





    background: color-mix(in srgb, var(--p-surface-raised) 44%, transparent);
    border: 1px solid color-mix(in srgb, var(--p-color-text) 12%, transparent);

    border-radius: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    cursor: pointer;
    user-select: none;
    -webkit-user-select: none;

    box-shadow: var(--p-shadow-raised);
    transition: transform var(--p-motion-fast) ease, box-shadow var(--p-motion-fast) ease;
    position: relative;
    z-index: 1;
}



.p-desktop-card:hover {
    background: color-mix(in srgb, var(--p-surface-raised) 55%, transparent);
    border-color: color-mix(in srgb, var(--p-color-primary) 45%, transparent);
    box-shadow: var(--p-shadow-float);
}





.p-desktop-card.is-transparent {
    background: transparent !important;
    backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
    border-color: transparent !important;
    box-shadow: none;
}
.p-desktop-card.is-transparent:hover { box-shadow: none; }


.p-desktop-card.is-disabled {
    opacity: 0.5;
    filter: grayscale(0.55);
    cursor: default;
}
.p-desktop-card.is-disabled:hover {
    transform: none;
    box-shadow: var(--p-shadow-raised);
}
.p-desktop-card-lock {
    position: absolute;
    top: 6px; inset-inline-start: 6px;
    z-index: 2;
    color: var(--p-color-text-muted, #888);
    pointer-events: none;
}
.p-desktop-card-lock svg { width: 16px; height: 16px; display: block; }
.p-desktop-card-body {
    flex: 1;
    min-height: 0;
    overflow: hidden;
    position: relative;
    display: flex;
    flex-direction: column;
    container-type: size;

}

.p-desktop-card-body > * { flex: 1 1 auto; min-height: 0; }



.p-desktop-card-body .p-stat { background: transparent !important; border: none; box-shadow: none; }



.p-desktop-card-body .p-content {
    background: transparent; padding: 0; overflow: visible;







    height: 100%; min-height: 0; display: flex; flex-direction: column;
}



.p-desktop-card-loading {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}


.p-desktop-card-loading::after {
    content: "";
    --p-mark-cell: 7px;
}


.p-desktop-card-frame {
    display: block;
    width: 100%; height: 100%;
    border: 0;
    background: var(--p-surface-chassis);
    border-radius: inherit;
}





.p-desktop--edit .p-desktop-card-frame { pointer-events: none; opacity: .88; filter: blur(0.7px); }




.p-desktop-card-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;

    text-align: center;
    padding: 8px;
    height: 100%;
    gap: 4px;
    overflow: hidden;
}


@container (orientation: landscape) {
    .p-desktop-card-link { flex-direction: row; text-align: start; gap: 10px; padding-inline-start: 10px; }
}
.p-desktop-card-link .name {




    font-size: max(14px, 14cqmin);

    font-weight: 400;
    color: var(--p-color-text);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    word-break: break-word;
    min-width: 0;
}





@container (orientation: portrait)  and (max-height: 84px) { .p-desktop-card-link .name { display: none; } .p-desktop-card-link { justify-content: center; } }
@container (orientation: landscape) and (max-width: 100px) { .p-desktop-card-link .name { display: none; } .p-desktop-card-link { justify-content: center; } }
@container (max-width: 56px) { .p-desktop-card-link .name { display: none; } .p-desktop-card-link { justify-content: center; } }



@container (0.95 < aspect-ratio < 1.05) { .p-desktop-card-link .name { display: none; } .p-desktop-card-link { justify-content: center; } }



.p-desktop-card-link .p-desktop-card-icon { width: 65cqmin; height: 65cqmin; display: block; flex-shrink: 0; }
.p-desktop-card-link .p-desktop-card-icon svg { width: 100%; height: 100%; display: block; }






.p-desktop-card-link .p-desktop-card-icon svg:not(.p-icon-parts),
.p-desktop-card-link .p-desktop-card-icon svg:not(.p-icon-parts) > * { stroke-width: clamp(1.25px, 2.2cqmin, 4px); }




.p-desktop-card-link .p-desktop-card-icon.p-icon-emoji,
.p-desktop-card-entitypage .ep-icon-main.p-icon-emoji {
    display: flex; align-items: center; justify-content: center;
    font-size: 52cqmin;
}




.p-desktop-card-entitypage {
    display: flex; align-items: center; gap: 10px;
    height: 100%; padding: 6px 10px; overflow: hidden;
}


.p-desktop-card-entitypage .ep-icon {
    position: relative; flex-shrink: 0;
    width: 60cqmin; height: 60cqmin; max-width: 120px; max-height: 120px;
    --badge: clamp(15px, 26cqmin, 42px);
    --cut: calc(var(--badge) / 2 + 2px);
}


.p-desktop-card-entitypage .ep-icon-main {
    width: 100%; height: 100%; display: block;


    -webkit-mask: radial-gradient(circle var(--cut) at calc(100% - var(--badge) / 2) calc(100% - var(--badge) / 2), rgba(0,0,0,.25) 99%, #000 100%);
            mask: radial-gradient(circle var(--cut) at calc(100% - var(--badge) / 2) calc(100% - var(--badge) / 2), rgba(0,0,0,.25) 99%, #000 100%);
}


.p-desktop-card-entitypage .ep-icon:has(.ep-icon-badge svg.p-icon-parts) .ep-icon-main,
.p-desktop-card-entitypage .ep-icon:not(:has(.ep-icon-badge)) .ep-icon-main { -webkit-mask: none; mask: none; }
.p-desktop-card-entitypage .ep-icon-main svg { width: 100%; height: 100%; display: block; }

.p-desktop-card-entitypage .ep-icon-badge {
    position: absolute; inset-inline-end: 0; bottom: 0; box-sizing: border-box; display: block;
    width: var(--badge); height: var(--badge);
}
.p-desktop-card-entitypage .ep-icon-badge svg { width: 100%; height: 100%; display: block; }
.p-desktop-card-entitypage .ep-text { display: flex; flex-direction: column; min-width: 0; gap: 2px; line-height: 1.2; }
.p-desktop-card-entitypage .ep-entity {
    font-size: 12px; color: var(--p-color-text-muted);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.p-desktop-card-entitypage .ep-page {
    font-size: 14px; font-weight: 400; color: var(--p-color-text);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

@container (max-width: 120px) { .p-desktop-card-entitypage .ep-entity { display: none; } }

.p-desktop-card-error {
    padding: 12px;
    color: var(--p-text-danger);
    font-size: 12px;
}



.p-desktop-card-remove {
    position: absolute;
    top: 4px;
    inset-inline-end: 4px;
    width: 16px;
    height: 16px;
    border-radius: var(--p-radius-chip);
    border: none;
    padding: 0;
    background: transparent;
    color: var(--p-color-text-muted);
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity var(--p-motion-fast), background var(--p-motion-fast), color var(--p-motion-fast);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
    font-size: 14px;
    line-height: 1;
}
.p-desktop--edit .p-desktop-card-remove {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}




.p-desktop--edit .p-desktop-card[data-card-kind="frame"] .p-desktop-card-remove {
    background: color-mix(in srgb, var(--p-surface-raised) 85%, transparent);
}
.p-desktop-card-remove:hover {
    background: color-mix(in srgb, var(--p-color-text-muted) 25%, transparent);
    color: var(--p-color-text);
}




.p-desktop-card-resize-corner {
    position: absolute;
    inset-inline-end: 0;
    bottom: 0;
    width: 18px;
    height: 18px;
    cursor: nwse-resize;
    z-index: 6;
    opacity: 0;
    pointer-events: none;

    background: linear-gradient(to bottom right,
        transparent 0 50%,
        color-mix(in srgb, var(--p-color-text-muted) 55%, transparent) 50% 100%);
    border-bottom-right-radius: 3px;
    transition: opacity var(--p-motion-fast);
}
.p-desktop--edit .p-desktop-card-resize-corner {
    opacity: 1;
    pointer-events: auto;
}

.p-desktop--edit .p-desktop-card[data-card-kind="frame"] .p-desktop-card-resize-corner {
    filter: drop-shadow(0 0 1px var(--p-surface-raised));
}

html[dir="rtl"] .p-desktop-card-resize-corner {
    cursor: nesw-resize;
    background: linear-gradient(to bottom left,
        transparent 0 50%,
        color-mix(in srgb, var(--p-color-text-muted) 55%, transparent) 50% 100%);
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 3px;
}
html[dir="rtl"] .p-desktop-card-resize-corner:hover {
    background: linear-gradient(to bottom left,
        transparent 0 50%,
        color-mix(in srgb, var(--p-color-text-muted) 80%, transparent) 50% 100%);
}
.p-desktop-card-resize-corner:hover {
    background: linear-gradient(to bottom right,
        transparent 0 50%,
        color-mix(in srgb, var(--p-color-text-muted) 80%, transparent) 50% 100%);
}





.p-desktop--edit .p-desktop-card {
    outline: 1px dashed color-mix(in srgb, var(--p-color-primary) 28%, transparent);
    outline-offset: -1px;
    cursor: default;
    user-select: none;
    -webkit-user-select: none;
    overflow: visible;
    z-index: 5;
}


.p-desktop-card.is-dragging { z-index: 99; opacity: 0.9; box-shadow: var(--p-shadow-drag); transition: none; will-change: transform; }
.p-desktop-card.is-resizing { z-index: 99; transition: none; }




.p-desktop-bigclock {
    position: absolute;
    inset-inline-end: 28px;
    bottom: 76px;
    z-index: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
    text-align: end;
    pointer-events: none;
    user-select: none;
    color: var(--p-color-text);
    text-shadow: 0 1px 3px color-mix(in srgb, var(--p-surface-chassis) 65%, transparent);
    line-height: 1;
}




.p-desktop-bigclock .bc-day  { font-size: 38px; font-weight: 500; color: var(--p-color-text-muted);
    margin-bottom: 5px; }
.p-desktop-bigclock .bc-date { font-size: 38px; font-weight: 500; color: var(--p-color-text-muted); }
.p-desktop-bigclock .bc-time { font-size: 98px; font-weight: 400; font-variant-numeric: tabular-nums; letter-spacing: -0.02em; color: var(--p-color-text-muted);



    margin-top: -8px; }





@supports (text-box: trim-both cap alphabetic) {
    .p-desktop-bigclock .bc-day,
    .p-desktop-bigclock .bc-date,
    .p-desktop-bigclock .bc-time { text-box: trim-both cap alphabetic; }
    .p-desktop-bigclock .bc-time { margin-top: 10px; }
}
.p-desktop-bigclock[hidden] { display: none; }

.p-desktop--no-cal .p-desktop-bigclock { bottom: 28px; }
@media (max-width: 640px) { .p-desktop-bigclock { display: none; } }


.p-desktop-card.is-selected { outline: 1px solid var(--p-color-primary); outline-offset: -1px; }

.p-desktop-card:focus-visible { outline: 2px solid var(--p-color-primary); outline-offset: 2px; }




.p-desktop-pages { flex: 1; min-height: 0; position: relative; z-index: 1; }
.p-desktop--page .p-desktop-grid { display: none; }
.p-desktop-page-blocked {
    position: absolute; inset: 0;
    display: flex; align-items: center; justify-content: center;
    padding: 24px;
    color: var(--p-color-text-muted);
    font-size: 14px;
    text-align: center;
}




.pwd-wrap { --p-content-max: 480px; margin: 0 auto; padding: 20px 14px; }


.qr-box { width: 200px; padding: 10px; border-radius: var(--p-radius); background: #fff; }
.qr-box .p-barcode, .qr-box .p-barcode-svg { display: block; width: 100%; height: auto; }
.qr-wrap { display: flex; justify-content: center; margin: 6px 0 10px; }
.pwd-wrap .p-alert { margin-bottom: 16px; }
.pwd-wrap hr { margin: 24px 0; border: none; border-top: 1px solid var(--p-color-border); }
.pwd-wrap h3 { font-size: 15px; margin: 0 0 8px; }




.p-login-box--wide  { max-width: 420px; }
.p-login-box--wider { max-width: 460px; }
.p-login-title  { text-align: center; font-size: 18px; margin: 0 0 4px; }
.p-login-lead   { margin: -4px 0 16px; font-size: 14px; color: var(--p-color-text-muted); text-align: center; }
.p-login-note   { font-size: 13px; color: var(--p-color-text-muted); line-height: 21px; margin: 0 0 12px; }
ol.p-login-note { padding-inline-start: 20px; margin: 8px 0 12px; }
.p-login-note--box { padding: 10px; border: 1px solid var(--p-color-border); border-radius: var(--p-radius); margin: 0; }
.p-login-hint   { text-align: center; font-size: 12px; color: var(--p-color-text-muted); margin: 10px 0; }
.p-login-secret { font-size: 13px; letter-spacing: .08em; word-break: break-all; }
.p-login-link   { display: block; text-align: center; margin-top: 8px; }
.p-login-link--tight { margin-top: -8px; }
.p-otp-input    { letter-spacing: .3em; text-align: center; font-size: 20px; }
.p-checkbox     { display: flex; align-items: center; gap: 8px; margin: -2px 0 14px; font-size: 13px; cursor: pointer; }


.pk-list { list-style: none; padding: 0; margin: 0 0 14px; }
.pk-item { padding: 8px 0; border-bottom: 1px solid var(--p-color-border); }
.pk-row  { display: flex; align-items: center; gap: 8px; }
.pk-main { flex: 1; min-width: 0; }
.pk-name { font-weight: 500; }
.pk-meta { font-size: 12px; color: var(--p-color-text-muted); }
.pk-remove { color: var(--p-text-danger); }
.pk-rename { margin-top: 4px; }
.pk-rename summary { font-size: 12px; color: var(--p-color-text-muted); }
.pk-rename form { display: flex; gap: 6px; margin-top: 6px; }
.pk-rename .p-input { flex: 1; }




.p-block + .p-block { margin-top: 24px; }

.p-btn--danger-text { color: var(--p-text-danger); }
.p-token-label  { font-size: 12px; color: var(--p-color-text-muted); text-transform: uppercase; letter-spacing: .04em; }
.p-token-row    { display: flex; gap: 8px; margin-top: 6px; }
.p-token-value  { flex: 1; font-family: var(--p-font-mono); }
.p-token-hint   { margin-top: 12px; font-size: 12px; color: var(--p-color-text-muted); }


.p-statusbar-end { margin-inline-start: auto; }



html:where(:has(> body.p-wallpaper-body)), body:where(.p-wallpaper-body) { margin: 0; height: 100%; background: transparent; overflow: hidden; }
body:where(.p-wallpaper-body) #wp { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
