:root{--jl-brand:#6292b2;--jl-accent:#f2cd5e;--jl-olive:#8a9445;--jl-radius:12px;--jl-blur:20px;--jl-glass:.54;--jl-saturate:145%;--jl-border-light:.72;--jl-density:1;--jl-font:"Inter", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--jl-font-display:"Inter", "Segoe UI", system-ui, sans-serif;--jl-font-mono:"JetBrains Mono", "Cascadia Mono", ui-monospace, "SF Mono", Consolas, monospace;--jl-font-num:var(--jl-font-mono);--ink:#101a24;--brand-50:color-mix(in oklab, var(--jl-brand) 10%, white);--brand-100:color-mix(in oklab, var(--jl-brand) 20%, white);--brand-200:color-mix(in oklab, var(--jl-brand) 36%, white);--brand-300:color-mix(in oklab, var(--jl-brand) 56%, white);--brand-400:color-mix(in oklab, var(--jl-brand) 78%, white);--brand-500:var(--jl-brand);--brand-600:color-mix(in oklab, var(--jl-brand) 84%, var(--ink));--brand-700:color-mix(in oklab, var(--jl-brand) 66%, var(--ink));--brand-800:color-mix(in oklab, var(--jl-brand) 46%, var(--ink));--brand-900:color-mix(in oklab, var(--jl-brand) 28%, var(--ink));--accent-50:color-mix(in oklab, var(--jl-accent) 14%, white);--accent-100:color-mix(in oklab, var(--jl-accent) 28%, white);--accent-200:color-mix(in oklab, var(--jl-accent) 48%, white);--accent-300:color-mix(in oklab, var(--jl-accent) 72%, white);--accent-500:var(--jl-accent);--accent-600:color-mix(in oklab, var(--jl-accent) 86%, #6b4a00);--accent-700:color-mix(in oklab, var(--jl-accent) 56%, #432c00);--accent-800:color-mix(in oklab, var(--jl-accent) 26%, #291b04);--olive-100:color-mix(in oklab, var(--jl-olive) 20%, white);--olive-500:var(--jl-olive);--olive-700:color-mix(in oklab, var(--jl-olive) 62%, var(--ink));--ok-500:#2f9e5f;--ok-100:oklab(93.9467% -.0197381 .0096306);--ok-700:color-mix(in oklab, #2f9e5f 62%, var(--ink));--warn-500:#e08c1e;--warn-100:oklab(94.8105% .0109756 .0247285);--warn-700:color-mix(in oklab, #e08c1e 60%, var(--ink));--err-500:#d24437;--err-100:oklab(94.2167% .0221293 .0122365);--err-700:color-mix(in oklab, #d24437 62%, var(--ink));--info-500:var(--brand-500);--info-100:var(--brand-100);--info-700:var(--brand-700);--r-xs:calc(var(--jl-radius) * .34);--r-sm:calc(var(--jl-radius) * .5);--r-md:calc(var(--jl-radius) * .75);--r-lg:var(--jl-radius);--r-xl:calc(var(--jl-radius) * 1.6);--r-2xl:calc(var(--jl-radius) * 2.4);--r-pill:999px;--sp-1:calc(4px * var(--jl-density));--sp-2:calc(8px * var(--jl-density));--sp-3:calc(12px * var(--jl-density));--sp-4:calc(16px * var(--jl-density));--sp-5:calc(20px * var(--jl-density));--sp-6:calc(28px * var(--jl-density));--sp-8:calc(40px * var(--jl-density));--h-field:calc(36px * var(--jl-density));--h-field-sm:calc(28px * var(--jl-density));--h-field-lg:calc(44px * var(--jl-density));--h-row:calc(34px * var(--jl-density));--fs-2xs:10.5px;--fs-xs:11.5px;--fs-sm:12.5px;--fs-md:13.5px;--fs-lg:15px;--fs-xl:18px;--fs-2xl:23px;--fs-3xl:30px;--t-fast:.12s cubic-bezier(.4,0,.2,1);--t-med:.2s cubic-bezier(.4,0,.2,1);--t-slow:.34s cubic-bezier(.22,1,.36,1)}[data-density=compact]{--jl-density:.84;--fs-md:12.5px;--fs-sm:11.5px}[data-density=normal]{--jl-density:1}[data-density=confort]{--jl-density:1.18;--fs-md:14.5px;--fs-sm:13.5px}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-1:color-mix(in oklab, var(--jl-brand) 56%, white);--page-2:color-mix(in oklab, var(--jl-brand) 20%, white);--page-3:color-mix(in oklab, var(--jl-accent) 34%, white);--page-blob-a:color-mix(in oklab, var(--jl-brand) 86%, white);--page-blob-b:color-mix(in oklab, var(--jl-accent) 88%, white);--page-blob-c:color-mix(in oklab, var(--jl-olive) 66%, white);--glass-bg:rgb(255 255 255/var(--jl-glass));--glass-bg-strong:rgb(255 255 255/calc(var(--jl-glass) + .26));--glass-bg-thin:rgb(255 255 255/calc(var(--jl-glass) - .28));--glass-border:rgb(255 255 255/var(--jl-border-light));--glass-border-soft:color-mix(in srgb, var(--brand-700) 14%, transparent);--glass-highlight:#ffffffd9;--glass-tint:color-mix(in srgb, var(--brand-500) 4%, transparent);--surface:#fffffff0;--surface-2:#ffffffb8;--surface-sunken:color-mix(in srgb, var(--brand-700) 6%, transparent);--txt:#16222e;--txt-2:#16222ed6;--txt-3:#16222eb3;--txt-inv:#fff;--txt-link:var(--brand-800);--bd:color-mix(in srgb, var(--brand-800) 20%, transparent);--bd-strong:color-mix(in srgb, var(--brand-800) 34%, transparent);--bd-field:color-mix(in srgb, var(--brand-800) 26%, transparent);--field-bg:#ffffffe0;--field-bg-hover:#fffffff7;--field-bg-disabled:color-mix(in srgb, var(--brand-800) 8%, transparent);--shadow-1:0 1px 2px #101a240f, 0 1px 1px #101a240a;--shadow-2:0 2px 4px #101a240d, 0 6px 16px -6px #101a2429;--shadow-3:0 4px 8px #101a240f, 0 18px 40px -14px #101a2442;--shadow-4:0 8px 16px #101a2414, 0 34px 70px -20px #101a2457;--shadow-inset:inset 0 1px 0 var(--glass-highlight);--ring:0 0 0 3px color-mix(in srgb, var(--brand-500) 38%, transparent);--ring-err:0 0 0 3px color-mix(in srgb, var(--err-500) 32%, transparent)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-1:color-mix(in oklab, var(--jl-brand) 26%, #070d14);--page-2:#0b131c;--page-3:color-mix(in oklab, var(--jl-brand) 12%, #070d14);--page-blob-a:color-mix(in oklab, var(--jl-brand) 82%, #070d14);--page-blob-b:color-mix(in oklab, var(--jl-accent) 52%, #1a1405);--page-blob-c:color-mix(in oklab, var(--jl-olive) 56%, #070d14);--glass-bg:rgb(255 255 255/calc(var(--jl-glass) * .13));--glass-bg-strong:rgb(255 255 255/calc(var(--jl-glass) * .22));--glass-bg-thin:rgb(255 255 255/calc(var(--jl-glass) * .07));--glass-border:rgb(255 255 255/calc(var(--jl-border-light) * .22));--glass-border-soft:#ffffff14;--glass-highlight:#ffffff29;--glass-tint:color-mix(in srgb, var(--brand-300) 5%, transparent);--surface:#ffffff12;--surface-2:#ffffff0b;--surface-sunken:#0000003d;--txt:#e9f0f6;--txt-2:#e9f0f6db;--txt-3:#e9f0f6b3;--txt-inv:#0b131c;--txt-link:var(--brand-200);--bd:#ffffff24;--bd-strong:#ffffff42;--bd-field:#fff3;--field-bg:#ffffff14;--field-bg-hover:#ffffff1f;--field-bg-disabled:#ffffff0a;--ok-100:oklab(29.7409% -.037172 .0000139363);--warn-100:oklab(32.0817% .0107561 .0200831);--err-100:oklab(28.8372% .0359997 .00708916);--info-100:color-mix(in oklab, var(--jl-brand) 26%, #0b131c);--ok-700:oklab(78.8133% -.0690835 .0337069);--warn-700:oklab(80.3953% .0414632 .0934185);--err-700:oklab(76.8668% .0885171 .0489459);--info-700:var(--brand-200);--accent-100:color-mix(in oklab, var(--jl-accent) 22%, #0b131c);--accent-700:color-mix(in oklab, var(--jl-accent) 64%, white);--accent-800:color-mix(in oklab, var(--jl-accent) 82%, white);--shadow-1:0 1px 2px #0006;--shadow-2:0 2px 4px #00000057, 0 6px 18px -6px #00000080;--shadow-3:0 4px 10px #0006, 0 20px 44px -14px #0000009e;--shadow-4:0 10px 20px #00000075, 0 38px 80px -22px #000000b3}[data-contrast=high]{--jl-glass:.93;--jl-blur:6px;--bd:var(--bd-strong);--bd-field:color-mix(in srgb, var(--brand-900) 56%, transparent);--txt-3:var(--txt-2)}[data-contrast=high][data-theme=dark]{--jl-glass:1.1;--glass-bg:#16202b;--glass-bg-strong:#1c2836;--surface:#131c26}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:var(--jl-font);font-size:var(--fs-md);color:var(--txt);background:var(--page-2);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5}.ic{flex:none;width:1em;height:1em;display:block}.jl-backdrop{z-index:-1;background:radial-gradient(1100px 760px at 12% 6%, var(--page-1) 0%, transparent 58%), radial-gradient(900px 640px at 94% 14%, var(--page-3) 0%, transparent 54%), radial-gradient(1000px 700px at 52% 104%, var(--page-1) 0%, transparent 56%), linear-gradient(165deg, var(--page-2) 0%, var(--page-1) 100%);position:fixed;inset:0;overflow:hidden}.jl-backdrop:before,.jl-backdrop:after,.jl-backdrop>i{content:"";filter:blur(64px);border-radius:50%;position:absolute}.jl-backdrop:before{background:var(--page-blob-a);opacity:.58;width:40vw;height:40vw;top:4vh;left:6vw}.jl-backdrop:after{background:var(--page-blob-b);opacity:.5;width:34vw;height:34vw;top:16vh;right:2vw}.jl-backdrop>i{background:var(--page-blob-c);opacity:.4;width:36vw;height:36vw;bottom:-8vw;left:30vw}[data-theme=dark] .jl-backdrop:after{opacity:.3}[data-theme=dark] .jl-backdrop>i{opacity:.2}::selection{background:color-mix(in srgb, var(--brand-500) 34%, transparent)}:focus-visible{outline:2px solid var(--brand-600);outline-offset:2px;border-radius:var(--r-xs)}[data-theme=dark] :focus-visible{outline-color:var(--brand-200)}*{scrollbar-width:thin;scrollbar-color:var(--bd-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--bd-strong);border-radius:var(--r-pill);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background-color:var(--txt-3);background-clip:content-box}.jl-glass,.jl-glass-strong,.jl-glass-thin{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--jl-blur)) saturate(var(--jl-saturate));backdrop-filter:blur(var(--jl-blur)) saturate(var(--jl-saturate));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--shadow-2), var(--shadow-inset);position:relative}.jl-glass-strong{background:var(--glass-bg-strong);box-shadow:var(--shadow-3), var(--shadow-inset)}.jl-glass-thin{background:var(--glass-bg-thin);-webkit-backdrop-filter:blur(calc(var(--jl-blur) * .6)) saturate(120%);backdrop-filter:blur(calc(var(--jl-blur) * .6)) saturate(120%);box-shadow:var(--shadow-1)}.jl-sheen:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(160deg,#ffffff47 0%,#0000 34%);position:absolute;inset:0}[data-theme=dark] .jl-sheen:after{background:linear-gradient(160deg,#ffffff1a 0%,#0000 30%)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.jl-glass,.jl-glass-strong,.jl-glass-thin{background:#fffffff2}[data-theme=dark] .jl-glass,[data-theme=dark] .jl-glass-strong,[data-theme=dark] .jl-glass-thin{background:#16202b}}@media (prefers-reduced-transparency:reduce){:root{--jl-glass:.95;--jl-blur:4px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.jl-app{grid-template-rows:auto 1fr;grid-template-columns:auto 1fr;min-height:100vh;display:grid}.jl-topbar{z-index:40;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);background:linear-gradient(178deg, color-mix(in srgb, var(--brand-600) 88%, transparent), color-mix(in srgb, var(--brand-800) 90%, transparent));-webkit-backdrop-filter:blur(var(--jl-blur)) saturate(var(--jl-saturate));backdrop-filter:blur(var(--jl-blur)) saturate(var(--jl-saturate));box-shadow:var(--shadow-2);color:#fff;border-bottom:1px solid #ffffff38;grid-column:1/-1;display:flex;position:sticky;top:0}[data-theme=dark] .jl-topbar{background:linear-gradient(178deg, color-mix(in srgb, var(--brand-800) 82%, transparent), color-mix(in srgb, var(--brand-900) 88%, transparent));border-bottom-color:#ffffff1a}.jl-topbar .jl-segmented button{color:#fffffff2}.jl-topbar .jl-segmented button:hover{color:#fff}.jl-topbar .jl-input::placeholder{color:#ffffffb3}.jl-topbar__brand{align-items:center;gap:var(--sp-2);letter-spacing:.01em;font-weight:700;display:flex}.jl-topbar__logo{border-radius:var(--r-sm);background:linear-gradient(140deg, var(--accent-300), var(--accent-500));color:#35290a;width:34px;height:34px;box-shadow:var(--shadow-1);font-family:var(--jl-font-display);font-weight:800;font-size:var(--fs-sm);flex:none;place-items:center;display:grid}.jl-topbar__sep{background:#ffffff4d;width:1px;height:22px}.jl-topbar__spacer{flex:1}.jl-topbar .jl-btn--ghost{color:#fff}.jl-topbar .jl-btn--ghost:hover{background:#ffffff2e}.jl-sidebar{top:calc(var(--h-field) + var(--sp-4));width:calc(232px * var(--jl-density));margin:var(--sp-4) 0 var(--sp-4) var(--sp-4);padding:var(--sp-3);max-height:calc(100vh - var(--h-field) - var(--sp-8));align-self:start;gap:var(--sp-1);flex-direction:column;display:flex;position:sticky;overflow-y:auto}.jl-sidebar[data-collapsed=true]{width:calc(60px * var(--jl-density))}.jl-sidebar[data-collapsed=true] .jl-navitem span,.jl-sidebar[data-collapsed=true] .jl-navgroup{display:none}.jl-navgroup{padding:var(--sp-3) var(--sp-2) var(--sp-1);font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--txt-3);font-weight:700}.jl-navitem{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2);min-height:calc(34px * var(--jl-density));border-radius:var(--r-sm);color:var(--txt-2);font-size:var(--fs-sm);cursor:pointer;transition:background var(--t-fast), color var(--t-fast);background:0 0;border:1px solid #0000;font-weight:500;text-decoration:none;display:flex}.jl-navitem:hover{background:var(--glass-bg-thin);color:var(--txt)}.jl-navitem[aria-current=page],.jl-navitem.is-active{background:color-mix(in srgb, var(--brand-500) 18%, transparent);border-color:color-mix(in srgb, var(--brand-500) 26%, transparent);color:var(--brand-700);font-weight:650}[data-theme=dark] .jl-navitem[aria-current=page],[data-theme=dark] .jl-navitem.is-active{color:var(--brand-100)}.jl-navitem svg{flex:none;width:17px;height:17px}.jl-navitem .jl-badge{margin-left:auto}.jl-main{padding:var(--sp-4) var(--sp-4) var(--sp-8);min-width:0}h1,h2,h3,h4{font-family:var(--jl-font-display);letter-spacing:-.012em;margin:0;line-height:1.25}h1{font-size:var(--fs-3xl);font-weight:750}h2{font-size:var(--fs-2xl);font-weight:700}h3{font-size:var(--fs-xl);font-weight:680}h4{font-size:var(--fs-lg);font-weight:650}p{margin:0 0 var(--sp-3)}a{color:var(--txt-link);-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:2px}small,.jl-small{font-size:var(--fs-xs);color:var(--txt-3)}code,kbd,.jl-num{font-family:var(--jl-font-num);font-variant-numeric:tabular-nums}.jl-num{font-feature-settings:"tnum" 1}kbd{font-size:var(--fs-2xs);border:1px solid var(--bd);border-radius:var(--r-xs);background:var(--surface-2);border-bottom-width:2px;padding:1px 5px}hr{border:0;border-top:1px solid var(--bd);margin:var(--sp-5) 0}.jl-card{padding:var(--sp-4);border-radius:var(--r-lg);min-width:0}.jl-card__head{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);display:flex}.jl-card__head h5,.jl-card__title{font-size:var(--fs-md);margin:0;font-weight:650}.jl-card__sub{font-size:var(--fs-xs);color:var(--txt-3)}.jl-cards{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(230px,1fr));display:grid}.jl-cards--lg{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.jl-panel{padding:var(--sp-5);border-radius:var(--r-xl)}.jl-panel+.jl-panel{margin-top:var(--sp-4)}.jl-panel__head{align-items:center;gap:var(--sp-3);margin:0 0 var(--sp-4);display:flex}.jl-panel__head h3,.jl-panel__head h4{margin:0}.jl-panel__head .jl-spacer{flex:1}.jl-panel__sub{color:var(--txt-3);font-size:var(--fs-sm);margin-top:2px}.jl-section-title{align-items:center;gap:var(--sp-3);margin:var(--sp-8) 0 var(--sp-4);display:flex}.jl-section-title:after{content:"";background:var(--bd);flex:1;height:1px}.jl-section-title .jl-kicker{font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--txt-3);font-weight:700}.jl-grid{gap:var(--sp-3) var(--sp-4);grid-template-columns:repeat(12,1fr);display:grid}.c1{grid-column:span 1}.c2{grid-column:span 2}.c3{grid-column:span 3}.c4{grid-column:span 4}.c5{grid-column:span 5}.c6{grid-column:span 6}.c7{grid-column:span 7}.c8{grid-column:span 8}.c9{grid-column:span 9}.c10{grid-column:span 10}.c11{grid-column:span 11}.c12{grid-column:span 12}@media (width<=1100px){.jl-grid>[class^=c]{grid-column:span 6}}@media (width<=700px){.jl-grid>[class^=c]{grid-column:span 12}}.jl-row{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.jl-row--tight{gap:var(--sp-1)}.jl-stack{gap:var(--sp-3);flex-direction:column;display:flex}.jl-spacer{flex:1}.jl-btn{--btn-bg:var(--glass-bg-strong);--btn-fg:var(--txt);--btn-bd:var(--glass-border);justify-content:center;align-items:center;gap:var(--sp-2);height:var(--h-field);padding:0 var(--sp-4);font-family:inherit;font-size:var(--fs-sm);white-space:nowrap;color:var(--btn-fg);background:var(--btn-bg);border:1px solid var(--btn-bd);border-radius:var(--r-md);box-shadow:var(--shadow-1), inset 0 1px 0 #ffffff4d;-webkit-backdrop-filter:blur(calc(var(--jl-blur) * .7)) saturate(130%);backdrop-filter:blur(calc(var(--jl-blur) * .7)) saturate(130%);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform var(--t-fast), box-shadow var(--t-fast), background var(--t-fast), border-color var(--t-fast), filter var(--t-fast);font-weight:600;line-height:1;text-decoration:none;display:inline-flex;position:relative}.jl-btn svg{flex:none;width:16px;height:16px}.jl-btn:hover{filter:brightness(1.05);box-shadow:var(--shadow-2), inset 0 1px 0 #ffffff57}.jl-btn:active{box-shadow:var(--shadow-1);filter:brightness(.97);transform:translateY(1px)}.jl-btn[disabled],.jl-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;filter:saturate(.5);box-shadow:none;transform:none}.jl-btn--primary{--btn-bg:linear-gradient(178deg, var(--brand-500), var(--brand-700));--btn-fg:#fff;--btn-bd:color-mix(in srgb, var(--brand-800) 40%, transparent);box-shadow:var(--shadow-2), inset 0 1px 0 #ffffff57}.jl-btn--accent{--btn-bg:linear-gradient(178deg, var(--accent-300), var(--accent-500));--btn-fg:#40300a;--btn-bd:color-mix(in srgb, var(--accent-700) 34%, transparent)}.jl-btn--success{--btn-bg:linear-gradient(178deg, var(--ok-500), color-mix(in oklab, var(--ok-500) 74%, var(--ink)));--btn-fg:#fff;--btn-bd:color-mix(in srgb, var(--ok-700) 40%, transparent)}.jl-btn--danger{--btn-bg:linear-gradient(178deg, var(--err-500), color-mix(in oklab, var(--err-500) 74%, var(--ink)));--btn-fg:#fff;--btn-bd:color-mix(in srgb, var(--err-700) 40%, transparent)}.jl-btn--outline{--btn-bg:transparent;--btn-bd:var(--bd-strong);--btn-fg:var(--txt);box-shadow:none;-webkit-backdrop-filter:none}.jl-btn--outline:hover{--btn-bg:var(--glass-bg-thin)}.jl-btn--ghost{--btn-bg:transparent;--btn-bd:transparent;--btn-fg:var(--txt-2);box-shadow:none;-webkit-backdrop-filter:none}.jl-btn--ghost:hover{--btn-bg:var(--glass-bg-thin);--btn-fg:var(--txt);box-shadow:none}.jl-btn--link{--btn-bg:transparent;--btn-bd:transparent;--btn-fg:var(--txt-link);height:auto;box-shadow:none;text-underline-offset:3px;-webkit-backdrop-filter:none;padding:0;text-decoration:underline}.jl-btn--link:hover{box-shadow:none;filter:none}.jl-btn--sm{height:var(--h-field-sm);padding:0 var(--sp-3);font-size:var(--fs-xs);border-radius:var(--r-sm)}.jl-btn--sm svg{width:14px;height:14px}.jl-btn--lg{height:var(--h-field-lg);padding:0 var(--sp-5);font-size:var(--fs-md);border-radius:var(--r-lg)}.jl-btn--lg svg{width:18px;height:18px}.jl-btn--icon{width:var(--h-field);padding:0}.jl-btn--icon.jl-btn--sm{width:var(--h-field-sm)}.jl-btn--icon.jl-btn--lg{width:var(--h-field-lg)}.jl-btn--pill{border-radius:var(--r-pill)}.jl-btn--block{width:100%}.jl-btn.is-loading{pointer-events:none;color:#0000!important}.jl-btn.is-loading:after{content:"";width:15px;height:15px;color:var(--btn-fg);border:2px solid;border-top-color:#0000;border-radius:50%;animation:.6s linear infinite jl-spin;position:absolute}.jl-btn--primary.is-loading:after,.jl-btn--success.is-loading:after,.jl-btn--danger.is-loading:after{border-color:#0000 #fff #fff}@keyframes jl-spin{to{transform:rotate(360deg)}}.jl-btngroup{display:inline-flex}.jl-btngroup>.jl-btn{border-radius:0}.jl-btngroup>.jl-btn:first-child{border-top-left-radius:var(--r-md);border-bottom-left-radius:var(--r-md)}.jl-btngroup>.jl-btn:last-child{border-top-right-radius:var(--r-md);border-bottom-right-radius:var(--r-md)}.jl-btngroup>.jl-btn+.jl-btn{margin-left:-1px}.jl-btngroup>.jl-btn:hover{z-index:1}.jl-segmented{background:var(--surface-sunken);border:1px solid var(--glass-border-soft);border-radius:var(--r-md);gap:2px;padding:3px;display:inline-flex}.jl-segmented button{height:calc(var(--h-field) - 8px);padding:0 var(--sp-3);font:inherit;font-size:var(--fs-xs);color:var(--txt-2);border-radius:calc(var(--r-md) - 3px);cursor:pointer;transition:all var(--t-fast);background:0 0;border:0;font-weight:600}.jl-segmented button:hover{color:var(--txt);background:var(--glass-bg-thin)}.jl-segmented button[aria-pressed=true]{color:#fff;background:linear-gradient(178deg, var(--brand-500), var(--brand-700));box-shadow:var(--shadow-1)}.jl-segmented--ok button[aria-pressed=true]{background:linear-gradient(178deg, var(--ok-500), color-mix(in oklab, var(--ok-500) 76%, var(--ink)))}.jl-fab{right:var(--sp-5);bottom:var(--sp-5);z-index:45;border-radius:var(--r-pill);width:52px;height:52px;box-shadow:var(--shadow-4), inset 0 1px 0 #ffffff57;position:fixed}.jl-field{gap:calc(var(--sp-1) + 2px);flex-direction:column;min-width:0;display:flex}.jl-label{align-items:center;gap:var(--sp-1);font-size:var(--fs-xs);color:var(--txt-2);letter-spacing:.005em;font-weight:600;display:flex}.jl-label .jl-req{color:var(--err-700);font-weight:700}.jl-label .jl-opt{color:var(--txt-3);font-weight:500}.jl-hint{font-size:var(--fs-2xs);color:var(--txt-3)}.jl-msg{font-size:var(--fs-2xs);align-items:center;gap:4px;font-weight:500;display:flex}.jl-msg svg{flex:none;width:12px;height:12px}.jl-msg--err{color:var(--err-700)}.jl-msg--ok{color:var(--ok-700)}.jl-msg--warn{color:var(--warn-700)}.jl-input,.jl-select,.jl-textarea{width:100%;height:var(--h-field);padding:0 var(--sp-3);font-family:inherit;font-size:var(--fs-sm);color:var(--txt);background:var(--field-bg);border:1px solid var(--bd-field);border-radius:var(--r-sm);transition:border-color var(--t-fast), box-shadow var(--t-fast), background var(--t-fast);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:inset 0 1px 2px #101a240d}.jl-textarea{height:auto;min-height:calc(var(--h-field) * 2.4);padding:var(--sp-2) var(--sp-3);resize:vertical;line-height:1.55}.jl-input::placeholder,.jl-textarea::placeholder{color:var(--txt-3)}.jl-input:hover,.jl-select:hover,.jl-textarea:hover{background-color:var(--field-bg-hover);border-color:var(--bd-strong)}.jl-input:focus,.jl-select:focus,.jl-textarea:focus{background-color:var(--field-bg-hover);border-color:var(--brand-500);box-shadow:var(--ring), inset 0 1px 2px #101a240a;outline:none}.jl-input[readonly],.jl-textarea[readonly]{background:var(--surface-sunken);box-shadow:none;color:var(--txt-2);border-style:dashed}.jl-input:disabled,.jl-select:disabled,.jl-textarea:disabled{background-color:var(--field-bg-disabled);color:var(--txt-3);border-color:var(--bd);cursor:not-allowed;box-shadow:none}.jl-input.is-error,.jl-select.is-error,.jl-textarea.is-error{border-color:var(--err-500);background-color:color-mix(in srgb, var(--err-500) 5%, var(--field-bg))}.jl-input.is-error:focus{box-shadow:var(--ring-err)}.jl-input.is-ok{border-color:var(--ok-500)}.jl-input.is-warn{border-color:var(--warn-500)}.jl-input--num{text-align:right;font-family:var(--jl-font-num);font-variant-numeric:tabular-nums}.jl-input--mono{font-family:var(--jl-font-num);letter-spacing:.04em}.jl-select{appearance:none;padding-right:calc(var(--sp-6) + 2px);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23566' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--sp-2) center}[data-theme=dark] .jl-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23aabbc8' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.jl-select option{background:var(--page-2);color:var(--txt)}.jl-inputgroup{align-items:stretch;min-width:0;display:flex}.jl-inputgroup>.jl-input,.jl-inputgroup>.jl-select{border-radius:0;min-width:0}.jl-inputgroup>:first-child{border-top-left-radius:var(--r-sm);border-bottom-left-radius:var(--r-sm)}.jl-inputgroup>:last-child{border-top-right-radius:var(--r-sm);border-bottom-right-radius:var(--r-sm)}.jl-inputgroup>*+*{margin-left:-1px}.jl-inputgroup>.jl-input:focus,.jl-inputgroup>.jl-select:focus{z-index:2}.jl-addon{height:var(--h-field);padding:0 var(--sp-3);font-size:var(--fs-xs);color:var(--txt-2);background:var(--surface-sunken);border:1px solid var(--bd-field);white-space:nowrap;align-items:center;gap:4px;font-weight:600;display:inline-flex}.jl-addon svg{width:15px;height:15px}.jl-inputgroup>.jl-btn{z-index:1;border-radius:0}.jl-stepper{align-items:stretch;display:inline-flex}.jl-stepper .jl-input{width:calc(72px * var(--jl-density));text-align:center;border-radius:0}.jl-stepper button{width:var(--h-field);border:1px solid var(--bd-field);background:var(--surface-sunken);color:var(--txt-2);cursor:pointer;font-size:var(--fs-lg);place-items:center;line-height:1;display:grid}.jl-stepper button:first-child{border-radius:var(--r-sm) 0 0 var(--r-sm)}.jl-stepper button:last-child{border-radius:0 var(--r-sm) var(--r-sm) 0}.jl-stepper button:hover{background:var(--glass-bg-strong);color:var(--txt)}.jl-stepper>*+*{margin-left:-1px}.jl-search{position:relative}.jl-search .jl-input{padding-left:calc(var(--sp-6) + 4px)}.jl-search>svg{left:var(--sp-3);width:16px;height:16px;color:var(--txt-3);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.jl-search__count{border-radius:var(--r-xs);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;color:#fff;background:var(--brand-700);padding:2px 7px;font-weight:700;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.jl-check,.jl-radio{align-items:flex-start;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--txt);cursor:pointer;line-height:calc(18px * var(--jl-density));display:inline-flex}.jl-check input,.jl-radio input{appearance:none;width:calc(17px * var(--jl-density));height:calc(17px * var(--jl-density));background:var(--field-bg);border:1.5px solid var(--bd-strong);border-radius:var(--r-xs);cursor:pointer;transition:all var(--t-fast);flex:none;place-content:center;margin:0;display:grid}.jl-radio input{border-radius:50%}.jl-check input:checked,.jl-radio input:checked{background:linear-gradient(178deg, var(--brand-500), var(--brand-700));border-color:var(--brand-700)}.jl-check input:checked:before{content:"";border-bottom:2.2px solid #fff;border-left:2.2px solid #fff;width:10px;height:6px;transform:rotate(-45deg)translate(1px,-1px)}.jl-check input:indeterminate{background:var(--brand-600);border-color:var(--brand-700)}.jl-check input:indeterminate:before{content:"";background:#fff;width:9px;height:2.2px}.jl-radio input:checked:before{content:"";background:#fff;border-radius:50%;width:6px;height:6px}.jl-check input:focus-visible,.jl-radio input:focus-visible{box-shadow:var(--ring);outline:none}.jl-check input:disabled,.jl-radio input:disabled{opacity:.45;cursor:not-allowed}:is(.jl-check:has(input:disabled),.jl-radio:has(input:disabled)){color:var(--txt-3);cursor:not-allowed}.jl-switch{align-items:center;gap:var(--sp-2);cursor:pointer;font-size:var(--fs-sm);display:inline-flex}.jl-switch input{appearance:none;width:calc(40px * var(--jl-density));height:calc(22px * var(--jl-density));background:var(--bd-strong);border-radius:var(--r-pill);cursor:pointer;transition:background var(--t-med);flex:none;position:relative;box-shadow:inset 0 1px 2px #101a2429}.jl-switch input:before{content:"";width:calc(18px * var(--jl-density));height:calc(18px * var(--jl-density));box-shadow:var(--shadow-1);transition:transform var(--t-med);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.jl-switch input:checked{background:linear-gradient(178deg, var(--ok-500), color-mix(in oklab, var(--ok-500) 78%, var(--ink)))}.jl-switch input:checked:before{transform:translateX(calc(18px * var(--jl-density)))}.jl-switch input:focus-visible{box-shadow:var(--ring);outline:none}.jl-switch input:disabled{opacity:.45;cursor:not-allowed}.jl-radiocards{gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.jl-radiocard{gap:var(--sp-2);padding:var(--sp-3);cursor:pointer;background:var(--glass-bg-thin);border:1px solid var(--bd);border-radius:var(--r-md);transition:all var(--t-fast);align-items:flex-start;display:flex;position:relative}.jl-radiocard:hover{background:var(--glass-bg);border-color:var(--bd-strong)}.jl-radiocard:has(input:checked){background:color-mix(in srgb, var(--brand-500) 12%, transparent);border-color:var(--brand-500);box-shadow:var(--ring)}.jl-radiocard strong{font-size:var(--fs-sm);display:block}.jl-radiocard span{font-size:var(--fs-2xs);color:var(--txt-3)}.jl-range{appearance:none;cursor:pointer;background:0 0;width:100%;height:22px}.jl-range::-webkit-slider-runnable-track{border-radius:var(--r-pill);background:linear-gradient(90deg, var(--brand-500) var(--jl-fill,50%), var(--bd-strong) var(--jl-fill,50%));height:6px}.jl-range::-webkit-slider-thumb{appearance:none;border:2px solid var(--brand-600);width:17px;height:17px;box-shadow:var(--shadow-1);background:#fff;border-radius:50%;margin-top:-5.5px}.jl-range::-moz-range-track{border-radius:var(--r-pill);background:var(--bd-strong);height:6px}.jl-range::-moz-range-progress{border-radius:var(--r-pill);background:var(--brand-500);height:6px}.jl-range::-moz-range-thumb{border:2px solid var(--brand-600);background:#fff;border-radius:50%;width:15px;height:15px}.jl-range:focus-visible{outline:none}.jl-range:focus-visible::-webkit-slider-thumb{box-shadow:var(--ring)}.jl-tagsinput{align-items:center;gap:var(--sp-1);min-height:var(--h-field);padding:calc(var(--sp-1) + 1px) var(--sp-2);background:var(--field-bg);border:1px solid var(--bd-field);border-radius:var(--r-sm);flex-wrap:wrap;display:flex}.jl-tagsinput:focus-within{border-color:var(--brand-500);box-shadow:var(--ring)}.jl-tagsinput input{min-width:90px;font:inherit;font-size:var(--fs-sm);color:var(--txt);background:0 0;border:0;outline:none;flex:1}.jl-tag{border-radius:var(--r-xs);font-size:var(--fs-2xs);background:color-mix(in srgb, var(--brand-500) 16%, transparent);color:var(--brand-700);border:1px solid color-mix(in srgb, var(--brand-500) 26%, transparent);align-items:center;gap:4px;padding:2px 4px 2px 8px;font-weight:600;display:inline-flex}[data-theme=dark] .jl-tag{color:var(--brand-100)}.jl-tag button{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:0;place-items:center;padding:0;display:grid}.jl-tag button:hover{opacity:1}.jl-tag svg{width:12px;height:12px}.jl-dropzone{place-items:center;gap:var(--sp-2);padding:var(--sp-6) var(--sp-4);text-align:center;min-height:calc(130px * var(--jl-density));border:1.5px dashed var(--bd-strong);border-radius:var(--r-lg);background:var(--glass-bg-thin);color:var(--txt-3);cursor:pointer;transition:all var(--t-fast);display:grid}.jl-dropzone:hover,.jl-dropzone.is-over{border-color:var(--brand-500);color:var(--brand-700);background:color-mix(in srgb, var(--brand-500) 8%, transparent)}.jl-dropzone svg{opacity:.7;width:30px;height:30px}.jl-dropzone strong{color:var(--txt);font-size:var(--fs-sm)}.jl-file{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface-2);border:1px solid var(--bd);border-radius:var(--r-sm);font-size:var(--fs-xs);display:flex}.jl-file svg{width:16px;height:16px;color:var(--brand-600);flex:none}.jl-file__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.jl-file__size{color:var(--txt-3);font-variant-numeric:tabular-nums}.jl-rating{color:var(--accent-500);gap:2px;display:inline-flex}.jl-rating svg{width:18px;height:18px}.jl-rating .is-off{color:var(--bd-strong)}.jl-color{width:var(--h-field);height:var(--h-field);background:var(--field-bg);border:1px solid var(--bd-field);border-radius:var(--r-sm);cursor:pointer;padding:3px}.jl-color::-webkit-color-swatch-wrapper{padding:0}.jl-color::-webkit-color-swatch{border-radius:calc(var(--r-sm) - 3px);border:0}.jl-tablewrap{border:1px solid var(--glass-border-soft);border-radius:var(--r-lg);background:var(--surface);max-height:62vh;box-shadow:var(--shadow-1);overflow:auto}.jl-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-sm)}.jl-table thead th{z-index:2;height:calc(var(--h-row) + 2px);padding:0 var(--sp-3);text-align:left;white-space:nowrap;font-size:var(--fs-xs);color:var(--accent-800);background:color-mix(in srgb, var(--jl-accent) 72%, white);-webkit-backdrop-filter:blur(14px)saturate(150%);backdrop-filter:blur(14px)saturate(150%);border-bottom:1px solid color-mix(in srgb, var(--accent-700) 30%, transparent);cursor:default;font-weight:700;position:sticky;top:0;box-shadow:inset 0 1px #ffffff80}[data-theme=dark] .jl-table thead th{background:color-mix(in srgb, var(--jl-accent) 22%, #16202b);color:var(--accent-800);border-bottom-color:color-mix(in srgb, var(--jl-accent) 30%, transparent)}.jl-table thead th[aria-sort]{cursor:pointer;-webkit-user-select:none;user-select:none}.jl-table thead th[aria-sort]:hover{background:color-mix(in srgb, var(--jl-accent) 86%, white)}.jl-table thead th .jl-sort{vertical-align:-3px;opacity:.35;margin-left:3px;display:inline-flex}.jl-table thead th[aria-sort=ascending] .jl-sort,.jl-table thead th[aria-sort=descending] .jl-sort{opacity:1}.jl-table thead th[aria-sort=descending] .jl-sort{transform:rotate(180deg)}.jl-table thead th svg{width:13px;height:13px}.jl-table tbody td{height:var(--h-row);padding:0 var(--sp-3);border-bottom:1px solid var(--bd);color:var(--txt);vertical-align:middle}.jl-table tbody tr:nth-child(2n){background:color-mix(in srgb, var(--brand-500) 4%, transparent)}.jl-table tbody tr:hover{background:color-mix(in srgb, var(--brand-500) 11%, transparent)}.jl-table tbody tr[aria-selected=true]{background:color-mix(in srgb, var(--brand-500) 17%, transparent);box-shadow:inset 3px 0 0 var(--brand-600)}.jl-table tbody tr.is-alert{box-shadow:inset 3px 0 0 var(--err-500)}.jl-table tbody tr.is-warn{box-shadow:inset 3px 0 0 var(--warn-500)}.jl-table td.jl-num,.jl-table th.jl-num{text-align:right;font-family:var(--jl-font-num);font-variant-numeric:tabular-nums}.jl-table td.jl-actions{text-align:right;white-space:nowrap}.jl-table tbody tr .jl-actions .jl-btn{opacity:0;transition:opacity var(--t-fast)}.jl-table tbody tr:hover .jl-actions .jl-btn,.jl-table tbody tr:focus-within .jl-actions .jl-btn{opacity:1}.jl-table tfoot td{height:var(--h-row);padding:0 var(--sp-3);font-weight:700;font-size:var(--fs-sm);background:color-mix(in srgb, var(--brand-500) 12%, white);border-top:1.5px solid var(--bd-strong);position:sticky;bottom:0}[data-theme=dark] .jl-table tfoot td{background:color-mix(in srgb, var(--brand-500) 18%, #16202b)}.jl-table--compact{--h-row:calc(28px * var(--jl-density));font-size:var(--fs-xs)}.jl-table caption{caption-side:top;text-align:left;padding:var(--sp-2) var(--sp-3);font-size:var(--fs-xs);color:var(--txt-3)}.jl-cell-edit{width:100%;height:calc(var(--h-row) - 8px);padding:0 var(--sp-2);font:inherit;font-size:var(--fs-sm);color:var(--txt);background:var(--field-bg-hover);border:1px solid var(--brand-500);border-radius:var(--r-xs);box-shadow:var(--ring)}.jl-toolbar{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);margin-bottom:var(--sp-3);border-radius:var(--r-md);flex-wrap:wrap;display:flex}.jl-toolbar__sel{align-items:center;gap:var(--sp-2);padding:0 var(--sp-2);height:var(--h-field-sm);font-size:var(--fs-xs);background:color-mix(in srgb, var(--brand-500) 16%, transparent);border-radius:var(--r-sm);color:var(--brand-700);font-weight:600;display:inline-flex}[data-theme=dark] .jl-toolbar__sel{color:var(--brand-100)}.jl-breadcrumb{align-items:center;gap:var(--sp-1);font-size:var(--fs-xs);color:var(--txt-3);flex-wrap:wrap;display:flex}.jl-breadcrumb a{color:var(--txt-2);border-radius:var(--r-xs);padding:2px 4px;text-decoration:none}.jl-breadcrumb a:hover{color:var(--txt);background:var(--glass-bg-thin)}.jl-breadcrumb svg{opacity:.5;width:13px;height:13px}.jl-breadcrumb [aria-current]{color:var(--txt);font-weight:600}.jl-tabs{border-bottom:1px solid var(--bd);margin-bottom:var(--sp-4);align-items:flex-end;gap:2px;display:flex;overflow-x:auto}.jl-tab{align-items:center;gap:var(--sp-2);height:calc(var(--h-field) + 2px);padding:0 var(--sp-4);font:inherit;font-size:var(--fs-sm);color:var(--txt-3);border-radius:var(--r-md) var(--r-md) 0 0;cursor:pointer;white-space:nowrap;transition:all var(--t-fast);background:0 0;border:1px solid #0000;border-bottom:0;font-weight:600;display:inline-flex;position:relative}.jl-tab:hover{color:var(--txt);background:var(--glass-bg-thin)}.jl-tab[aria-selected=true]{color:var(--brand-700);background:var(--glass-bg-strong);border-color:var(--glass-border);-webkit-backdrop-filter:blur(var(--jl-blur));backdrop-filter:blur(var(--jl-blur));box-shadow:0 -2px 8px -4px #101a241f}[data-theme=dark] .jl-tab[aria-selected=true]{color:var(--brand-100)}.jl-tab[aria-selected=true]:after{content:"";left:var(--sp-3);right:var(--sp-3);background:linear-gradient(90deg, var(--brand-500), var(--accent-500));border-radius:var(--r-pill);height:2.5px;position:absolute;top:0}.jl-tab svg{width:15px;height:15px}.jl-tabpanel[hidden]{display:none}.jl-stepper-nav{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.jl-step{align-items:center;gap:var(--sp-2);display:flex}.jl-step__dot{width:calc(26px * var(--jl-density));height:calc(26px * var(--jl-density));font-size:var(--fs-xs);background:var(--surface-2);color:var(--txt-3);border:1.5px solid var(--bd-strong);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.jl-step__lbl{font-size:var(--fs-xs);color:var(--txt-3);font-weight:600}.jl-step.is-done .jl-step__dot{background:var(--ok-500);border-color:var(--ok-500);color:#fff}.jl-step.is-done .jl-step__lbl{color:var(--txt-2)}.jl-step.is-current .jl-step__dot{background:linear-gradient(178deg, var(--brand-500), var(--brand-700));border-color:var(--brand-700);color:#fff;box-shadow:var(--ring)}.jl-step.is-current .jl-step__lbl{color:var(--txt)}.jl-step__line{width:calc(28px * var(--jl-density));background:var(--bd-strong);border-radius:var(--r-pill);height:2px}.jl-step.is-done+.jl-step__line,.jl-step__line.is-done{background:var(--ok-500)}.jl-step__dot svg{width:14px;height:14px}.jl-accordion{border:1px solid var(--glass-border-soft);border-radius:var(--r-md);overflow:hidden}.jl-accordion+.jl-accordion{margin-top:var(--sp-2)}.jl-accordion>summary{align-items:center;gap:var(--sp-2);padding:var(--sp-3);cursor:pointer;font-size:var(--fs-sm);background:var(--glass-bg-thin);font-weight:650;list-style:none;display:flex}.jl-accordion>summary::-webkit-details-marker{display:none}.jl-accordion>summary:hover{background:var(--glass-bg)}.jl-accordion>summary svg.jl-chev{width:15px;height:15px;transition:transform var(--t-fast)}.jl-accordion[open]>summary svg.jl-chev{transform:rotate(90deg)}.jl-accordion__body{padding:var(--sp-4) var(--sp-3);border-top:1px solid var(--bd)}.jl-pagination{align-items:center;gap:var(--sp-1);font-size:var(--fs-xs);display:flex}.jl-pagination button{min-width:var(--h-field-sm);height:var(--h-field-sm);padding:0 var(--sp-2);font:inherit;font-size:var(--fs-xs);color:var(--txt-2);border-radius:var(--r-sm);cursor:pointer;transition:all var(--t-fast);background:0 0;border:1px solid #0000;font-weight:600}.jl-pagination button:hover{background:var(--glass-bg);color:var(--txt)}.jl-pagination button[aria-current=page]{background:linear-gradient(178deg, var(--brand-500), var(--brand-700));border-color:var(--brand-700);color:#fff}.jl-pagination button:disabled{opacity:.35;cursor:not-allowed}.jl-menu{min-width:210px;padding:var(--sp-1);border-radius:var(--r-md);box-shadow:var(--shadow-3), var(--shadow-inset)}.jl-menu__item{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-2);font:inherit;font-size:var(--fs-sm);color:var(--txt);text-align:left;border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;display:flex}.jl-menu__item:hover{background:color-mix(in srgb, var(--brand-500) 14%, transparent)}.jl-menu__item svg{width:15px;height:15px;color:var(--txt-3);flex:none}.jl-menu__item kbd{margin-left:auto}.jl-menu__item--danger{color:var(--err-700)}.jl-menu__item--danger svg{color:var(--err-500)}.jl-menu__sep{background:var(--bd);height:1px;margin:var(--sp-1) 0}.jl-menu__label{padding:var(--sp-2) var(--sp-2) var(--sp-1);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.07em;color:var(--txt-3);font-weight:700}.jl-badge{border-radius:var(--r-pill);font-size:var(--fs-2xs);letter-spacing:.015em;white-space:nowrap;background:var(--surface-sunken);color:var(--txt-2);border:1px solid var(--bd);align-items:center;gap:4px;padding:2px 8px;font-weight:700;display:inline-flex}.jl-badge svg{width:11px;height:11px}.jl-badge:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:6px;height:6px}.jl-badge--nodot:before{display:none}.jl-badge--ok{background:var(--ok-100);color:var(--ok-700);border-color:color-mix(in srgb, var(--ok-500) 34%, transparent)}.jl-badge--warn{background:var(--warn-100);color:var(--warn-700);border-color:color-mix(in srgb, var(--warn-500) 34%, transparent)}.jl-badge--err{background:var(--err-100);color:var(--err-700);border-color:color-mix(in srgb, var(--err-500) 34%, transparent)}.jl-badge--info{background:var(--info-100);color:var(--info-700);border-color:color-mix(in srgb, var(--brand-500) 34%, transparent)}.jl-badge--accent{background:var(--accent-100);color:var(--accent-800);border-color:color-mix(in srgb, var(--accent-500) 44%, transparent)}.jl-badge--count{background:var(--err-500);color:#fff;border-color:#0000;justify-content:center;min-width:18px;padding:1px 5px}.jl-badge--count:before{display:none}.jl-kpis{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.jl-kpi{padding:var(--sp-4);border-radius:var(--r-lg)}.jl-kpi__top{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);display:flex}.jl-kpi__icon{border-radius:var(--r-sm);background:color-mix(in srgb, var(--brand-500) 16%, transparent);width:32px;height:32px;color:var(--brand-700);border:1px solid color-mix(in srgb, var(--brand-500) 24%, transparent);flex:none;place-items:center;display:grid}[data-theme=dark] .jl-kpi__icon{color:var(--brand-100)}.jl-kpi__icon svg{width:17px;height:17px}.jl-kpi__icon--accent{background:color-mix(in srgb, var(--accent-500) 26%, transparent);color:var(--accent-800);border-color:color-mix(in srgb, var(--accent-500) 40%, transparent)}.jl-kpi__icon--ok{background:var(--ok-100);color:var(--ok-700);border-color:color-mix(in srgb, var(--ok-500) 30%, transparent)}.jl-kpi__icon--err{background:var(--err-100);color:var(--err-700);border-color:color-mix(in srgb, var(--err-500) 30%, transparent)}.jl-kpi__lbl{font-size:var(--fs-xs);color:var(--txt-3);font-weight:600}.jl-kpi__val{font-family:var(--jl-font-display);font-size:var(--fs-2xl);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:750}.jl-kpi__val small{font-size:var(--fs-md);color:var(--txt-3);font-weight:600}.jl-kpi__delta{font-size:var(--fs-xs);align-items:center;gap:3px;font-weight:650;display:inline-flex}.jl-kpi__delta svg{width:13px;height:13px}.jl-kpi__delta--up{color:var(--ok-700)}.jl-kpi__delta--down{color:var(--err-700)}.jl-dl{gap:var(--sp-2) var(--sp-4);font-size:var(--fs-sm);grid-template-columns:auto 1fr;margin:0;display:grid}.jl-dl dt{color:var(--txt-3);font-weight:600;font-size:var(--fs-xs);align-self:center}.jl-dl dd{margin:0;font-weight:550}.jl-timeline{padding:0 0 0 var(--sp-5);margin:0;list-style:none;position:relative}.jl-timeline:before{content:"";background:var(--bd-strong);border-radius:var(--r-pill);width:2px;position:absolute;top:6px;bottom:6px;left:7px}.jl-timeline li{padding-bottom:var(--sp-4);position:relative}.jl-timeline li:last-child{padding-bottom:0}.jl-timeline li:before{content:"";left:calc(var(--sp-5) * -1 + 2px);background:var(--brand-500);border:2.5px solid var(--page-2);width:12px;height:12px;box-shadow:0 0 0 1px var(--bd-strong);border-radius:50%;position:absolute;top:4px}.jl-timeline li.is-ok:before{background:var(--ok-500)}.jl-timeline li.is-err:before{background:var(--err-500)}.jl-timeline__time{font-size:var(--fs-2xs);color:var(--txt-3);font-variant-numeric:tabular-nums}.jl-timeline__ttl{font-size:var(--fs-sm);font-weight:650}.jl-progress{background:var(--surface-sunken);border-radius:var(--r-pill);height:7px;overflow:hidden;box-shadow:inset 0 1px 2px #101a241f}.jl-progress>i{border-radius:var(--r-pill);background:linear-gradient(90deg, var(--brand-500), var(--accent-500));height:100%;transition:width var(--t-slow);display:block}.jl-progress--ok>i{background:linear-gradient(90deg, var(--ok-500), color-mix(in oklab, var(--ok-500) 60%, var(--accent-500)))}.jl-progress--err>i{background:linear-gradient(90deg, var(--err-500), var(--warn-500))}.jl-progress--indeterminate>i{animation:1.3s ease-in-out infinite jl-slide;width:40%!important}@keyframes jl-slide{0%{margin-left:-40%}to{margin-left:100%}}.jl-skel{border-radius:var(--r-xs);background:linear-gradient(100deg, var(--surface-sunken) 30%, var(--glass-bg) 50%, var(--surface-sunken) 70%);background-size:220% 100%;height:12px;animation:1.4s linear infinite jl-shimmer}@keyframes jl-shimmer{to{background-position:-220% 0}}.jl-spin{border:2px solid var(--bd-strong);border-top-color:var(--brand-600);border-radius:50%;width:18px;height:18px;animation:.65s linear infinite jl-spin}.jl-avatar{width:calc(30px * var(--jl-density));height:calc(30px * var(--jl-density));font-size:var(--fs-xs);letter-spacing:.02em;background:linear-gradient(140deg, var(--brand-700), var(--brand-900));color:#fff;border:1.5px solid var(--glass-border);box-shadow:var(--shadow-1);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.jl-avatar--accent{background:linear-gradient(140deg, var(--accent-300), var(--accent-600));color:#35290a}.jl-avatar--olive{background:linear-gradient(140deg, var(--olive-700), color-mix(in oklab, var(--jl-olive) 40%, var(--ink)));color:#fff}.jl-avatars{display:flex}.jl-avatars .jl-avatar+.jl-avatar{margin-left:-9px}.jl-alert{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border:1px solid var(--bd);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--jl-blur));backdrop-filter:blur(var(--jl-blur));border-left:3px solid var(--brand-500);font-size:var(--fs-sm);display:flex}.jl-alert>svg{width:18px;height:18px;color:var(--brand-600);flex:none;margin-top:1px}.jl-alert__ttl{margin-bottom:2px;font-weight:700}.jl-alert__body{flex:1;min-width:0}.jl-alert__body>:last-child{margin-bottom:0}.jl-alert--ok{border-left-color:var(--ok-500);background:color-mix(in srgb, var(--ok-500) 9%, var(--glass-bg))}.jl-alert--ok>svg{color:var(--ok-700)}.jl-alert--warn{border-left-color:var(--warn-500);background:color-mix(in srgb, var(--warn-500) 10%, var(--glass-bg))}.jl-alert--warn>svg{color:var(--warn-700)}.jl-alert--err{border-left-color:var(--err-500);background:color-mix(in srgb, var(--err-500) 9%, var(--glass-bg))}.jl-alert--err>svg{color:var(--err-700)}.jl-toasts{right:var(--sp-4);bottom:var(--sp-4);z-index:90;gap:var(--sp-2);flex-direction:column;max-width:380px;display:flex;position:fixed}.jl-toast{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);box-shadow:var(--shadow-4), var(--shadow-inset);font-size:var(--fs-sm);animation:jl-toast-in var(--t-slow) both;align-items:flex-start;display:flex}@keyframes jl-toast-in{0%{opacity:0;transform:translateY(12px)scale(.97)}}.jl-toast svg{flex:none;width:17px;height:17px}.jl-toast--ok svg{color:var(--ok-700)}.jl-toast--err svg{color:var(--err-700)}.jl-modal-backdrop{z-index:80;background:color-mix(in srgb, var(--ink) 42%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:var(--sp-4);animation:jl-fade var(--t-med) both;place-items:center;display:grid;position:fixed;inset:0}@keyframes jl-fade{0%{opacity:0}}.jl-modal{border-radius:var(--r-xl);width:min(560px,100%);max-height:86vh;box-shadow:var(--shadow-4), var(--shadow-inset);animation:jl-pop var(--t-slow) both;overflow:auto}.jl-modal--lg{width:min(860px,100%)}@keyframes jl-pop{0%{opacity:0;transform:translateY(16px)scale(.96)}}.jl-modal__head{align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--bd);display:flex}.jl-modal__body{padding:var(--sp-5)}.jl-modal__foot{gap:var(--sp-2);padding:var(--sp-3) var(--sp-5) var(--sp-4);border-top:1px solid var(--bd);justify-content:flex-end;display:flex}.jl-drawer{z-index:85;border-radius:var(--r-xl) 0 0 var(--r-xl);width:min(440px,92vw);box-shadow:var(--shadow-4);animation:jl-slide-in var(--t-slow) both;border-right:0;position:fixed;top:0;bottom:0;right:0;overflow:auto}@keyframes jl-slide-in{0%{opacity:0;transform:translate(24px)}}.jl-tip{display:inline-flex;position:relative}.jl-tip__bubble{padding:var(--sp-1) var(--sp-2);border-radius:var(--r-xs);font-size:var(--fs-2xs);white-space:nowrap;background:color-mix(in srgb, var(--ink) 92%, transparent);color:#fff;box-shadow:var(--shadow-2);opacity:0;pointer-events:none;transition:opacity var(--t-fast), transform var(--t-fast);z-index:50;font-weight:500;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.jl-tip:hover .jl-tip__bubble,.jl-tip:focus-within .jl-tip__bubble{opacity:1;transform:translate(-50%)translateY(-2px)}.jl-empty{place-items:center;gap:var(--sp-2);padding:var(--sp-8) var(--sp-4);text-align:center;color:var(--txt-3);display:grid}.jl-empty svg{opacity:.45;width:42px;height:42px}.jl-empty strong{color:var(--txt);font-size:var(--fs-lg)}.jl-plan{--plan-res:calc(196px * var(--jl-density));--plan-col:calc(104px * var(--jl-density));--plan-row:calc(58px * var(--jl-density));--plan-head:calc(42px * var(--jl-density));border:1px solid var(--glass-border-soft);border-radius:var(--r-lg);background:var(--surface);max-height:68vh;box-shadow:var(--shadow-1);position:relative;overflow:auto}.jl-plan__grid{grid-template-columns:var(--plan-res) repeat(var(--plan-cols,7), minmax(0, 1fr));grid-template-rows:var(--plan-head);grid-auto-rows:var(--plan-row);min-width:calc(var(--plan-res) + var(--plan-cols,7) * var(--plan-col));display:grid;position:relative}.jl-plan__corner{z-index:6;height:var(--plan-head);align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);font-size:var(--fs-xs);color:var(--accent-800);background:color-mix(in srgb, var(--jl-accent) 72%, white);border-right:1px solid color-mix(in srgb, var(--accent-700) 26%, transparent);border-bottom:1px solid color-mix(in srgb, var(--accent-700) 30%, transparent);grid-area:1/1;font-weight:700;display:flex;position:sticky;top:0;left:0}.jl-plan__th{z-index:4;height:var(--plan-head);padding:0 var(--sp-2);font-size:var(--fs-xs);color:var(--accent-800);background:color-mix(in srgb, var(--jl-accent) 72%, white);-webkit-backdrop-filter:blur(14px)saturate(150%);backdrop-filter:blur(14px)saturate(150%);border-bottom:1px solid color-mix(in srgb, var(--accent-700) 30%, transparent);border-right:1px solid color-mix(in srgb, var(--accent-700) 16%, transparent);flex-direction:column;grid-row:1;justify-content:center;font-weight:700;display:flex;position:sticky;top:0}[data-theme=dark] .jl-plan__corner,[data-theme=dark] .jl-plan__th{background:color-mix(in srgb, var(--jl-accent) 22%, #16202b);color:var(--accent-800)}.jl-plan__th small{font-weight:500;font-size:var(--fs-2xs);opacity:.8}.jl-plan__th.is-off{background:color-mix(in srgb, var(--jl-accent) 40%, white)}[data-theme=dark] .jl-plan__th.is-off{background:color-mix(in srgb, var(--jl-accent) 12%, #16202b)}.jl-plan__th.is-today{box-shadow:inset 0 -3px 0 var(--brand-700)}.jl-plan__res{z-index:3;align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);background:var(--surface);border-right:1px solid var(--bd-strong);border-bottom:1px solid var(--bd);grid-column:1;display:flex;position:sticky;left:0}.jl-plan__res svg{width:17px;height:17px;color:var(--brand-700);flex:none}[data-theme=dark] .jl-plan__res svg{color:var(--brand-200)}.jl-plan__res-body{flex:1;min-width:0;display:block}.jl-plan__res-name{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:650;display:block;overflow:hidden}.jl-plan__res-meta{font-size:var(--fs-2xs);color:var(--txt-3);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.jl-plan__cap{border-radius:var(--r-pill);background:var(--surface-sunken);height:4px;margin-top:3px;display:block;overflow:hidden}.jl-plan__cap>i{background:var(--ok-500);border-radius:var(--r-pill);height:100%;display:block}.jl-plan__cap.is-warn>i{background:var(--warn-500)}.jl-plan__cap.is-full>i{background:var(--err-500)}.jl-plan__slot{border-right:1px solid var(--bd);border-bottom:1px solid var(--bd)}.jl-plan__slot.is-off{background:var(--surface-sunken)}.jl-plan__slot.is-today{background:color-mix(in srgb, var(--brand-500) 7%, transparent)}.jl-plan__slot:hover{background:color-mix(in srgb, var(--brand-500) 12%, transparent);cursor:cell}.jl-event{--ev:var(--brand-500);z-index:2;min-width:0;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm);border:1px solid color-mix(in srgb, var(--ev) 46%, transparent);border-left:3px solid var(--ev);background:color-mix(in srgb, var(--ev) 17%, var(--glass-bg-strong));-webkit-backdrop-filter:blur(8px)saturate(140%);backdrop-filter:blur(8px)saturate(140%);box-shadow:var(--shadow-1), inset 0 1px 0 #ffffff4d;cursor:grab;text-align:left;font:inherit;color:var(--txt);transition:transform var(--t-fast), box-shadow var(--t-fast);align-self:center;margin:4px 5px;overflow:hidden}.jl-event:hover{box-shadow:var(--shadow-2);z-index:3;transform:translateY(-1px)}.jl-event:active{cursor:grabbing}.jl-event__ttl{font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:650;line-height:1.25;display:block;overflow:hidden}.jl-event__meta{font-size:var(--fs-2xs);color:var(--txt-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.jl-event--prod{--ev:var(--brand-500)}.jl-event--livr{--ev:var(--olive-500)}.jl-event--equipe{--ev:var(--accent-600)}.jl-event--ok{--ev:var(--ok-500)}.jl-event--warn{--ev:var(--warn-500)}.jl-event--alert{--ev:var(--err-500)}.jl-event--absence{--ev:var(--txt-3);background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--txt-3) 16%, transparent) 0 5px, transparent 5px 11px), var(--glass-bg-thin);cursor:not-allowed}.jl-event{position:relative}.jl-event__badge{justify-content:center;min-width:15px;height:15px;padding:0;font-size:9.5px;line-height:1;position:absolute;top:3px;right:3px}.jl-event:has(.jl-event__badge) .jl-event__ttl{padding-right:18px}.jl-plan__now{top:var(--plan-head);background:var(--err-500);z-index:5;pointer-events:none;width:2px;position:absolute;bottom:0}.jl-plan__now:before{content:"";background:var(--err-500);border-radius:50%;width:10px;height:10px;position:absolute;top:0;left:-4px}.jl-plan__legend{gap:var(--sp-3);font-size:var(--fs-2xs);color:var(--txt-2);flex-wrap:wrap;display:flex}.jl-plan__legend span{align-items:center;gap:5px;display:inline-flex}.jl-plan__legend i{border:1px solid color-mix(in srgb, var(--lg,var(--brand-500)) 50%, transparent);background:color-mix(in srgb, var(--lg,var(--brand-500)) 34%, transparent);border-radius:3px;width:11px;height:11px}.jl-shelf{align-items:center;gap:var(--sp-1);min-height:var(--h-field);padding:var(--sp-1) var(--sp-2);border:1.5px dashed var(--bd-strong);border-radius:var(--r-sm);background:var(--glass-bg-thin);flex-wrap:wrap;display:flex}.jl-shelf.is-over{border-color:var(--brand-500);background:color-mix(in srgb, var(--brand-500) 10%, transparent)}.jl-shelf:empty:after{content:attr(data-empty);font-size:var(--fs-2xs);color:var(--txt-3);padding:0 var(--sp-1)}.jl-dim{height:calc(24px * var(--jl-density));padding:0 var(--sp-2) 0 5px;border-radius:var(--r-xs);font-size:var(--fs-2xs);white-space:nowrap;background:color-mix(in srgb, var(--brand-500) 16%, transparent);border:1px solid color-mix(in srgb, var(--brand-500) 30%, transparent);color:var(--brand-800);cursor:grab;align-items:center;gap:5px;font-weight:650;display:inline-flex}[data-theme=dark] .jl-dim{color:var(--brand-100)}.jl-dim svg{opacity:.65;width:13px;height:13px}.jl-dim--mes{background:color-mix(in srgb, var(--accent-500) 30%, transparent);border-color:color-mix(in srgb, var(--accent-600) 42%, transparent);color:var(--accent-800)}[data-theme=dark] .jl-dim--mes{background:color-mix(in srgb, var(--jl-accent) 18%, transparent);color:color-mix(in oklab, var(--jl-accent) 88%, white)}.jl-dim--off{background:var(--surface-sunken);border-color:var(--bd);color:var(--txt-2)}.jl-dim button{cursor:pointer;color:inherit;opacity:.55;background:0 0;border:0;place-items:center;padding:0;display:grid}.jl-dim button:hover{opacity:1}.jl-pivotwrap{border:1px solid var(--glass-border-soft);border-radius:var(--r-lg);background:var(--surface);max-height:66vh;box-shadow:var(--shadow-1);overflow:auto}.jl-pivot{border-collapse:separate;border-spacing:0;font-size:var(--fs-sm);width:100%;min-width:max-content}.jl-pivot th,.jl-pivot td{padding:0 var(--sp-3);height:var(--h-row);white-space:nowrap}.jl-pivot thead th{z-index:3;font-size:var(--fs-xs);color:var(--accent-800);background:color-mix(in srgb, var(--jl-accent) 72%, white);-webkit-backdrop-filter:blur(14px)saturate(150%);backdrop-filter:blur(14px)saturate(150%);border-bottom:1px solid color-mix(in srgb, var(--accent-700) 26%, transparent);border-right:1px solid color-mix(in srgb, var(--accent-700) 16%, transparent);text-align:right;font-weight:700;position:sticky}[data-theme=dark] .jl-pivot thead th{background:color-mix(in srgb, var(--jl-accent) 22%, #16202b)}.jl-pivot thead tr:first-child th{text-align:center;top:0}.jl-pivot thead tr:nth-child(2) th{top:var(--h-row)}.jl-pivot__corner{left:0;z-index:5!important;text-align:left!important;border-right:1px solid color-mix(in srgb, var(--accent-700) 30%, transparent)!important}.jl-pivot thead th.is-total,.jl-pivot td.is-total{background:color-mix(in srgb, var(--brand-500) 16%, white);color:var(--brand-800)}[data-theme=dark] .jl-pivot thead th.is-total,[data-theme=dark] .jl-pivot td.is-total{background:color-mix(in srgb, var(--brand-500) 22%, #16202b);color:var(--brand-100)}.jl-pivot tbody th{z-index:2;text-align:left;background:var(--surface);border-right:1px solid var(--bd-strong);border-bottom:1px solid var(--bd);font-weight:550;position:sticky;left:0}.jl-pivot tbody td{text-align:right;font-family:var(--jl-font-num);font-variant-numeric:tabular-nums;border-bottom:1px solid var(--bd);border-right:1px solid color-mix(in srgb, var(--bd) 55%, transparent)}.jl-pivot tbody tr:hover td{background:color-mix(in srgb, var(--brand-500) 9%, transparent)}.jl-pivot tbody tr:hover th{background:color-mix(in srgb, var(--brand-500) 11%, var(--surface))}.jl-pivot tr.is-group th{font-weight:700;font-size:var(--fs-sm);background:color-mix(in srgb, var(--brand-500) 11%, var(--surface))}.jl-pivot tr.is-group td{background:color-mix(in srgb, var(--brand-500) 9%, transparent);font-weight:700}.jl-pivot .jl-pivot__toggle{align-items:center;gap:var(--sp-2);cursor:pointer;font:inherit;font-weight:inherit;color:inherit;background:0 0;border:0;padding:0;display:inline-flex}.jl-pivot .jl-pivot__toggle svg{width:14px;height:14px;transition:transform var(--t-fast)}.jl-pivot tr.is-group[aria-expanded=true] .jl-pivot__toggle svg{transform:rotate(90deg)}.jl-pivot tbody th.is-child{padding-left:calc(var(--sp-6) + 2px);color:var(--txt-2)}.jl-pivot tr.is-sub th,.jl-pivot tr.is-sub td{background:color-mix(in srgb, var(--brand-500) 15%, var(--surface));border-top:1.5px solid color-mix(in srgb, var(--brand-700) 34%, transparent);border-bottom:1px solid var(--bd-strong);font-weight:700}.jl-pivot tfoot th,.jl-pivot tfoot td{z-index:4;font-weight:750;font-size:var(--fs-sm);background:color-mix(in srgb, var(--brand-500) 24%, white);border-top:2px solid var(--bd-strong);text-align:right;position:sticky;bottom:0}.jl-pivot tfoot th{z-index:5;text-align:left;left:0}[data-theme=dark] .jl-pivot tfoot th,[data-theme=dark] .jl-pivot tfoot td{background:color-mix(in srgb, var(--brand-500) 30%, #16202b)}.jl-heat{background:color-mix(in srgb, var(--jl-accent) calc(var(--h,0) * 62%), transparent)!important}[data-theme=dark] .jl-heat{background:color-mix(in srgb, var(--jl-accent) calc(var(--h,0) * 30%), #131c26)!important}.jl-pivot td.is-nil{color:var(--txt-3)}.jl-pivot .jl-var{font-size:var(--fs-2xs);font-weight:600;line-height:1.1;display:block}.jl-pivot .jl-var--up{color:var(--ok-700)}.jl-pivot .jl-var--down{color:var(--err-700)}[data-theme=dark] .jl-pivot .jl-var--up{color:color-mix(in oklab, var(--ok-500) 40%, white)}[data-theme=dark] .jl-pivot .jl-var--down{color:color-mix(in oklab, var(--err-500) 44%, white)}.jl-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.jl-mt-0{margin-top:0}.jl-mt-2{margin-top:var(--sp-2)}.jl-mt-3{margin-top:var(--sp-3)}.jl-mt-4{margin-top:var(--sp-4)}.jl-mt-5{margin-top:var(--sp-5)}.jl-mb-0{margin-bottom:0}.jl-mb-2{margin-bottom:var(--sp-2)}.jl-mb-3{margin-bottom:var(--sp-3)}.jl-mb-4{margin-bottom:var(--sp-4)}.jl-txt-2{color:var(--txt-2)}.jl-txt-3{color:var(--txt-3)}.jl-ok{color:var(--ok-700)}.jl-warn{color:var(--warn-700)}.jl-err{color:var(--err-700)}.jl-right{text-align:right}.jl-center{text-align:center}.jl-w-auto{width:auto}.jl-nowrap{white-space:nowrap}.jl-bold{font-weight:700}.jl-semi{font-weight:600}.jl-upper{text-transform:uppercase;letter-spacing:.06em;font-size:var(--fs-2xs);font-weight:700}@media print{.jl-backdrop,.jl-fab,.jl-toasts,.jl-tip__bubble{display:none!important}body{background:#fff!important}.jl-glass,.jl-glass-strong,.jl-glass-thin,.jl-panel,.jl-card,.jl-kpi,.jl-menu,.jl-modal,.jl-drawer,.jl-toolbar,.jl-alert,.jl-toast{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;background:#fff!important;border:1px solid #b6bcc2!important}.jl-sheen:after{content:none!important;display:none!important}.jl-topbar{color:var(--ink)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;background:#fff!important;border-bottom:1.5px solid #b6bcc2!important;position:static!important}.jl-sidebar{display:none!important}.jl-app{grid-template-columns:1fr!important}.jl-event{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;background:#fff!important}.jl-tablewrap,.jl-pivotwrap,.jl-plan{max-height:none!important;box-shadow:none!important;overflow:visible!important}.jl-table thead th,.jl-pivot thead th,.jl-plan__th,.jl-plan__corner{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;position:static!important}.jl-table tbody tr .jl-actions .jl-btn{display:none!important}}.gmao-head{justify-content:space-between;align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.gmao-head__actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.gmao-mono{font-family:var(--jl-font-mono,ui-monospace, SFMono-Regular, Consolas, monospace);font-size:.92em}.gmao-link{color:var(--brand-700);cursor:pointer;font-weight:600;font:inherit;background:0 0;border:0;padding:0;text-decoration:none}.gmao-link:hover{text-decoration:underline}[data-theme=dark] .gmao-link{color:var(--brand-100)}.gmao-filters{gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;display:grid}.gmao-row-click{cursor:pointer}.gmao-nowrap{white-space:nowrap}.gmao-clip{text-overflow:ellipsis;white-space:nowrap;max-width:28ch;overflow:hidden}.gmao-stack{gap:var(--sp-3);flex-direction:column;display:flex}.gmao-cols{gap:var(--sp-4);grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;display:grid}.gmao-menu-btn,.gmao-scrim{display:none}.gmao-search{width:min(420px,38vw);position:relative}.gmao-search__res{z-index:60;padding:var(--sp-2);max-height:70vh;color:var(--txt);position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.gmao-search__res .jl-menu__item{text-align:left;width:100%}.gmao-search__grp{padding:var(--sp-2) var(--sp-2) var(--sp-1)}.gmao-tree,.gmao-tree ul{margin:0;padding:0;list-style:none}.gmao-tree ul{margin-left:var(--sp-5);border-left:1px dashed var(--bd-strong);padding-left:var(--sp-2)}.gmao-node{align-items:center;gap:var(--sp-2);padding:4px var(--sp-2);border-radius:var(--r-sm);min-height:calc(34px * var(--jl-density));display:flex}.gmao-node:hover{background:var(--glass-bg-thin)}.gmao-node.is-off{opacity:.55}.gmao-node__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.gmao-node__actions{gap:2px;display:flex}.gmao-caret{cursor:pointer;width:22px;height:22px;color:var(--txt-3);border-radius:var(--r-xs);background:0 0;border:0;flex:none;place-items:center;display:grid}.gmao-caret svg{width:14px;height:14px;transition:transform var(--t-fast)}.gmao-caret[aria-expanded=true] svg{transform:rotate(90deg)}.gmao-qr{place-items:center;gap:var(--sp-2);text-align:center;display:grid}.gmao-qr img{width:180px;height:180px;image-rendering:pixelated;border-radius:var(--r-md);border:1px solid var(--bd);background:#fff;padding:8px}.gmao-photos{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(130px,1fr));display:grid}.gmao-photo{aspect-ratio:1;border-radius:var(--r-md);border:1px solid var(--bd);background:var(--surface-sunken);position:relative;overflow:hidden}.gmao-photo img{object-fit:cover;width:100%;height:100%;display:block}.gmao-photo button{position:absolute;top:4px;right:4px}.gmao-quick{gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.gmao-quick .jl-btn{white-space:normal;text-align:left;justify-content:flex-start;min-height:52px;line-height:1.25}.lbl-sheet{flex-wrap:wrap;align-content:flex-start;gap:3mm;display:flex}.lbl{box-sizing:border-box;color:#000;break-inside:avoid;background:#fff;border:1px dashed #9aa5ae;align-items:center;gap:1.5mm;padding:1.5mm;font-family:Arial,Helvetica,sans-serif;display:flex;overflow:hidden}.lbl img{image-rendering:pixelated;flex:none}.lbl__txt{flex-direction:column;justify-content:center;gap:.4mm;min-width:0;line-height:1.15;display:flex}.lbl__code{font-family:Consolas,Courier New,monospace;font-weight:800}.lbl__name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;display:-webkit-box;overflow:hidden}.lbl__site{color:#333}.gmao-steps{gap:var(--sp-2);flex-wrap:wrap;display:flex}@media (width<=900px){.jl-app{grid-template-columns:minmax(0,1fr)}.gmao-menu-btn{display:inline-flex}.jl-sidebar{z-index:55;width:min(300px,86vw);max-height:none;transition:transform var(--t-fast);border-radius:0;margin:0;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.jl-sidebar.is-open{transform:none}.gmao-scrim.is-open{z-index:50;background:#08121c73;display:block;position:fixed;inset:0}.gmao-search{flex:1;width:auto;min-width:0}.gmao-search .jl-search{width:100%}.jl-topbar__sep{display:none}.jl-topbar{gap:var(--sp-2);padding-left:var(--sp-2);padding-right:var(--sp-2)}.jl-topbar__brand span:last-child{display:none}.jl-main{padding:var(--sp-3) var(--sp-3) var(--sp-8)}.gmao-cols{grid-template-columns:minmax(0,1fr)}.jl-btn,.jl-input,.jl-select{min-height:44px}.jl-modal-backdrop{padding:var(--sp-2)}}@media print{.no-print{display:none!important}.jl-main{padding:0!important}.lbl{border:0!important}.lbl-sheet{gap:0!important}.lbl-roll .lbl{break-after:page}}
