@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/ibm-plex-sans-latin-300-normal-b4i7YzLG.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-300-normal-C9Of02-5.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/ibm-plex-sans-greek-300-normal-J-CBqZoJ.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-300-normal-STc8XiDr.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}:root{--c-ink:#0b1220;--c-paper:#fbfaf6;--c-blue:#1e5ba8;--c-gold:#c9a227;--c-paper-deep:#f3f1e9;--c-paper-deeper:#ebe8de;--c-white:#fff;--c-line-faint:#efede4;--c-line:#e4e1d7;--c-line-strong:#d6d2c6;--c-ink-raised:#16202e;--c-ink-line:#243040;--c-slate-700:#313c4a;--c-slate-600:#45515f;--c-slate-500:#5e6a78;--c-slate-400:#828d9a;--c-slate-300:#a7b0bb;--c-blue-strong:#184a89;--c-blue-soft:#e7eef7;--c-blue-border:#b9cce4;--c-gold-strong:#ad8a1e;--c-gold-soft:#f7f0d9;--c-gold-border:#e6d49a;--c-success:#2f7d4f;--c-success-soft:#e5f0e9;--c-success-border:#b7d8c3;--c-warning:#b5791c;--c-warning-soft:#f6eedc;--c-warning-border:#e6cf9e;--c-danger:#c0392b;--c-danger-soft:#f7e7e4;--c-danger-border:#e6b6ae;--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-4xl:3rem;--text-5xl:4rem;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.55;--leading-relaxed:1.7;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.04em;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--space-10:8rem;--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-full:999px;--border-width:1px;--border-width-strong:1.5px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--duration-fast:.12s;--duration-base:.2s;--duration-slow:.36s;--container-max:1200px;--container-narrow:720px;--measure:66ch;--header-height:3.5rem;--z-base:0;--z-raised:10;--z-sticky:100;--z-overlay:1000;--z-modal:1100;--z-toast:1200;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:var(--c-paper);--color-surface:var(--c-paper);--color-surface-sunken:var(--c-paper-deep);--color-surface-raised:var(--c-white);--color-text:var(--c-ink);--color-text-secondary:var(--c-slate-500);--color-text-muted:var(--c-slate-400);--color-text-on-accent:var(--c-white);--color-border:var(--c-line);--color-border-strong:var(--c-line-strong);--color-border-faint:var(--c-line-faint);--color-accent:var(--c-blue);--color-accent-hover:var(--c-blue-strong);--color-accent-text:var(--c-blue);--color-accent-soft:var(--c-blue-soft);--color-accent-border:var(--c-blue-border);--color-gold:var(--c-gold);--color-gold-soft:var(--c-gold-soft);--color-gold-border:var(--c-gold-border);--color-focus:var(--c-blue);--color-scrim:color-mix(in srgb, var(--c-ink) 42%, transparent);--color-success:var(--c-success);--color-success-soft:var(--c-success-soft);--color-success-border:var(--c-success-border);--color-warning:var(--c-warning);--color-warning-soft:var(--c-warning-soft);--color-warning-border:var(--c-warning-border);--color-danger:var(--c-danger);--color-danger-soft:var(--c-danger-soft);--color-danger-border:var(--c-danger-border);--color-text-on-danger:var(--c-white);--selection-bg:var(--c-blue);--selection-text:var(--c-white);--shadow-xs:0 1px 2px #0b12200d;--shadow-sm:0 1px 3px #0b122012, 0 1px 2px #0b12200a;--shadow-md:0 4px 12px #0b122014;--shadow-lg:0 12px 32px #0b12201f;--shadow-focus:0 0 0 3px color-mix(in srgb, var(--color-focus) 32%, transparent)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:var(--c-ink);--color-surface:#0f1825;--color-surface-sunken:#0a111c;--color-surface-raised:var(--c-ink-raised);--color-text:var(--c-paper);--color-text-secondary:var(--c-slate-300);--color-text-muted:#6e7886;--color-text-on-accent:var(--c-ink);--color-border:var(--c-ink-line);--color-border-strong:#324052;--color-border-faint:#1a2533;--color-accent:var(--c-gold);--color-accent-hover:#ddb63e;--color-accent-text:var(--c-gold);--color-accent-soft:#c9a22724;--color-accent-border:#c9a22761;--color-gold:var(--c-gold);--color-gold-soft:#c9a22724;--color-gold-border:#c9a22761;--color-focus:var(--c-gold);--color-scrim:#0000009e;--color-success:#5ab183;--color-success-soft:#5ab18326;--color-success-border:#5ab18357;--color-warning:#d8aa4a;--color-warning-soft:#d8aa4a26;--color-warning-border:#d8aa4a57;--color-danger:#e0796d;--color-danger-soft:#e0796d26;--color-danger-border:#e0796d57;--color-text-on-danger:var(--c-ink);--selection-bg:var(--c-gold);--selection-text:var(--c-ink);--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 3px #00000080, 0 1px 2px #0006;--shadow-md:0 4px 14px #00000080;--shadow-lg:0 14px 36px #0009}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-base:0s;--duration-slow:0s}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-family:var(--font-sans);font-feature-settings:"kern" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-size:var(--text-base);line-height:var(--leading-normal);font-weight:var(--weight-regular);-webkit-text-size-adjust:100%;transition:background-color var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out)}::selection{background:var(--selection-bg);color:var(--selection-text)}h1,h2,h3,h4,h5,h6{font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-normal);color:var(--color-text);text-wrap:balance}h1{font-size:var(--text-3xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}h2{font-size:var(--text-2xl);line-height:var(--leading-tight)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{text-wrap:pretty}p,li{max-width:var(--measure)}a{color:var(--color-accent-text);text-underline-offset:.15em;transition:color var(--duration-fast) var(--ease-out);text-decoration:none}a:hover{text-decoration:underline}strong,b{font-weight:var(--weight-semibold)}small{font-size:var(--text-sm)}code,kbd,samp,pre{font-family:var(--font-mono);font-size:.92em}.tnum,table{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}img,picture,svg,video,canvas{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:where(button,[role=button],a,input,select,textarea,summary):disabled,:where(button,[role=button],a)[aria-disabled=true]{cursor:not-allowed}:focus-visible{outline:var(--border-width-strong) solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-xs)}:focus:not(:focus-visible){outline:none}hr{border:none;border-top:var(--border-width) solid var(--color-border)}::placeholder{color:var(--color-text-muted);opacity:1}.v-container{width:100%;max-width:var(--container-max);padding-inline:var(--space-5);margin-inline:auto}.v-stack{gap:var(--space-4);flex-direction:column;display:flex}.v-row{align-items:center;gap:var(--space-3);display:flex}.v-overline{font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);color:var(--color-text-muted)}.v-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text);border-color:var(--color-border-strong);transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);line-height:1.2;display:inline-flex}.v-btn:hover{border-color:var(--color-text-muted);background:var(--color-surface-sunken)}.v-btn:active{transform:translateY(1px)}.v-btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-on-accent)}.v-btn--primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.v-btn--ghost{color:var(--color-accent-text);background:0 0;border-color:#0000}.v-btn--ghost:hover{background:var(--color-accent-soft);border-color:#0000}.v-btn--danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-text-on-danger)}.v-btn--danger:hover{background:color-mix(in srgb, var(--color-danger), var(--color-text) 15%);border-color:color-mix(in srgb, var(--color-danger), var(--color-text) 15%)}.v-btn:disabled,.v-btn[aria-disabled=true]{opacity:.45;pointer-events:none}.v-btn--pulse{animation:v-pulse 1.8s var(--ease-in-out) infinite}@keyframes v-pulse{0%,to{box-shadow:0 0 4px 0 color-mix(in srgb, var(--color-accent) 20%, transparent)}50%{box-shadow:0 0 18px 4px color-mix(in srgb, var(--color-accent) 65%, transparent)}}@media (prefers-reduced-motion:reduce){.v-btn--pulse{animation:none}}.v-btn--busy{pointer-events:none}.v-btn--busy:before{content:"";border-radius:var(--radius-full);opacity:.9;border:2px solid;border-right-color:#0000;width:.85em;height:.85em;animation:.6s linear infinite v-spin}@keyframes v-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.v-btn--busy:before{animation:none}}.v-field{gap:var(--space-2);flex-direction:column;display:flex}.v-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.v-input{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);background:var(--color-surface-raised);color:var(--color-text);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-sm);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out)}.v-input:hover{border-color:var(--color-text-muted)}.v-input:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus);outline:none}.v-input[aria-invalid=true],.v-field--invalid .v-input{border-color:var(--color-danger)}.v-input[aria-invalid=true]:focus,.v-field--invalid .v-input:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-danger) 32%, transparent)}.v-field__error{font-size:var(--text-xs);color:var(--color-danger)}.v-field__help{font-size:var(--text-xs);color:var(--color-text-muted)}.v-badge{align-items:center;gap:var(--space-1);padding:.15rem var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-full);border:var(--border-width) solid var(--color-border);background:var(--color-surface-sunken);color:var(--color-text-secondary);line-height:1.4;display:inline-flex}.v-badge:before{content:"";border-radius:var(--radius-full);opacity:.85;background:currentColor;width:.45em;height:.45em}.v-badge--accent{color:var(--color-accent-text);background:var(--color-accent-soft);border-color:var(--color-accent-border)}.v-badge--success{color:var(--color-success);background:var(--color-success-soft);border-color:var(--color-success-border)}.v-badge--warning{color:var(--color-warning);background:var(--color-warning-soft);border-color:var(--color-warning-border)}.v-badge--danger{color:var(--color-danger);background:var(--color-danger-soft);border-color:var(--color-danger-border)}.v-card{background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-5)}.v-resource-card{background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out);flex-direction:column;display:flex;position:relative}.v-resource-card:hover,.v-resource-card:focus-within{border-color:var(--color-accent-border)}.v-resource-card__body{gap:var(--space-3);padding:var(--space-4) var(--space-5);flex-direction:column;flex:1;display:flex}.v-resource-card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-height:1.5rem;display:flex}.v-resource-card__open{align-items:flex-start;gap:var(--space-1);text-align:left;background:0 0;border:none;flex-direction:column;padding:0;display:flex}.v-resource-card__open:after{content:"";border-radius:var(--radius-md);position:absolute;inset:0}.v-resource-card__title{font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-snug);transition:color var(--duration-fast) var(--ease-out)}.v-resource-card:hover .v-resource-card__title{color:var(--color-accent-text)}.v-resource-card__sub{font-size:var(--text-xs);color:var(--color-text-muted)}.v-resource-card__contacts{z-index:var(--z-raised);gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex;position:relative}.v-resource-card__contact{font-size:var(--text-sm);color:var(--color-accent-text);text-decoration:none}.v-resource-card__contact:hover{text-decoration:underline}.v-resource-card__meta{gap:var(--space-6);padding-top:var(--space-2);flex-wrap:wrap;margin-top:auto;display:flex}.v-resource-card__meta-label{font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);color:var(--color-text-muted);display:block}.v-resource-card__meta-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-sm)}.v-resource-card__actions{top:var(--space-3);right:var(--space-3);z-index:var(--z-raised);gap:var(--space-1);opacity:0;transition:opacity var(--duration-fast) var(--ease-out);display:flex;position:absolute}.v-resource-card:hover .v-resource-card__actions,.v-resource-card:focus-within .v-resource-card__actions{opacity:1}@media (hover:none){.v-resource-card__actions{opacity:1}}.v-resource-card__action{width:28px;height:28px;color:var(--color-text-secondary);background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);place-items:center;display:grid}.v-resource-card__action:hover{color:var(--color-accent-text);background:var(--color-accent-soft);border-color:var(--color-accent-border)}.v-resource-card__action--danger:hover{color:var(--color-danger);background:var(--color-danger-soft);border-color:var(--color-danger-border)}.v-resource-card--confirming .v-resource-card__actions{opacity:1}.v-confirm{display:inline-flex}.v-confirm__panel{z-index:var(--z-modal);gap:var(--space-3);width:248px;padding:var(--space-4);background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:v-confirm-in var(--duration-fast) var(--ease-out) both;flex-direction:column;display:flex;position:fixed}.v-confirm__text{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-secondary)}.v-confirm__actions{justify-content:flex-end;gap:var(--space-2);display:flex}@keyframes v-confirm-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.v-datepicker{position:relative}.v-datepicker__trigger{text-align:start;cursor:pointer;font:inherit;font-size:var(--text-sm)}.v-datepicker__placeholder{color:var(--color-text-muted)}.v-datepicker__panel{z-index:var(--z-modal);gap:var(--space-2);width:268px;padding:var(--space-3);background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:v-confirm-in var(--duration-fast) var(--ease-out) both;flex-direction:column;display:flex;position:fixed}.v-datepicker__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.v-datepicker__month{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.v-datepicker__nav{width:28px;height:28px;font-size:var(--text-lg);color:var(--color-text-secondary);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;line-height:1;display:flex}.v-datepicker__nav:hover{background:var(--color-surface-sunken);color:var(--color-text)}.v-datepicker__grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.v-datepicker__weekday{height:28px;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.v-datepicker__day{height:32px;font-size:var(--text-sm);color:var(--color-text);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:flex}.v-datepicker__day:hover{background:var(--color-surface-sunken)}.v-datepicker__day--muted{color:var(--color-text-muted)}.v-datepicker__day--today{border-color:var(--color-border-strong)}.v-datepicker__day--selected,.v-datepicker__day--selected:hover{color:var(--color-accent-text);background:var(--color-accent-soft);border-color:var(--color-accent-border)}.v-search-select{display:inline-flex;position:relative}.v-search-select__panel{z-index:var(--z-modal);gap:var(--space-2);width:248px;padding:var(--space-2);background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:v-confirm-in var(--duration-fast) var(--ease-out) both;flex-direction:column;display:flex;position:fixed}.v-search-select__list{gap:var(--space-1);overscroll-behavior:contain;flex-direction:column;max-height:240px;display:flex;overflow-y:auto}.v-search-select__section{flex-direction:column;gap:1px;display:flex}.v-search-select__heading{padding:var(--space-1) var(--space-2);color:var(--color-text-muted)}.v-search-select__option{text-align:start;width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-text);border:var(--border-width) solid transparent;border-radius:var(--radius-sm);cursor:pointer;background:0 0;display:block}.v-search-select__option:hover,.v-search-select__option--active{background:var(--color-surface-sunken)}.v-search-select__option[aria-selected=true]{color:var(--color-accent-text);background:var(--color-accent-soft);border-color:var(--color-accent-border)}.v-search-select__empty{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.v-resource-view{gap:var(--space-5);flex-direction:column;display:flex}.v-resource-view__back{align-items:center;gap:var(--space-1);width:fit-content;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);transition:color var(--duration-fast) var(--ease-out);background:0 0;border:none;padding:0;display:inline-flex}.v-resource-view__back:hover{color:var(--color-accent-text)}.v-resource-view__head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:var(--border-width-strong) solid color-mix(in srgb, var(--color-text) 65%, transparent);flex-wrap:wrap;display:flex}.v-resource-view__title{font-size:var(--text-3xl)}.v-resource-view__actions{gap:var(--space-2);display:flex}.v-resource-view__delete-trigger{color:var(--color-danger)}.v-resource-view__body{gap:var(--space-5);flex-direction:column;display:flex}.v-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.v-table th{text-align:left;font-weight:var(--weight-medium);color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--color-border)}.v-table td{padding:var(--space-3);border-bottom:var(--border-width) solid var(--color-border-faint)}.v-table tbody tr{transition:background-color var(--duration-fast) var(--ease-out)}.v-table tbody tr:hover{background:var(--color-surface-sunken)}.v-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.v-drawer{z-index:var(--z-modal);justify-content:flex-end;display:flex;position:fixed;inset:0}.v-drawer__scrim{background:var(--color-scrim);animation:v-drawer-scrim var(--duration-base) var(--ease-out) both;border:none;position:absolute;inset:0}.v-drawer__panel{background:var(--color-surface-raised);border-left:var(--border-width) solid var(--color-border);width:min(580px,100vw);height:100%;box-shadow:var(--shadow-lg);animation:v-drawer-panel var(--duration-base) var(--ease-out) both;flex-direction:column;display:flex;position:relative}.v-drawer__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5);border-bottom:var(--border-width) solid var(--color-border);display:flex}.v-drawer__title{font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.v-drawer__body{min-height:0;padding:var(--space-5);gap:var(--space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.v-drawer__footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:var(--border-width) solid var(--color-border);background:var(--color-surface);display:flex}@keyframes v-drawer-scrim{0%{opacity:0}to{opacity:1}}@keyframes v-drawer-panel{0%{transform:translate(100%)}to{transform:none}}.v-kbd{font-family:var(--font-mono);font-size:var(--text-xs);border:var(--border-width) solid var(--color-border-strong);border-bottom-width:var(--border-width-strong);border-radius:var(--radius-xs);background:var(--color-surface-sunken);color:var(--color-text-secondary);padding:.1rem .4rem}.v-menu{z-index:var(--z-modal);min-width:180px;padding:var(--space-1);background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);animation:v-confirm-in var(--duration-fast) var(--ease-out);flex-direction:column;gap:1px;display:flex;position:fixed}.v-toast-region{right:var(--space-5);bottom:var(--space-5);z-index:var(--z-toast);gap:var(--space-2);width:min(360px, calc(100vw - 2 * var(--space-5)));pointer-events:none;flex-direction:column;display:flex;position:fixed}.v-toast{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-left:var(--border-width-strong) solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);pointer-events:auto;animation:v-toast-in var(--duration-base) var(--ease-out);display:flex}.v-toast--success{border-left-color:var(--color-success)}.v-toast--error{border-left-color:var(--color-danger)}.v-toast--info{border-left-color:var(--color-accent)}.v-toast__dot{border-radius:var(--radius-full);background:currentColor;flex:none;width:.5rem;height:.5rem;margin-top:.4em}.v-toast--success .v-toast__dot{color:var(--color-success)}.v-toast--error .v-toast__dot{color:var(--color-danger)}.v-toast--info .v-toast__dot{color:var(--color-accent)}.v-toast__message{min-width:0;font-size:var(--text-sm);color:var(--color-text);flex:1}.v-toast__close{border-radius:var(--radius-xs);width:1.25rem;height:1.25rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin:-2px -4px -2px 0;display:inline-flex}.v-toast__close:hover{color:var(--color-text);background:var(--color-surface-sunken)}@keyframes v-toast-in{0%{opacity:0;transform:translateY(8px)}}.v-skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-surface-sunken) 25%, var(--color-surface-raised) 50%, var(--color-surface-sunken) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite v-skeleton-sheen}@keyframes v-skeleton-sheen{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.v-toast{animation:none}.v-skeleton{background:var(--color-surface-sunken);animation:none}}body.gantt-cursor-move,body.gantt-cursor-move *{cursor:move!important}body.gantt-cursor-resize,body.gantt-cursor-resize *{cursor:ew-resize!important}body.gantt-cursor-col,body.gantt-cursor-col *{cursor:col-resize!important}body.gantt-cursor-pointer,body.gantt-cursor-pointer *{cursor:pointer!important}.gantt{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);font-size:var(--text-sm);--gantt-mono:var(--font-mono);overflow:hidden}.gantt__toolbar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:var(--border-width) solid var(--color-border);display:flex}.gantt__zoom{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.gantt__switch+.gantt__zoom{margin-left:var(--space-3)}.gantt__zoom button{appearance:none;padding:var(--space-1) var(--space-3);font:inherit;font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0}.gantt__zoom button+button{border-left:var(--border-width) solid var(--color-border)}.gantt__zoom button[aria-pressed=true]{background:var(--color-accent-soft);color:var(--color-accent-text);font-weight:var(--weight-medium)}.gantt__spacer{flex:auto}.gantt__bulk{gap:var(--space-2);display:inline-flex}.gantt__bulk+.gantt__zoom{margin-left:var(--space-4)}.gantt__switch{appearance:none;cursor:pointer;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;font:inherit;font-size:var(--text-sm);color:var(--color-text-secondary);background:0 0;border:0;display:inline-flex}.gantt__switch:hover{color:var(--color-text)}.gantt__bulk+.gantt__switch{margin-left:var(--space-4)}.gantt__switch-track{box-sizing:border-box;border-radius:var(--radius-full);background:var(--color-surface-sunken);border:var(--border-width) solid var(--color-border-strong);width:32px;height:18px;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);flex:none;position:relative}.gantt__switch-knob{border-radius:var(--radius-full);background:var(--color-text-muted);width:14px;height:14px;transition:transform var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);position:absolute;top:1px;left:1px}.gantt__switch[aria-checked=true] .gantt__switch-track{background:var(--color-accent-soft);border-color:var(--color-accent-border)}.gantt__switch[aria-checked=true] .gantt__switch-knob{background:var(--color-accent);transform:translate(14px)}.gantt__body{align-items:flex-start;max-height:560px;display:flex;overflow:auto}.gantt__frozen{z-index:3;border-right:var(--border-width) solid var(--color-border);background:var(--color-surface-raised);flex:none;position:sticky;left:0}.gantt__scroll{flex:none;position:relative}.gantt__col-resize{z-index:4;cursor:col-resize;width:6px;position:absolute;top:0;bottom:0;right:-3px}.gantt__col-resize:after{content:"";width:var(--border-width-strong);transition:background var(--duration-fast) var(--ease-out);background:0 0;position:absolute;top:0;bottom:0;left:3px}.gantt__col-resize:hover:after{background:var(--color-accent)}.gantt__head{z-index:2;background:color-mix(in srgb, var(--color-surface-raised) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:var(--border-width) solid var(--color-border);position:sticky;top:0}.gantt__frozen .gantt__head{padding:0 var(--space-3) var(--space-2);align-items:flex-end;display:flex}.gantt__head-label{font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);color:var(--color-text-muted)}.gantt__frozen-row{align-items:center;gap:var(--space-2);padding:0 var(--space-2) 0 var(--space-3);border-bottom:var(--border-width) solid var(--color-border-faint);display:flex;position:relative}.gantt__chevron{appearance:none;padding:var(--space-1);color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:0;flex:none;display:inline-flex}.gantt__chevron svg{transition:transform var(--duration-fast) var(--ease-out)}.gantt__chevron[aria-expanded=true] svg{transform:rotate(90deg)}.gantt__pname{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:var(--weight-medium);cursor:default;flex:auto;overflow:hidden}.gantt__pcount{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-2xs);color:var(--color-text-muted);flex:none}.gantt__row-controls{align-items:center;gap:var(--space-1);flex:none;display:inline-flex}.gantt__row-actions{gap:var(--space-1);opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out);flex:none;display:inline-flex}.gantt__frozen-row:hover .gantt__row-actions,.gantt__frozen-row:focus-within .gantt__row-actions,.gantt__frozen-row--confirming .gantt__row-actions,.gantt__task-row:hover .gantt__row-actions,.gantt__task-row:focus-within .gantt__row-actions,.gantt__task-row--confirming .gantt__row-actions{opacity:1;pointer-events:auto}@media (hover:none){.gantt__row-actions{opacity:1;pointer-events:auto}}.gantt__icon-btn{appearance:none;width:24px;height:24px;color:var(--color-text-muted);border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:0;flex:none;place-content:center;padding:0;display:inline-grid}.gantt__icon-btn:hover{color:var(--color-text);background:var(--color-surface-sunken)}.gantt__icon-btn--danger:hover{color:var(--color-danger)}.gantt__task-row{align-items:center;gap:var(--space-2);padding:0 var(--space-2) 0 var(--space-7);border-bottom:var(--border-width) solid var(--color-border-faint);color:var(--color-text-secondary);display:flex;position:relative}.gantt__task-row--dragging{opacity:.4}.gantt__drop-line{top:-1px;left:var(--space-6);right:var(--space-2);background:var(--color-accent);border-radius:var(--radius-full);height:2px;position:absolute}.gantt__grip{appearance:none;color:var(--color-text-muted);cursor:move;touch-action:none;background:0 0;border:0;flex:none;padding:2px;display:inline-flex}.gantt__grip:hover{color:var(--color-text-secondary)}.gantt__check{appearance:none;width:15px;height:15px;color:var(--color-text-on-accent);border:var(--border-width-strong) solid var(--color-border-strong);border-radius:var(--radius-xs);cursor:pointer;background:var(--color-surface-raised);flex:none;place-content:center;padding:0;display:inline-grid}.gantt__check[aria-pressed=true]{background:var(--color-success);border-color:var(--color-success);color:var(--color-text-on-accent)}.gantt__tname{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.gantt__assignee{border-radius:var(--radius-full);appearance:none;width:24px;height:24px;font:inherit;font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.02em;cursor:pointer;background:0 0;flex:none;place-content:center;display:inline-grid}.gantt__assignee--unassigned{color:var(--color-text-muted);border:var(--border-width) dashed var(--color-border-strong)}.gantt__assignee--unassigned:hover{color:var(--color-accent-text);border-color:var(--color-accent-border)}.gantt__assignee--assigned{color:var(--color-accent-text);background:var(--color-accent-soft);border:var(--border-width) solid var(--color-accent-border)}.gantt__tname--done{color:var(--color-text-muted);text-decoration:line-through}.gantt__add{appearance:none;align-items:center;gap:var(--space-2);padding:0 var(--space-3) 0 var(--space-7);font:inherit;font-size:var(--text-xs);color:var(--color-text-muted);cursor:pointer;text-align:left;background:0 0;border:0;width:100%;height:100%;display:inline-flex}.gantt__add:hover{color:var(--color-accent-text)}.gantt__edit{align-items:center;gap:var(--space-1);flex:auto;min-width:0;display:flex}.gantt__edit input{min-width:0;font:inherit;padding:2px var(--space-2);border:var(--border-width) solid var(--color-accent-border);border-radius:var(--radius-xs);background:var(--color-surface-raised);color:var(--color-text);flex:auto}.gantt__edit input:focus{box-shadow:var(--shadow-focus);outline:none}.gantt__timeline,.gantt__axis{position:relative}.gantt__axis-month{top:var(--space-1);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);color:var(--color-text-secondary);font-family:var(--font-mono);position:absolute}.gantt__axis-tick{width:var(--border-width);background:var(--color-border);height:7px;position:absolute;bottom:0}.gantt__axis-tlabel{font-size:var(--text-2xs);color:var(--color-text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;position:absolute;bottom:9px;transform:translate(-50%)}.gantt__gridline{width:var(--border-width);background:var(--color-border-faint);position:absolute;top:0;bottom:0}.gantt__today{border-left:var(--border-width-strong) dotted var(--color-danger);z-index:3;pointer-events:none;width:0;position:absolute;top:0;bottom:0}.gantt__bar{padding:0 var(--space-2);border:var(--border-width) solid var(--bar-edge);background:var(--bar-fill);color:var(--bar-ink,var(--color-text));border-radius:var(--radius-sm);cursor:move;-webkit-user-select:none;user-select:none;touch-action:none;box-sizing:border-box;align-items:center;display:flex;position:absolute}.gantt__bar--not_started{--bar-fill:var(--color-surface-sunken);--bar-edge:var(--color-border-strong);--bar-ink:var(--color-text-secondary)}.gantt__bar--in_progress{--bar-fill:var(--color-accent-soft);--bar-edge:var(--color-accent-border)}.gantt__bar--completed{--bar-fill:var(--color-success-soft);--bar-edge:var(--color-success-border)}.gantt__bar--on_hold{--bar-fill:var(--color-warning-soft);--bar-edge:var(--color-warning-border)}.gantt__bar--neutral{--bar-fill:var(--color-surface-sunken);--bar-edge:var(--color-border-strong);--bar-ink:var(--color-text-secondary)}.gantt__bar--template{cursor:default}.gantt__bar--selected{background:color-mix(in srgb, var(--bar-fill) 74%, var(--color-text) 26%);border-color:var(--bar-edge);border-width:var(--border-width-strong);color:var(--color-text);font-weight:var(--weight-semibold)}.gantt__bar--dep-target{outline:var(--border-width-strong) solid var(--color-accent);outline-offset:1px}.gantt__bar--optimistic{opacity:.55;border-style:dashed}.gantt__bar-label{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);overflow:hidden}.gantt__handle-right{cursor:ew-resize;width:8px;position:absolute;top:0;bottom:0;right:-3px}.gantt__bar:hover .gantt__handle-right:before{content:"";width:var(--border-width-strong);background:var(--bar-edge);border-radius:var(--radius-full);position:absolute;top:2px;bottom:2px;right:3px}.gantt__handle-left{cursor:ew-resize;width:8px;position:absolute;top:0;bottom:0;left:-3px}.gantt__dep-dot{border-radius:var(--radius-full);background:var(--color-surface-raised);border:var(--border-width-strong) solid var(--bar-edge);opacity:0;cursor:pointer;width:10px;height:10px;transition:opacity var(--duration-fast) var(--ease-out);margin-top:-5px;position:absolute;top:50%;right:-5px}.gantt__bar:hover .gantt__dep-dot,.gantt__bar--selected .gantt__dep-dot{opacity:1}.gantt--arrow-selected .gantt__bar:hover .gantt__dep-dot{opacity:0}.gantt--arrow-selected .gantt__bar:hover .gantt__handle-right:before{content:none}.gantt--arrow-selected .gantt__dep-dot,.gantt--arrow-selected .gantt__handle-left,.gantt--arrow-selected .gantt__handle-right{pointer-events:none}.gantt__arrows{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.gantt__arrow{fill:none;stroke:var(--color-border-strong);stroke-width:1.4px}.gantt__arrow-hit{fill:none;stroke:#0000;stroke-width:11px;pointer-events:stroke;cursor:pointer}.gantt__arrow--selected{stroke:var(--color-accent);stroke-width:2px}.gantt__arrowhead{fill:none;stroke:var(--color-border-strong);stroke-width:1.4px}.gantt__arrowhead--selected{stroke:var(--color-accent);stroke-width:2px}.gantt__arrow--linked,.gantt__arrowhead--linked{stroke:var(--color-accent);stroke-width:1.8px}.gantt__arrow--dim,.gantt__arrowhead--dim{opacity:.2}.gantt__arrow-handle{fill:var(--color-accent);stroke:var(--color-surface-raised);stroke-width:1.5px;pointer-events:all;cursor:pointer;touch-action:none}.gantt__dep-ghost{fill:none;stroke:var(--color-accent);stroke-width:1.5px;stroke-dasharray:4 3}.gantt__floater{z-index:var(--z-overlay);pointer-events:none;background:var(--color-text);color:var(--color-surface-raised);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-2xs);white-space:nowrap;position:fixed}.gantt__empty{padding:var(--space-7) var(--space-5);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}.gantt__dep-popover{z-index:var(--z-modal);gap:var(--space-2);width:260px;max-height:calc(100vh - 16px);padding:var(--space-3);background:var(--color-surface-raised);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:fixed}.gantt__dep-popover-label{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.gantt__dep-list{flex-direction:column;gap:1px;min-height:0;display:flex;overflow-y:auto}.gantt__dep-option{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;display:flex}.gantt__dep-option:hover{background:var(--color-surface-sunken)}.gantt__dep-option--disabled{color:var(--color-text-muted);cursor:not-allowed}.gantt__dep-empty{padding:var(--space-1) var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.gantt__dep-actions{justify-content:flex-end;gap:var(--space-2);display:flex}
