.logo[data-v-0ff3e1b0]{width:auto;height:1.25rem;display:block}.login-page[data-v-d1f4b016]{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);min-height:100vh;display:grid}.login-preview[data-v-d1f4b016]{color:#fff;background-image:radial-gradient(circle, #ffffff29 1px, transparent 1px), linear-gradient(160deg, var(--brand-deep) 0%, var(--brand) 55%, color-mix(in srgb, var(--brand) 65%, black) 100%);background-position:11px 11px,50%;background-size:24px 24px,cover;flex-direction:column;justify-content:center;gap:2.75rem;padding:max(2rem,min(5vw,3.5rem));display:flex;position:relative}.preview-eyebrow[data-v-d1f4b016]{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.14em;color:#ffffffbf;margin:0 0 .6rem;font-size:.76rem}.preview-headline[data-v-d1f4b016]{font-family:var(--font-head);color:#fff;margin:0;font-size:max(2.1rem,min(3.6vw,3rem));font-weight:400;line-height:1.08}.preview-board[data-v-d1f4b016]{align-items:flex-end;gap:1rem;display:flex}.preview-col[data-v-d1f4b016]{border-radius:var(--radius-sm);border-top:3px solid color-mix(in srgb, var(--accent) 60%, white 40%);min-width:0;min-height:120px;animation:preview-col-rise-d1f4b016 .6s var(--ease-out) both;animation-delay:calc(var(--i,0) * 90ms + .12s);background:#ffffff1a;flex-direction:column-reverse;flex:1;gap:.5rem;padding:.6rem .5rem;display:flex}.preview-card[data-v-d1f4b016]{height:var(--h,30px);animation:preview-card-rise-d1f4b016 .5s var(--ease-out) both;animation-delay:calc(var(--j,0) * .11s + var(--i,0) * 90ms + .3s);background:#ffffffeb;border-radius:5px;display:block;box-shadow:0 2px 6px #00000026}@keyframes preview-col-rise-d1f4b016{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes preview-card-rise-d1f4b016{0%{opacity:0;transform:translateY(10px)scale(.92)}to{opacity:1;transform:none}}.login-form-side[data-v-d1f4b016]{background:var(--surface);place-items:center;padding:1.5rem;display:grid}.login-card[data-v-d1f4b016]{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-lift);border:1px solid var(--line);border-top:3px solid var(--brand);text-align:center;flex-direction:column;gap:.85rem;width:min(380px,92vw);padding:2.5rem;display:flex}.brand-logo[data-v-d1f4b016]{color:var(--brand);height:1.75rem;margin-bottom:.75rem}.login-card h1[data-v-d1f4b016]{color:var(--ink);margin:0;font-size:2.1rem;line-height:1.1}.subtitle[data-v-d1f4b016]{color:var(--muted);margin:0 0 .75rem;font-size:.95rem}label[data-v-d1f4b016]{font-family:var(--font-label);color:var(--ink);flex-direction:column;gap:.35rem;font-size:.95rem;display:flex}input[data-v-d1f4b016]{border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit;font-family:var(--font-body);background:var(--surface-2);padding:.65rem .8rem;transition:border-color .12s,background .12s}input[data-v-d1f4b016]:focus{border-color:var(--brand);background:var(--card);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent);outline:none}button[data-v-d1f4b016]{border-radius:var(--radius-sm);background:var(--brand);color:#fff;font-family:var(--font-label);letter-spacing:.02em;cursor:pointer;border:none;margin-top:.6rem;padding:.75rem;font-size:1rem;transition:background .12s}button[data-v-d1f4b016]:hover:not(:disabled){background:var(--brand-deep)}button[data-v-d1f4b016]:disabled{opacity:.7;cursor:default}.error[data-v-d1f4b016]{color:var(--danger);margin:0;font-size:.9rem}@media (max-width:880px){.login-page[data-v-d1f4b016]{grid-template-columns:1fr}.login-preview[data-v-d1f4b016]{display:none}}.card[data-v-d0abdddf]{background:var(--card);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);cursor:pointer;border:1px solid color-mix(in srgb, var(--line) 55%, transparent);padding:.85rem .9rem .85rem 1.25rem;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden}.card[data-v-d0abdddf]:hover{border-color:color-mix(in srgb, var(--line) 80%, transparent);transform:translateY(-2px);box-shadow:0 4px 14px #2125291a,0 10px 28px #21252914}.card.overdue[data-v-d0abdddf]{border-color:color-mix(in srgb, var(--danger) 45%, transparent)}.stripe[data-v-d0abdddf]{width:5px;position:absolute;top:0;bottom:0;left:0}.card-top[data-v-d0abdddf]{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.45rem;display:flex}.title[data-v-d0abdddf]{font-family:var(--font-body);color:var(--ink);flex:1;min-width:0;margin:0;font-size:.95rem;font-weight:700;line-height:1.3}.project-badge[data-v-d0abdddf]{font-family:var(--font-label);letter-spacing:.04em;text-transform:uppercase;color:var(--brand-deep);background:var(--brand-tint-2);border:1px solid color-mix(in srgb, var(--brand) 30%, transparent);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;flex-shrink:0;max-width:8rem;padding:.1rem .45rem;font-size:.66rem;font-weight:700;overflow:hidden}.priority-badge[data-v-d0abdddf]{font-family:var(--font-label);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:.1rem .45rem;font-size:.63rem;font-weight:700}.priority-high[data-v-d0abdddf]{background:color-mix(in srgb, var(--priority-high) 16%, transparent);color:color-mix(in srgb, var(--priority-high) 70%, var(--ink) 30%);border:1px solid color-mix(in srgb, var(--priority-high) 45%, transparent)}.priority-critical[data-v-d0abdddf]{background:color-mix(in srgb, var(--priority-critical) 14%, transparent);color:var(--priority-critical);border:1px solid color-mix(in srgb, var(--priority-critical) 45%, transparent)}.meta[data-v-d0abdddf]{color:var(--muted);justify-content:space-between;align-items:center;font-size:.76rem;display:flex}.attach[data-v-d0abdddf]{font-variant-numeric:tabular-nums}.due[data-v-d0abdddf]{color:var(--muted);align-items:center;gap:.4rem;margin-top:.5rem;font-size:.76rem;display:flex}.due-over[data-v-d0abdddf]{color:var(--danger);font-weight:600}.flag[data-v-d0abdddf]{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--danger);border-radius:999px;padding:.1rem .45rem;font-size:.64rem;font-weight:700}.column[data-v-86f03779]{--accent:var(--status-new);background:var(--surface-2);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius);min-height:220px;max-height:100%;animation:col-rise-86f03779 .5s var(--ease-out) both;animation-delay:calc(var(--i,0) * 70ms);flex-direction:column;display:flex}@keyframes col-rise-86f03779{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.column--new[data-v-86f03779]{--accent:var(--status-new)}.column--in_progress[data-v-86f03779]{--accent:var(--status-progress)}.column--waiting_external[data-v-86f03779]{--accent:var(--status-waiting)}.column--done[data-v-86f03779]{--accent:var(--status-done)}.column-head[data-v-86f03779]{font-family:var(--font-label);border-bottom:1px solid var(--line);align-items:center;gap:.6rem;padding:.85rem 1rem .75rem;display:flex}.column-head h2[data-v-86f03779]{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);flex:1;margin:0;font-size:.78rem;font-weight:700}.count[data-v-86f03779]{text-align:center;background:color-mix(in srgb, var(--accent) 12%, var(--surface-2));min-width:1.6rem;color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);border-radius:999px;padding:.05rem .5rem;font-size:.78rem;font-weight:700}.column-body[data-v-86f03779]{flex-direction:column;flex:1;gap:.65rem;min-height:64px;padding:.75rem;display:flex;overflow-y:auto}.empty[data-v-86f03779]{text-align:center;color:var(--muted);border:1.5px dashed color-mix(in srgb, var(--accent) 35%, var(--line));border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:.45rem;margin:.15rem .75rem .85rem;padding:1.1rem .75rem;font-size:.8rem;display:flex}.empty-icon[data-v-86f03779]{width:22px;height:22px;color:color-mix(in srgb, var(--accent) 55%, var(--muted))}.dp[data-v-99cb8cb7]{position:relative}.dp-trigger[data-v-99cb8cb7]{width:100%;font:inherit;font-family:var(--font-body);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .8rem;transition:border-color .12s,box-shadow .12s;display:flex}.dp-trigger.open[data-v-99cb8cb7]{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent);outline:none}.dp-trigger[data-v-99cb8cb7]:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent);outline:none}.placeholder[data-v-99cb8cb7]{color:var(--muted)}.dp-icons[data-v-99cb8cb7]{align-items:center;gap:.4rem;display:flex}.dp-clear[data-v-99cb8cb7]{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;line-height:1}.dp-clear[data-v-99cb8cb7]:hover{color:var(--danger)}.dp-cal[data-v-99cb8cb7]{width:1rem;height:1rem;color:var(--muted);flex:none}.dp-panel[data-v-99cb8cb7]{z-index:100;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lift);padding:.6rem;position:fixed}.dp-head[data-v-99cb8cb7]{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.dp-title[data-v-99cb8cb7]{font-family:var(--font-label);letter-spacing:.02em;font-weight:700}.dp-nav[data-v-99cb8cb7]{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;width:1.9rem;height:1.9rem;color:var(--ink);border-radius:6px;font-size:1rem}.dp-nav[data-v-99cb8cb7]:hover{border-color:var(--brand);color:var(--brand)}.dp-grid[data-v-99cb8cb7]{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.dp-weekdays[data-v-99cb8cb7]{margin-bottom:2px}.dp-wd[data-v-99cb8cb7]{text-align:center;font-family:var(--font-label);color:var(--muted);padding:.2rem 0;font-size:.72rem}.dp-day[data-v-99cb8cb7]{cursor:pointer;height:2rem;font:inherit;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:6px;font-size:.85rem}.dp-day[data-v-99cb8cb7]:hover{background:var(--brand-tint-2)}.dp-day.muted[data-v-99cb8cb7]{color:var(--muted);opacity:.5}.dp-day.today[data-v-99cb8cb7]{border-color:var(--brand-tint);font-weight:700}.dp-day.selected[data-v-99cb8cb7]{background:var(--brand);color:#fff}.dp-day.selected[data-v-99cb8cb7]:hover{background:var(--brand-deep)}.dp-foot[data-v-99cb8cb7]{justify-content:space-between;margin-top:.5rem;display:flex}.dp-link[data-v-99cb8cb7]{color:var(--brand);cursor:pointer;font-family:var(--font-label);background:0 0;border:none;padding:.2rem .3rem;font-size:.85rem}.dp-link[data-v-99cb8cb7]:hover{text-decoration:underline}.color-picker[data-v-76faa525]{gap:.5rem;display:flex}.swatch[data-v-76faa525]{cursor:pointer;border:2px solid #0000;border-radius:50%;width:28px;height:28px;padding:0}.swatch.active[data-v-76faa525]{border-color:var(--ink);box-shadow:inset 0 0 0 2px #fff}.swatch.none[data-v-76faa525]{border:1px dashed var(--muted);color:var(--muted);background:#fff}.wysiwyg[data-v-9f0971c5]{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;overflow:hidden}.toolbar[data-v-9f0971c5]{background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.25rem;padding:.4rem;display:flex}.toolbar button[data-v-9f0971c5]{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;font-family:var(--font-label);border-radius:6px;padding:.25rem .5rem}.toolbar button.on[data-v-9f0971c5]{background:var(--brand-tint);border-color:var(--brand);color:var(--ink)}.spacer[data-v-9f0971c5]{flex:1}.toolbar .done[data-v-9f0971c5]{background:var(--brand);color:#fff;border-color:var(--brand)}.bar[data-v-9f0971c5]{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.4rem .6rem;display:flex}.bar-label[data-v-9f0971c5]{font-family:var(--font-label);color:var(--muted);font-size:.85rem}.edit[data-v-9f0971c5]{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;font-family:var(--font-label);border-radius:6px;padding:.25rem .7rem}.edit[data-v-9f0971c5]:hover{border-color:var(--brand);color:var(--brand)}.content[data-v-9f0971c5]{min-height:120px;color:var(--ink);padding:.6rem}.preview[data-v-9f0971c5]{overflow-wrap:anywhere}.preview.empty[data-v-9f0971c5]{color:var(--muted);min-height:auto;font-style:italic}.preview[data-v-9f0971c5] p{margin-top:0;margin-bottom:20px}.preview[data-v-9f0971c5] li p{margin-bottom:0}.preview[data-v-9f0971c5] a{color:var(--brand);cursor:pointer;text-decoration:underline}.preview[data-v-9f0971c5] :last-child{margin-bottom:0}[data-v-9f0971c5] .ProseMirror{outline:none;min-height:110px}[data-v-9f0971c5] .ProseMirror p{margin-top:0;margin-bottom:20px}[data-v-9f0971c5] .ProseMirror li p{margin-bottom:0}[data-v-9f0971c5] .ProseMirror a{color:var(--brand);text-decoration:underline}[data-v-9f0971c5] .ProseMirror ul[data-type=taskList]{padding-left:.25rem;list-style:none}[data-v-9f0971c5] .ProseMirror li[data-checked]{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}[data-v-9f0971c5] .ProseMirror li[data-checked]>label{cursor:pointer;flex-shrink:0;align-items:center;display:flex}[data-v-9f0971c5] .ProseMirror li[data-checked]>label input[type=checkbox]{accent-color:var(--brand)}[data-v-9f0971c5] .ProseMirror li[data-checked]>div{flex:1}[data-v-9f0971c5] .ProseMirror li[data-checked=true]>div{color:var(--muted);text-decoration:line-through}.preview[data-v-9f0971c5] ul[data-type=taskList]{padding-left:.25rem;list-style:none}.preview[data-v-9f0971c5] li[data-type=taskItem]{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.preview[data-v-9f0971c5] li[data-type=taskItem]>label{flex-shrink:0;align-items:center;display:flex}.preview[data-v-9f0971c5] li[data-type=taskItem]>label input[type=checkbox]{accent-color:var(--brand)}.preview[data-v-9f0971c5] li[data-type=taskItem]>div{flex:1}.preview[data-v-9f0971c5] li[data-type=taskItem][data-checked=true]>div{color:var(--muted);text-decoration:line-through}.attachments[data-v-d168af62]{flex-direction:column;gap:0;margin:0 0 .5rem;padding:0;list-style:none;display:flex}.attachments li[data-v-d168af62]{border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);align-items:center;gap:.6rem;padding:.55rem 0;font-size:.9rem;display:flex}.attachments li[data-v-d168af62]:last-child{border-bottom:none}.att-link[data-v-d168af62]{color:var(--brand);flex:1;align-items:center;gap:.55rem;min-width:0;text-decoration:none;display:flex}.att-link:hover .att-name[data-v-d168af62]{text-decoration:underline}.att-name[data-v-d168af62]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.thumb[data-v-d168af62]{object-fit:cover;border:1px solid var(--line);border-radius:4px;flex-shrink:0;width:40px;height:40px}.uploaded[data-v-d168af62],.size[data-v-d168af62]{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:.8rem}.del[data-v-d168af62]{color:var(--danger);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.2rem;display:flex}.empty[data-v-d168af62]{color:var(--muted);font-style:italic}.lightbox-backdrop[data-v-d168af62]{z-index:9999;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.lightbox-close[data-v-d168af62],.lightbox-download[data-v-d168af62]{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.45rem;transition:background .15s;display:flex;position:absolute;top:1rem}.lightbox-close[data-v-d168af62]:hover,.lightbox-download[data-v-d168af62]:hover{background:#ffffff4d}.lightbox-close[data-v-d168af62]{right:1rem}.lightbox-download[data-v-d168af62]{right:3.5rem}.lightbox-img[data-v-d168af62]{object-fit:contain;border-radius:6px;max-width:92vw;max-height:90vh;box-shadow:0 8px 32px #00000080}.lightbox-pdf[data-v-d168af62]{background:#fff;border:none;border-radius:6px;width:90vw;height:90vh}.dropzone[data-v-7d02706a]{border:2px dashed var(--line);text-align:center;color:var(--muted);border-radius:10px;padding:1rem;font-size:.9rem;transition:all .1s}.dropzone.active[data-v-7d02706a]{border-color:var(--brand);background:var(--brand-tint-2);color:var(--ink)}.dropzone.busy[data-v-7d02706a]{opacity:.7}.link[data-v-7d02706a]{color:var(--brand);cursor:pointer;font:inherit;background:0 0;border:none;text-decoration:underline}.note[data-v-7d02706a]{color:var(--ink);margin:.4rem 0 0}.overlay[data-v-f90a0b18]{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#00000059;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.dialog[data-v-f90a0b18]{background:var(--card);color:var(--ink);border-radius:var(--radius);width:min(620px,94vw);max-height:92vh;box-shadow:var(--shadow-lift);border:1px solid var(--line);border-top:4px solid var(--dialog-accent,var(--brand));flex-direction:column;display:flex}.dialog-head[data-v-f90a0b18]{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.dialog-head h2[data-v-f90a0b18]{margin:0}.x[data-v-f90a0b18]{cursor:pointer;color:var(--muted);background:0 0;border:none;font-size:1.1rem}.dialog-body[data-v-f90a0b18]{flex-direction:column;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.field[data-v-f90a0b18]{font-family:var(--font-label);flex-direction:column;gap:.4rem;display:flex}.row[data-v-f90a0b18]{grid-template-columns:1fr 1fr 1fr;gap:1rem;display:grid}@media (max-width:480px){.row[data-v-f90a0b18]{grid-template-columns:1fr 1fr}.row .field[data-v-f90a0b18]:first-child{grid-column:1/-1}}input[data-v-f90a0b18],textarea[data-v-f90a0b18],.project-select[data-v-f90a0b18]{font:inherit;font-family:var(--font-body);border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:.55rem .7rem}input[data-v-f90a0b18]:focus,textarea[data-v-f90a0b18]:focus,.project-select[data-v-f90a0b18]:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent);outline:none}.project-select[data-v-f90a0b18]{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .65rem center;background-repeat:no-repeat;width:100%;padding-right:2rem}.checkbox-field[data-v-f90a0b18]{font-family:var(--font-label);cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.checkbox-field input[type=checkbox][data-v-f90a0b18]{border:1px solid var(--line);width:1rem;height:1rem;accent-color:var(--brand);cursor:pointer;border-radius:3px;flex:none}.dialog-error[data-v-f90a0b18]{color:var(--danger);margin:0;padding:0 1.25rem;font-size:.9rem}.dialog-foot[data-v-f90a0b18]{border-top:1px solid var(--line);align-items:center;gap:.6rem;padding:1rem 1.25rem;display:flex}.spacer[data-v-f90a0b18]{flex:1}button[data-v-f90a0b18]{font-family:var(--font-label);cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.55rem 1rem}.primary[data-v-f90a0b18]{background:var(--brand);color:#fff}.primary[data-v-f90a0b18]:disabled{opacity:.6;cursor:default}.ghost[data-v-f90a0b18]{border-color:var(--line);color:var(--ink);background:0 0}.ghost[data-v-f90a0b18]:hover{border-color:var(--muted)}.danger[data-v-f90a0b18]{background:var(--danger);color:#fff}.dialog-pop-enter-active[data-v-f90a0b18]{transition:opacity .38s var(--ease-out)}.dialog-pop-leave-active[data-v-f90a0b18]{transition:opacity .22s ease-in}.dialog-pop-enter-from[data-v-f90a0b18],.dialog-pop-leave-to[data-v-f90a0b18]{opacity:0}.dialog-pop-enter-active .dialog[data-v-f90a0b18]{transition:transform .42s var(--ease-out), opacity .38s var(--ease-out)}.dialog-pop-leave-active .dialog[data-v-f90a0b18]{transition:transform .22s ease-in,opacity .22s ease-in}.dialog-pop-enter-from .dialog[data-v-f90a0b18],.dialog-pop-leave-to .dialog[data-v-f90a0b18]{transform:translate(var(--origin-dx,0px), var(--origin-dy,0px)) scale(.35);opacity:0}.overlay[data-v-568d668d]{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#00000059;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.dialog[data-v-568d668d]{background:var(--card);color:var(--ink);border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:var(--radius);width:min(480px,94vw);max-height:80vh;box-shadow:var(--shadow-lift);flex-direction:column;display:flex}.dialog-head[data-v-568d668d]{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.dialog-head h2[data-v-568d668d]{margin:0;font-size:1.25rem}.x[data-v-568d668d]{cursor:pointer;color:var(--muted);background:0 0;border:none;font-size:1.1rem}.dialog-body[data-v-568d668d]{flex-direction:column;gap:.85rem;padding:1.1rem 1.25rem;display:flex;overflow-y:auto}.project-list[data-v-568d668d]{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.project-row[data-v-568d668d]{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.65rem .85rem;display:flex}.proj-dot[data-v-568d668d]{border-radius:50%;flex-shrink:0;width:10px;height:10px}.project-title[data-v-568d668d]{flex:1;font-size:.95rem}.project-title.muted[data-v-568d668d]{color:var(--muted)}.row-actions[data-v-568d668d]{flex-shrink:0;gap:.3rem;display:flex}.edit-wrap[data-v-568d668d]{flex-direction:column;gap:.9rem;width:100%;padding:.3rem 0;display:flex}.edit-row[data-v-568d668d]{align-items:center;gap:.35rem;display:flex}.edit-input[data-v-568d668d]{font:inherit;border:1px solid var(--brand);background:var(--surface-2);color:var(--ink);border-radius:6px;outline:none;flex:1;min-width:0;padding:.35rem .5rem}.delete-confirm[data-v-568d668d]{flex-wrap:wrap;align-items:center;gap:.4rem;width:100%;padding-top:.35rem;display:flex}.confirm-label[data-v-568d668d]{color:var(--muted);flex-basis:100%;font-size:.82rem}.btn-icon-sm[data-v-568d668d]{border:1px solid var(--line);cursor:pointer;color:var(--muted);background:0 0;border-radius:6px;padding:.25rem .5rem;font-size:.85rem}.btn-icon-sm[data-v-568d668d]:hover{border-color:var(--brand);color:var(--brand)}.btn-icon-sm.danger[data-v-568d668d]:hover{border-color:var(--danger);color:var(--danger)}.btn-save[data-v-568d668d]{border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:6px;padding:.25rem .55rem;font-size:.85rem}.btn-save[data-v-568d668d]:disabled{opacity:.5;cursor:default}.btn-cancel[data-v-568d668d]{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;padding:.25rem .5rem;font-size:.85rem}.btn-cancel[data-v-568d668d]:hover{border-color:var(--muted)}.btn-danger-sm[data-v-568d668d]{border:1px solid var(--danger);background:var(--danger);color:#fff;cursor:pointer;font-family:var(--font-label);border-radius:6px;padding:.25rem .65rem;font-size:.8rem}.btn-ghost-sm[data-v-568d668d]{border:1px solid var(--line);color:var(--ink);cursor:pointer;font-family:var(--font-label);background:0 0;border-radius:6px;padding:.25rem .65rem;font-size:.8rem}.btn-ghost-sm[data-v-568d668d]:hover{border-color:var(--muted)}.empty[data-v-568d668d]{color:var(--muted);margin:0;font-size:.9rem;font-style:italic}.field-error[data-v-568d668d]{color:var(--danger);margin:0;font-size:.88rem}.new-form[data-v-568d668d]{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;gap:.6rem;margin-top:.15rem;padding:.85rem;display:flex}.new-form-heading[data-v-568d668d]{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.76rem;font-weight:700}.new-form-row[data-v-568d668d]{align-items:center;gap:.5rem;display:flex}.new-input[data-v-568d668d]{font:inherit;font-family:var(--font-body);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);min-width:0;color:var(--ink);flex:1;padding:.55rem .7rem}.new-input[data-v-568d668d]:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent);outline:none}.btn-primary[data-v-568d668d]{background:var(--brand);color:#fff;border-radius:var(--radius-sm);font-family:var(--font-label);cursor:pointer;white-space:nowrap;border:none;padding:.55rem 1rem}.btn-primary[data-v-568d668d]:disabled{opacity:.6;cursor:default}.btn-primary[data-v-568d668d]:not(:disabled):hover{background:var(--brand-deep)}.dialog-pop-enter-active[data-v-568d668d]{transition:opacity .2s var(--ease-out)}.dialog-pop-leave-active[data-v-568d668d]{transition:opacity .15s ease-in}.dialog-pop-enter-from[data-v-568d668d],.dialog-pop-leave-to[data-v-568d668d]{opacity:0}.dialog-pop-enter-active .dialog[data-v-568d668d]{transition:transform .24s var(--ease-out), opacity .2s var(--ease-out)}.dialog-pop-leave-active .dialog[data-v-568d668d]{transition:transform .15s ease-in,opacity .15s ease-in}.dialog-pop-enter-from .dialog[data-v-568d668d],.dialog-pop-leave-to .dialog[data-v-568d668d]{opacity:0;transform:scale(.96)translateY(8px)}.list-wrap[data-v-d05d8a96]{padding:1.2rem 1.5rem;overflow-x:auto}.list-table[data-v-d05d8a96]{border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);width:100%;font-size:.9rem;overflow:hidden}.list-table thead tr[data-v-d05d8a96]{background:var(--surface-2);border-bottom:2px solid var(--line)}.list-table th[data-v-d05d8a96]{text-align:left;font-family:var(--font-label);text-transform:uppercase;letter-spacing:.07em;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;padding:.65rem .9rem;font-size:.76rem;font-weight:700}.list-table th[data-v-d05d8a96]:hover{color:var(--ink)}.sort-arrow[data-v-d05d8a96]{margin-left:.2rem;font-style:normal}.task-row[data-v-d05d8a96]{border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);cursor:pointer;transition:background .1s}.task-row[data-v-d05d8a96]:hover{background:var(--surface-2)}.task-row.overdue td[data-v-d05d8a96]{color:var(--danger)}.task-row[data-v-d05d8a96]:last-child{border-bottom:none}.list-table td[data-v-d05d8a96]{color:var(--ink);padding:.65rem .9rem}.col-prio[data-v-d05d8a96]{width:110px}.col-title[data-v-d05d8a96]{min-width:200px;font-weight:600}.col-project[data-v-d05d8a96],.col-status[data-v-d05d8a96]{width:140px}.col-due[data-v-d05d8a96],.col-created[data-v-d05d8a96]{width:110px}.prio-dot[data-v-d05d8a96]{vertical-align:middle;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-right:.4rem;display:inline-block}.prio-critical[data-v-d05d8a96]{background:var(--priority-critical)}.prio-high[data-v-d05d8a96]{background:var(--priority-high)}.prio-medium[data-v-d05d8a96]{background:#3b82f6}.prio-low[data-v-d05d8a96]{background:var(--muted)}.prio-label[data-v-d05d8a96]{vertical-align:middle}.project-badge[data-v-d05d8a96]{font-family:var(--font-label);color:var(--brand-deep);background:var(--brand-tint-2);border:1px solid color-mix(in srgb, var(--brand) 30%, transparent);border-radius:999px;padding:.1rem .45rem;font-size:.72rem;font-weight:700}.status-badge[data-v-d05d8a96]{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.1rem .5rem;font-size:.72rem;font-weight:700}.status-new[data-v-d05d8a96]{background:color-mix(in srgb, var(--status-new) 15%, transparent);color:var(--status-new);border:1px solid color-mix(in srgb, var(--status-new) 35%, transparent)}.status-in_progress[data-v-d05d8a96]{background:color-mix(in srgb, var(--status-progress) 15%, transparent);color:var(--status-progress);border:1px solid color-mix(in srgb, var(--status-progress) 35%, transparent)}.status-waiting_external[data-v-d05d8a96]{background:color-mix(in srgb, var(--status-waiting) 15%, transparent);color:var(--status-waiting);border:1px solid color-mix(in srgb, var(--status-waiting) 35%, transparent)}.status-done[data-v-d05d8a96]{background:color-mix(in srgb, var(--status-done) 15%, transparent);color:var(--status-done);border:1px solid color-mix(in srgb, var(--status-done) 35%, transparent)}.text-danger[data-v-d05d8a96]{color:var(--danger)!important}.muted[data-v-d05d8a96]{color:var(--muted)}.empty[data-v-d05d8a96]{text-align:center;color:var(--muted);padding:2rem;font-style:italic}.board-page[data-v-9fdddd40]{background-image:radial-gradient(circle, color-mix(in srgb, var(--brand) 13%, transparent) 1px, transparent 1px);background-position:11px 11px;background-size:24px 24px;flex-direction:column;min-height:100vh;display:flex}.topbar[data-v-9fdddd40]{z-index:10;background:color-mix(in srgb, var(--card) 88%, transparent);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid color-mix(in srgb, var(--line) 65%, transparent);justify-content:space-between;align-items:center;padding:.9rem 1.5rem;display:flex;position:sticky;top:0}.brand[data-v-9fdddd40]{align-items:center;gap:.7rem;display:flex}.brand-logo[data-v-9fdddd40]{color:var(--brand);height:1.2rem}.topbar h1[data-v-9fdddd40]{color:var(--ink);margin:0;font-size:1.6rem;line-height:1}.topbar-actions[data-v-9fdddd40]{align-items:center;gap:.6rem;display:flex}button[data-v-9fdddd40]{font-family:var(--font-label);letter-spacing:.02em;border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;align-items:center;height:2.35rem;padding:0 1.1rem;font-size:.95rem;transition:background .12s,border-color .12s;display:inline-flex}.primary[data-v-9fdddd40]{background:var(--brand);color:#fff}.primary[data-v-9fdddd40]:hover{background:var(--brand-deep)}.ghost[data-v-9fdddd40]{border-color:var(--line);color:var(--ink);background:0 0}.ghost[data-v-9fdddd40]:hover{border-color:var(--muted)}.icon-btn[data-v-9fdddd40]{border-color:var(--line);color:var(--ink);background:0 0;padding:0 .7rem}.icon-btn[data-v-9fdddd40]:hover{border-color:var(--muted)}.view-toggle[data-v-9fdddd40]{gap:.2rem;display:flex}.icon-btn.active[data-v-9fdddd40]{background:var(--brand-tint);border-color:var(--brand);color:var(--brand)}.theme-icon[data-v-9fdddd40]{width:1.1rem;height:1.1rem;display:block}.btn-icon[data-v-9fdddd40]{flex:none;width:1.1rem;height:1.1rem;display:none}.btn-label[data-v-9fdddd40]{display:inline}.primary[data-v-9fdddd40]{align-items:center;gap:.4rem;display:flex}.primary .btn-icon[data-v-9fdddd40]{display:block}.overflow-menu[data-v-9fdddd40]{position:relative}.overflow-btn[data-v-9fdddd40]{justify-content:center;padding:0 .65rem}.dropdown[data-v-9fdddd40]{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lift);z-index:200;flex-direction:column;min-width:190px;padding:.3rem;display:flex;position:absolute;top:calc(100% + .4rem);right:0}.dropdown-item[data-v-9fdddd40]{border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-label);letter-spacing:0;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.65rem;width:100%;padding:.55rem .75rem;font-size:.9rem;display:flex}.dropdown-item[data-v-9fdddd40]:hover{background:var(--surface-2)}.dropdown-item.danger[data-v-9fdddd40]{color:var(--danger)}.dropdown-item.danger[data-v-9fdddd40]:hover{background:color-mix(in srgb, var(--danger) 10%, transparent)}.dropdown-divider[data-v-9fdddd40]{border:none;border-top:1px solid var(--line);margin:.25rem 0}.project-filter[data-v-9fdddd40]{background:color-mix(in srgb, var(--surface-2) 80%, var(--surface));border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);flex-wrap:wrap;align-items:center;gap:.4rem;padding:.55rem 1.5rem;display:flex;overflow-x:auto}.filter-chip[data-v-9fdddd40]{border:1px solid var(--line);background:var(--card);color:var(--ink);font-family:var(--font-label);cursor:pointer;white-space:nowrap;border-radius:999px;padding:.28rem .85rem;font-size:.82rem;font-weight:600;transition:background .12s,border-color .12s,color .12s}.filter-chip[data-v-9fdddd40]:hover{border-color:var(--brand);color:var(--brand)}.filter-chip.active[data-v-9fdddd40]{background:var(--brand);border-color:var(--brand);color:#fff}.columns[data-v-9fdddd40]{flex:1;grid-template-columns:repeat(4,1fr);align-items:stretch;gap:1.1rem;width:100%;max-width:1800px;margin:0 auto;padding:1.4rem 1.5rem;display:grid}@media (max-width:1040px){.columns[data-v-9fdddd40]{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.columns[data-v-9fdddd40]{grid-template-columns:1fr}}.search-wrap[data-v-9fdddd40]{align-items:center;display:flex}.search-toggle[data-v-9fdddd40]{flex:none}.search-wrap.open .search-toggle[data-v-9fdddd40]{border-color:var(--brand);color:var(--brand);border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.search-input[data-v-9fdddd40]{font:inherit;font-family:var(--font-body);border:1px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--surface-2);width:0;height:2.35rem;color:var(--ink);opacity:0;pointer-events:none;border-left:none;padding:0;font-size:.9rem;transition:width .25s,opacity .2s,padding .2s;overflow:hidden}.search-wrap.open .search-input[data-v-9fdddd40]{opacity:1;pointer-events:auto;width:220px;padding:0 .75rem}.search-input[data-v-9fdddd40]:focus{outline:none}.mobile-search-bar[data-v-9fdddd40]{background:color-mix(in srgb, var(--surface-2) 80%, var(--surface));border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);align-items:center;padding:.45rem .85rem;display:none;position:relative}.search-icon[data-v-9fdddd40]{color:var(--muted);pointer-events:none;position:absolute}.mobile-search-bar .search-icon[data-v-9fdddd40]{left:1.45rem}.mobile-search-bar .search-input[data-v-9fdddd40]{opacity:1;pointer-events:auto;border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;max-width:none;padding:0 .75rem 0 2rem}.mobile-search-bar .search-input[data-v-9fdddd40]:focus{border-color:var(--brand)}@media (max-width:640px){.topbar[data-v-9fdddd40]{padding:.6rem .85rem}.brand-logo[data-v-9fdddd40]{height:.9rem}.topbar h1[data-v-9fdddd40]{font-size:1.15rem}.topbar-actions[data-v-9fdddd40]{gap:.4rem}.icon-btn[data-v-9fdddd40]{padding:.45rem .55rem}.btn-label[data-v-9fdddd40]{display:none}.primary[data-v-9fdddd40]{padding:.45rem .6rem}.search-wrap[data-v-9fdddd40]{display:none}.mobile-search-bar[data-v-9fdddd40]{display:flex}}:root{--brand:#859211;--brand-deep:#6c7510;--brand-tint:#c2c988;--brand-tint-2:#dadeb8;--surface:#eceee3;--surface-2:#f6f7f1;--card:#fff;--ink:#212529;--ink-soft:#303030;--muted:#6c757d;--line:#e2e4d8;--danger:#dc3545;--warning:#ffc107;--success:#198754;--status-new:#6c757d;--status-progress:#859211;--status-waiting:#c8920a;--status-done:#198754;--priority-high:#f59e0b;--priority-critical:#dc3545;--font-head:"DM Serif Display", Georgia, serif;--font-label:"Roboto Condensed", system-ui, sans-serif;--font-body:"Mulish", system-ui, sans-serif;--radius:12px;--radius-sm:8px;--radius-lg:16px;--ease-out:cubic-bezier(.16, 1, .3, 1);--shadow:0 1px 2px #2125290f, 0 6px 16px #2125290f;--shadow-lift:0 2px 6px #2125291a, 0 12px 28px #2125291a;--shadow-card:0 1px 2px #2125290d, 0 2px 8px #21252912;--shadow-card-lift:0 6px 20px #21252921, 0 24px 48px #2125291a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--brand:#a3b22a;--brand-deep:#859211;--brand-tint:#4a5219;--brand-tint-2:#3a4015;--surface:#17181a;--surface-2:#202124;--card:#26282b;--ink:#e9eaec;--ink-soft:#f3f4f6;--muted:#9a9ea4;--line:#383a3e;--status-new:#9aa08c;--status-progress:#a3b22a;--status-waiting:#d9a92a;--status-done:#3fbf86;--priority-high:#fbbf24;--priority-critical:#ef5164;--shadow:0 1px 2px #0006, 0 6px 16px #0006;--shadow-lift:0 2px 6px #00000080, 0 12px 28px #00000080;--shadow-card:0 1px 3px #0000004d, 0 3px 10px #00000047;--shadow-card-lift:0 6px 20px #00000080, 0 24px 48px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3{font-family:var(--font-head);font-weight:400}:where(a,button,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}.sortable-drag,.sortable-drag *{transition:none!important;animation:none!important}.sortable-ghost{opacity:.45;background:color-mix(in srgb, var(--brand-tint) 30%, var(--surface-2))!important;border:2px dashed var(--brand-tint)!important;box-shadow:none!important}.sortable-ghost *{visibility:hidden}
