@import "https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700&display=swap";:root{--accent:#0d9488;--app-bg:#fff;--sidebar-bg:#fbfbfa;--board-bg:#fff;--card-bg:#fff;--search-bg:#f3f4f6;--col-tint:#f7f8fa;--border:#ebecf0;--divider:#f0f1f3;--text:#1f2329;--text-muted:#8a909a;--text-faint:#b1b7c1;--nav-hover:#f3f4f6;--nav-active-bg:#0d94881a;--tag-bg:#f1f2f4;--tag-text:#6b7280;--chip-bg:#0000000b;--avatar-bg:#e9ebef;--avatar-text:#5b626b;--track:#edeef1;--col-bg:var(--col-tint);--col-inner-pad:9px;--card-radius:11px;--card-shadow:0 1px 3px #14142812, 0 1px 2px #1414280a;--card-border-w:0px;--card-pad:13px;--card-gap:10px;--col-w:302px;--top-line-h:0px;--accent-strip-w:0px;--pill-display:inline-flex}[data-theme=dark]{--app-bg:#16181c;--sidebar-bg:#121417;--board-bg:#16181c;--card-bg:#212429;--border:#2b2f36;--divider:#23262b;--text:#e7e9ec;--text-muted:#9aa1ac;--text-faint:#6b7480;--col-tint:#1b1e23;--tag-bg:#2b2f36;--tag-text:#aab1bc;--nav-hover:#1e2126;--nav-active-bg:#0d948829;--avatar-bg:#2f343b;--avatar-text:#c7ccd3;--track:#2b2f36;--chip-bg:#ffffff0f;--search-bg:#1c1f24;--card-shadow:0 1px 3px #00000059}[data-variant=minimal]{--col-bg:transparent;--col-inner-pad:0px;--card-radius:7px;--card-shadow:none;--card-border-w:1px;--top-line-h:2px;--pill-display:none;--accent-strip-w:0px}[data-variant=bordered]{--col-bg:var(--col-tint);--col-inner-pad:9px;--card-radius:9px;--card-shadow:none;--card-border-w:1px;--top-line-h:0px;--pill-display:none;--accent-strip-w:3px}[data-variant=soft]{--col-bg:var(--col-tint);--col-inner-pad:9px;--card-radius:11px;--card-border-w:0px;--top-line-h:0px;--pill-display:inline-flex;--accent-strip-w:0px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:var(--app-bg);color:var(--text);font-family:Onest,system-ui,-apple-system,sans-serif}h1,h2,h3,h4,h5,h6{margin:0}button,input,textarea,select{font-family:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#8287914d padding-box padding-box;border:2px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#82879180}::-webkit-scrollbar-track{background:0 0}.btn{cursor:pointer;border:none;border-radius:9px;align-items:center;gap:6px;padding:8px 13px;font-size:13px;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){opacity:.9}.btn-ghost{border:1px solid var(--border);color:var(--text-muted);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--nav-hover)}.btn-sm{border-radius:7px;padding:5px 10px;font-size:12px}.nav-item{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:10px;padding:8px 9px;font-size:13px;transition:background .1s;display:flex}.nav-item:hover{background:var(--nav-hover)}.nav-item.active{color:var(--accent);background:var(--nav-active-bg);font-weight:600}.segment-control{background:var(--search-bg);border-radius:10px;gap:3px;padding:3px;display:inline-flex}.segment-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:7px;padding:5px 12px;font-size:12px;font-weight:600;transition:background .15s,box-shadow .15s,color .15s}.segment-btn.active{background:var(--card-bg);color:var(--text);box-shadow:0 1px 2px #0000001f}.icon-btn{border:1px solid var(--border);width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:9px;justify-content:center;align-items:center;transition:background .1s;display:flex}.icon-btn:hover{background:var(--nav-hover)}.tag{background:var(--tag-bg);color:var(--tag-text);border-radius:6px;padding:2px 8px;font-size:11px;font-weight:500}.badge{background:var(--tag-bg);min-width:18px;height:18px;color:var(--text-muted);border-radius:6px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.avatar{background:var(--avatar-bg);width:22px;height:22px;color:var(--avatar-text);border:2px solid var(--card-bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:9.5px;font-weight:600;display:inline-flex}.form-input{border:1px solid var(--border);background:var(--app-bg);width:100%;color:var(--text);border-radius:8px;outline:none;padding:8px 11px;font-size:13px;transition:border-color .15s}.form-input:focus{border-color:var(--accent)}.form-label{color:var(--text-muted);margin-bottom:5px;font-size:12px;font-weight:600;display:block}.form-group{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.form-error{color:#e5484d;margin-top:3px;font-size:11.5px}.dialog-overlay{z-index:100;background:#00000073;position:fixed;inset:0}.dialog-content{background:var(--card-bg);z-index:101;border-radius:14px;width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);padding:24px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 8px 32px #0000002e}.dialog-title{color:var(--text);margin-bottom:18px;font-size:16px;font-weight:700}.dialog-footer{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.confirm-dialog{width:360px}.confirm-message{color:var(--text-muted);margin-bottom:20px;font-size:13.5px;line-height:1.5}.app-shell{background:var(--app-bg);height:100vh;color:var(--text);display:flex;overflow:hidden}.app-shell__main{background:var(--board-bg);flex-direction:column;flex:1;min-width:0;display:flex}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--divider);flex-direction:column;flex:none;width:248px;height:100%;padding:14px 12px;display:flex}.sidebar__workspace{align-items:center;gap:10px;padding:4px 6px 12px;display:flex}.sidebar__workspace-avatar{background:var(--accent);color:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:flex}.sidebar__workspace-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden}.sidebar__search{background:var(--search-bg);color:var(--text-faint);border-radius:9px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:flex}.sidebar__search-placeholder{color:var(--text-muted);flex:1}.sidebar__search-kbd{background:var(--card-bg);border:1px solid var(--border);color:var(--text-faint);border-radius:5px;padding:1px 5px;font-size:11px;font-weight:600}.sidebar__nav{margin-top:10px}.sidebar__nav-section{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);padding:16px 9px 5px;font-size:11px;font-weight:600}.sidebar__footer{border-top:1px solid var(--divider);padding-top:8px}.board-header{flex:none;padding:18px 24px 0}.board-header__top{align-items:center;gap:10px;display:flex}.board-header__title{letter-spacing:-.02em;color:var(--text);font-size:19px;font-weight:700}.board-header__tabs{align-items:center;gap:18px;margin-top:13px;display:flex}.board-header__tab{color:var(--text-muted);cursor:pointer;padding-bottom:9px;font-size:13px}.board-header__tab--active{color:var(--text);border-bottom:2px solid var(--accent);font-weight:600}.board-header__tab--views{align-items:center;gap:5px;display:flex}.board-header__actions{border-bottom:1px solid var(--divider);align-items:center;gap:9px;margin-top:1px;padding-bottom:15px;display:flex}.kanban-board{flex:1;align-items:flex-start;gap:18px;padding:18px 24px 28px;display:flex;overflow:auto}.kanban-board__add-col{white-space:nowrap;border:1px dashed var(--border);color:var(--text-faint);cursor:pointer;background:0 0;border-radius:12px;flex:none;align-self:flex-start;margin-top:0;padding:9px 16px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.kanban-board__add-col:hover{background:var(--nav-hover);color:var(--text-muted)}.kanban-column__header{justify-content:space-between;align-items:center;margin-bottom:11px;padding:4px 4px 0;display:flex}.kanban-column__header-left{align-items:center;gap:8px;display:flex}.kanban-column__header-actions{color:var(--text-faint);align-items:center;gap:1px;display:flex}.kanban-col-icon-btn{width:24px;height:24px;color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .1s;display:flex}.kanban-col-icon-btn:hover{background:var(--nav-hover)}.kanban-column__add-btn{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;width:100%;margin-top:6px;padding:7px 8px;font-size:12.5px;font-weight:500;transition:background .1s,color .1s;display:flex}.kanban-column__add-btn:hover{background:var(--nav-hover);color:var(--text-muted)}.kanban-card{background:var(--card-bg);border:var(--card-border-w,0px) solid var(--border);border-radius:var(--card-radius,11px);box-shadow:var(--card-shadow);padding:var(--card-pad,13px);padding-left:calc(var(--card-pad,13px) + var(--accent-strip-w,0px));cursor:grab;flex-direction:column;gap:7px;transition:box-shadow .15s,transform .15s;display:flex;position:relative;overflow:hidden}.kanban-card:hover{transform:translateY(-1px);box-shadow:0 6px 16px #14141e1a}.kanban-card:active{cursor:grabbing}.kanban-card__title{color:var(--text);letter-spacing:-.01em;font-size:13.5px;font-weight:600;line-height:1.35}.kanban-card__subtitle{color:var(--text-muted);margin-top:-3px;font-size:12px}.kanban-card__tags{flex-wrap:wrap;gap:6px;margin-top:1px;display:flex}.kanban-card__progress{align-items:center;gap:9px;margin-top:3px;display:flex}.kanban-card__progress-track{background:var(--track);border-radius:99px;flex:1;height:5px;overflow:hidden}.kanban-card__progress-label{color:var(--text-faint);text-align:right;min-width:30px;font-size:11px;font-weight:600}.kanban-card__footer{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.kanban-card__meta{color:var(--text-faint);align-items:center;gap:11px;font-size:11.5px;display:flex}.kanban-card__meta-item{align-items:center;gap:4px;display:flex}.kanban-card__avatars{padding-left:7px;display:flex}.kanban-card__actions{gap:4px;display:none;position:absolute;top:8px;right:8px}.kanban-card:hover .kanban-card__actions{display:flex}.kanban-card__action-btn{border:1px solid var(--border);background:var(--card-bg);color:var(--text-muted);cursor:pointer;border-radius:5px;padding:2px 7px;font-size:10px;font-weight:600;transition:background .1s}.kanban-card__action-btn:hover{background:var(--nav-hover)}.kanban-card__action-btn--danger:hover{color:#e5484d;background:#e5484d1a;border-color:#e5484d}.dropdown-content{background:var(--card-bg);border:1px solid var(--border);z-index:50;border-radius:10px;min-width:140px;padding:4px;box-shadow:0 4px 16px #0000001f}.dropdown-item{color:var(--text);cursor:pointer;border-radius:7px;outline:none;align-items:center;padding:7px 10px;font-size:13px;display:flex}.dropdown-item:hover,.dropdown-item[data-highlighted]{background:var(--nav-hover)}.login-page{background:var(--app-bg);justify-content:center;align-items:center;height:100vh;display:flex}.login-card{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;width:380px;padding:32px;box-shadow:0 4px 24px #00000012}.login-card__logo{justify-content:center;margin-bottom:16px;display:flex}.login-card__title{color:var(--text);text-align:center;margin-bottom:6px;font-size:22px;font-weight:700}.login-card__subtitle{color:var(--text-muted);text-align:center;margin-bottom:24px;font-size:13.5px}.login-card__error{color:#e5484d;background:#e5484d14;border-radius:8px;align-items:flex-start;gap:7px;margin-bottom:16px;padding:8px 12px;font-size:13px;display:flex}.login-host-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.login-host-badge{color:var(--text-muted);background:var(--search-bg);word-break:break-all;border-radius:6px;padding:3px 9px;font-size:11.5px;font-weight:500}.login-host-reset{color:var(--accent);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:11.5px;font-weight:600}.login-host-reset:hover{text-decoration:underline}.login-pw-toggle{color:var(--text-faint);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.login-pw-toggle:hover{color:var(--text-muted)}
