:root {
  --bg: #f6f7fb; --surface: #fff; --surface-2: #f1f2f8; --text: #20212d; --muted: #7c7f91;
  --line: #e6e7ee; --primary: #6558e8; --primary-dark: #5548d5; --sidebar: #242330;
  --shadow: 0 10px 30px rgba(36,35,48,.08); --card-shadow: 0 2px 10px rgba(45,43,72,.055);
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { margin: 0; min-height: 100%; font-family: "DM Sans", system-ui, sans-serif; color: var(--text); background: var(--bg); }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
.auth-gate{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 20%,#8f83ef33,transparent 34%),radial-gradient(circle at 85% 80%,#f2ad7633,transparent 32%),#f5f5fa}.auth-card{width:min(410px,100%);display:grid;gap:14px;padding:32px;background:#fff;border:1px solid #e4e3ed;border-radius:18px;box-shadow:0 24px 70px #34314e20}.auth-brand{display:flex;align-items:center;gap:11px;padding-bottom:18px;border-bottom:1px solid var(--line)}.auth-brand>div{display:grid}.auth-brand strong{font-size:14px}.auth-brand small{font-size:9px;color:var(--muted)}.auth-card h1{font-size:24px;margin:5px 0}.auth-card>div>p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.auth-message{min-height:16px;margin:0;color:#d95449;font-size:10px}.auth-message.success{color:#2f9e7a}.auth-mode-button{border:0;background:transparent;color:var(--primary);font-size:10px;font-weight:600;padding:5px}.account-email{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:9px}
.app-shell { display: grid; grid-template-columns: 258px 1fr; min-height: 100vh; }
.sidebar { background: var(--sidebar); color: #fff; padding: 24px 18px 18px; display: flex; flex-direction: column; position: sticky; top: 0; height: 100vh; z-index: 20; }
.brand { display: flex; align-items: center; gap: 11px; font-size: 19px; font-weight: 700; padding: 0 8px 26px; }
.brand-mark { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; background: linear-gradient(145deg,#7669f2,#5547db); box-shadow: 0 6px 16px #13121b66; }
.primary-action { border: 0; background: var(--primary); color: #fff; border-radius: 10px; padding: 12px 14px; font-weight: 600; text-align: left; display: flex; align-items: center; gap: 10px; margin-bottom: 18px; }
.primary-action:hover { background: #7569f0; }
.nav-list { display: grid; gap: 3px; }
.nav-item, .project-item { width: 100%; border: 0; color: #aaa9b6; background: transparent; border-radius: 8px; padding: 10px 12px; display: flex; align-items: center; gap: 11px; text-align: left; }
.nav-item span { font-size: 18px; width: 18px; text-align: center; }
.nav-item kbd { margin-left: auto; background: #353442; color: #aaa9b6; min-width: 22px; border-radius: 10px; padding: 2px 6px; text-align: center; font: 11px inherit; }
.nav-item.active, .nav-item:hover, .project-item:hover { background: #353442; color: #fff; }
.sidebar-heading { display: flex; justify-content: space-between; color: #6f6e7d; font-size: 10px; letter-spacing: 1.4px; font-weight: 700; padding: 29px 12px 9px; }
.sidebar-heading button { border: 0; color: #858391; background: none; }
.project-item { font-size: 13px; }
.project-item > span { margin-left: auto; color: #777684; }
.project-dot { width: 9px; height: 9px; border-radius: 3px; }.violet { background:#7567ed }.coral { background:#f48673 }
.project-list{display:grid;gap:3px;max-height:34vh;overflow-y:auto}.project-row{display:grid;grid-template-columns:1fr 27px;align-items:center}.project-main{min-width:0;width:100%;border:0;color:#aaa9b6;background:transparent;border-radius:8px;padding:8px 7px;display:flex;align-items:center;gap:9px;text-align:left;font-size:11px}.project-main:hover,.project-row.active .project-main{background:#353442;color:#fff}.project-main span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-logo-mini{width:24px;height:24px;flex:none;border-radius:7px;display:grid;place-items:center;background:#6558e8;color:#fff;font-size:9px;font-weight:700;overflow:hidden}.project-logo-mini img{width:100%;height:100%;object-fit:cover}.project-edit{border:0;background:transparent;color:#6f6e7d;border-radius:6px;height:27px}.project-edit:hover{background:#353442;color:#fff}.project-boards{grid-column:1/-1;display:grid;gap:2px;margin:1px 0 5px 20px;padding-left:13px;border-left:1px solid #3a3946}.sidebar-board{border:0;background:transparent;color:#858491;border-radius:6px;padding:6px 8px;display:flex;align-items:center;gap:7px;text-align:left;font-size:9px}.sidebar-board:hover,.sidebar-board.active{background:#302f3c;color:#fff}.sidebar-board i{width:6px;height:6px;border-radius:50%;flex:none}
.sidebar-footer { margin-top: auto; border-top: 1px solid #373642; padding: 15px 8px 0; }
.storage-row { display: flex; justify-content: space-between; color: #8e8d9a; font-size: 10px; }.storage-row strong { color: #71d0a5; }
.storage-bar { background: #393844; height: 4px; border-radius: 4px; margin: 8px 0 14px; }.storage-bar i { display: block; width: 32%; height: 100%; border-radius: inherit; background: #6f62e7; }
.cloud-button { width: 100%; display: flex; align-items: center; gap: 9px; padding: 9px; color: #cbc9d6; background: #2e2d3a; border: 1px solid #3c3b49; border-radius: 9px; text-align: left; }
.cloud-button > span:first-child { color:#8b80f6 }.cloud-button > span:last-child { margin-left:auto }.cloud-button div { display:grid }.cloud-button strong { font-size:10px }.cloud-button small { color:#777684;font-size:9px }
.profile { display: grid; grid-template-columns: 34px 1fr 28px; gap: 9px; align-items: center; margin-top: 17px; }
.avatar,.mini-avatar,.member-bubble { border:0; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,#e0a879,#9d5e3d); color:white; font-size:11px; font-weight:700; }
.avatar { width:34px;height:34px }.profile div:nth-child(2){display:grid}.profile strong{font-size:11px}.profile small{color:#777684;font-size:9px}.profile button{border:0;background:none;color:#aaa9b6;font-size:17px}
.main-content { min-width: 0; }.topbar { height: 72px; background: var(--surface); border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: center; padding: 0 34px; position: sticky; top: 0; z-index: 10; }
.search { width: min(470px, 50vw); position: relative; display: flex; align-items: center; }.search > span{position:absolute;left:13px;color:#9496a6;font-size:21px}.search input{width:100%;border:1px solid var(--line);background:var(--bg);border-radius:9px;padding:10px 48px 10px 40px;color:var(--text);outline:none}.search input:focus{border-color:#968df1;box-shadow:0 0 0 3px #6558e817}.search kbd{position:absolute;right:10px;border:1px solid var(--line);background:var(--surface);border-radius:5px;padding:2px 6px;color:#989aaa;font:10px inherit}
.top-actions { position:absolute;right:33px;display:flex;gap:9px;align-items:center }.icon-button{width:34px;height:34px;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:8px}.notification{position:relative}.notification i{position:absolute;width:6px;height:6px;background:#f36f61;border-radius:50%;right:6px;top:6px}.mini-avatar{width:33px;height:33px;margin-left:4px}.mobile-only{display:none}
.workspace { padding: 36px 38px 48px; max-width: 1600px; margin: 0 auto; }.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.eyebrow{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:1.1px;color:#8a8c9a;font-weight:700}.eyebrow i{width:3px;height:3px;background:#bbbcc6;border-radius:50%}.page-heading h1{font-size:27px;margin:6px 0 4px;letter-spacing:-.6px}.page-heading p{margin:0;color:var(--muted);font-size:13px}.heading-actions,.member-stack{display:flex;align-items:center}.member-bubble,.member-add{width:31px;height:31px;border:2px solid var(--surface)}.member-bubble{margin-left:-7px}.member-bubble:first-child{margin-left:0}.member-add{margin-left:-7px;border-radius:50%;background:var(--surface-2);color:var(--muted)}.outline-button{margin-left:12px;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:8px;height:32px;padding:0 11px}
.toolbar{display:flex;justify-content:flex-end;border-bottom:1px solid var(--line);margin-bottom:22px}.filter-actions{display:flex;gap:7px;padding-bottom:8px}.tool-button,.filter-actions select{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:7px;padding:7px 10px;font-size:11px}.tool-button b{background:var(--primary);color:#fff;border-radius:8px;padding:1px 5px;margin-left:4px}
.board-switcher{display:flex;align-items:center;gap:8px;margin:-8px 0 15px;overflow-x:auto;padding-bottom:3px}.board-tabs{display:flex;align-items:center;gap:6px}.board-tab{display:flex;align-items:center;border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden;white-space:nowrap}.board-tab>button{border:0;background:transparent;color:var(--muted);height:32px}.board-tab .board-select{display:flex;align-items:center;gap:7px;padding:0 10px;font-size:10px}.board-tab .board-select i{width:8px;height:8px;border-radius:50%}.board-tab .board-edit{padding:0 8px;border-left:1px solid var(--line);font-size:10px}.board-tab.active{border-color:#8b81eb;background:#f0eeff}.board-tab.active .board-select{color:var(--primary);font-weight:600}.new-board-button{height:32px;flex:none;border:1px dashed #bfc1ce;background:transparent;color:var(--primary);border-radius:8px;padding:0 11px;font-size:10px;font-weight:600}
.board{display:flex;gap:15px;align-items:flex-start;overflow-x:auto;padding-bottom:15px}.column{width:260px;min-width:225px;flex:0 0 min(260px,72vw);background:#eef0f5;border-radius:10px;padding:12px 10px;min-height:310px;transition:.2s}.column.drag-over{background:#e4e2fb;box-shadow:inset 0 0 0 2px #8175ec}.column-header{display:flex;align-items:center;padding:0 3px 11px;gap:8px}.column-color{width:7px;height:7px;border-radius:50%;flex:none}.column-header h2{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;letter-spacing:.5px;text-transform:uppercase;margin:0}.column-header .count{font-size:10px;color:#8d8f9d;background:#dfe1e8;border-radius:8px;padding:1px 6px}.column-menu{margin-left:auto;border:0;background:none;color:#9799a7;border-radius:6px;padding:4px 6px}.column-menu:hover{background:#dedfe7;color:var(--primary)}.task-list{display:grid;gap:9px;min-height:55px}.task-card{background:var(--surface);border:1px solid transparent;border-radius:8px;padding:12px;box-shadow:var(--card-shadow);cursor:grab;transition:transform .16s,box-shadow .16s,border .16s}.task-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #3c396119;border-color:#dadbe6}.task-card.dragging{opacity:.45;transform:rotate(2deg)}.task-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.task-card h3{font-size:12px;line-height:1.35;margin:0;color:var(--text)}.priority{flex:none;width:7px;height:7px;border-radius:50%;margin-top:4px}.priority.high{background:#f06c61}.priority.medium{background:#f1ae48}.priority.low{background:#66b994}.task-card p{color:var(--muted);font-size:10px;line-height:1.5;margin:7px 0 9px}.tag{display:inline-block;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.45px;padding:3px 6px;border-radius:4px;background:#eeeafd;color:#6658d9}.task-meta{display:flex;gap:9px;align-items:center;margin-top:10px;padding-top:9px;border-top:1px solid var(--line);color:#9a9ca9;font-size:9px}.task-meta .due.overdue{color:#ef6d62}.task-meta .due.today{color:#e39c31}.task-meta .assignee{margin-left:auto;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#8b8d99;color:#fff;font-size:7px;font-weight:700}.check-progress{display:flex;align-items:center;gap:5px}.mini-progress{width:30px;height:3px;background:#e7e8ed;border-radius:3px;overflow:hidden}.mini-progress i{display:block;height:100%;background:#6dc59d}.add-task{width:100%;border:1px dashed #cfd1da;background:transparent;color:#9294a2;border-radius:8px;padding:9px;margin-top:9px;text-align:left;font-size:10px}.add-task:hover{border-color:#8175ec;color:#6558e8;background:#ffffff88}.new-column-card{flex:0 0 210px;min-height:120px;border:1px dashed #bfc1ce;background:transparent;color:var(--muted);border-radius:10px;display:grid;place-items:center;align-content:center;gap:5px;padding:20px}.new-column-card span{font-size:24px;color:var(--primary)}.new-column-card strong{font-size:11px;color:var(--primary)}.new-column-card small{font-size:8px}.new-column-card:hover{border-color:#8175ec;background:#6558e808}.empty-state{text-align:center;padding:80px 20px;color:var(--muted)}.empty-state strong{display:block;color:var(--text);font-size:18px;margin-bottom:6px}
.modal{width:min(580px,calc(100vw - 28px));border:0;border-radius:15px;padding:0;background:var(--surface);color:var(--text);box-shadow:0 24px 80px #1d1b3155}.modal::backdrop{background:#252433aa;backdrop-filter:blur(3px)}.modal form{padding:24px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}.modal h2{font-size:20px;margin:4px 0}.modal-eyebrow{font-size:9px;color:var(--primary);font-weight:700;letter-spacing:1px}.close-button{border:0;background:var(--surface-2);color:var(--muted);font-size:21px;width:32px;height:32px;border-radius:8px}.field{display:grid;gap:6px;margin-bottom:14px}.field>span{font-size:10px;color:var(--muted);font-weight:600}.field small{font-weight:400}.field input,.field textarea,.field select{border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:8px;padding:10px 11px;outline:none;resize:vertical;font-size:12px}.field input:focus,.field textarea:focus,.field select:focus{border-color:#8e83ef;box-shadow:0 0 0 3px #6558e815}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:grid;grid-template-columns:auto 1fr auto auto;gap:9px;margin-top:23px}.save-button,.secondary-button,.danger-button{border:0;border-radius:8px;padding:10px 14px;font-size:11px;font-weight:600}.save-button{background:var(--primary);color:#fff}.save-button:hover{background:var(--primary-dark)}.secondary-button{background:var(--surface-2);color:var(--muted)}.danger-button{background:#fce9e7;color:#d95449}.small-modal{padding:30px;text-align:center;width:min(470px,calc(100vw - 28px));position:relative}.cloud-illustration{width:64px;height:64px;border-radius:20px;background:#eeecff;color:var(--primary);display:grid;place-items:center;font-size:28px;margin:0 auto 16px}.small-modal h2{font-size:20px}.small-modal p{color:var(--muted);font-size:12px;line-height:1.6}.floating{position:absolute;right:18px;top:18px}.cloud-steps{display:flex;align-items:center;justify-content:center;margin:22px 0;text-align:left}.cloud-steps>div{display:flex;gap:8px;align-items:center}.cloud-steps b{width:25px;height:25px;border-radius:50%;background:#ebe8ff;color:var(--primary);display:grid;place-items:center;font-size:10px}.cloud-steps span{display:grid}.cloud-steps strong{font-size:9px}.cloud-steps small{font-size:8px;color:var(--muted)}.cloud-steps i{width:35px;height:1px;background:var(--line);margin:0 10px}.full{width:100%}
.attachment-heading{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:10px;font-weight:600}.attachment-heading small{font-size:9px;font-weight:400}.attachment-picker{width:max-content;display:flex;align-items:center;gap:6px;border:1px dashed #c7c9d5;color:var(--primary);border-radius:8px;padding:8px 11px;font-size:10px;font-weight:600;cursor:pointer}.attachment-picker:hover{background:#6558e80d;border-color:#8c82ed}.attachment-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.attachment-list{display:grid;gap:6px}.attachment-item{display:grid;grid-template-columns:31px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px;background:var(--bg);border:1px solid var(--line);border-radius:8px}.attachment-icon{width:31px;height:31px;border-radius:7px;background:#ece9ff;color:var(--primary);display:grid;place-items:center;font-size:14px}.attachment-info{min-width:0;display:grid}.attachment-info strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-info small{font-size:8px;color:var(--muted)}.attachment-actions{display:flex;gap:4px}.attachment-actions button{width:27px;height:27px;border:0;border-radius:6px;background:var(--surface);color:var(--muted);font-size:12px}.attachment-actions button:hover{color:var(--primary);background:#eae7ff}.attachment-actions .remove-attachment:hover{color:#d95449;background:#fce9e7}.attachment-count{white-space:nowrap}
.checklist-heading{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:10px;font-weight:600}.checklist-heading small{font-size:9px;font-weight:400}.checklist-items{display:grid;gap:5px}.checklist-empty{padding:10px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);font-size:9px;text-align:center}.checklist-item{display:grid;grid-template-columns:20px minmax(0,1fr) 27px;gap:7px;align-items:center;padding:7px 7px 7px 9px;background:var(--bg);border:1px solid var(--line);border-radius:8px}.checklist-item input{appearance:none;width:16px;height:16px;margin:0;padding:0;border:1.5px solid #b9bbc7;border-radius:5px;background:var(--surface);display:grid;place-items:center;cursor:pointer}.checklist-item input:checked{background:var(--primary);border-color:var(--primary)}.checklist-item input:checked::after{content:"✓";color:#fff;font-size:10px;font-weight:700}.checklist-item label{min-width:0;font-size:10px;line-height:1.3;cursor:pointer}.checklist-item input:checked+label{text-decoration:line-through;color:var(--muted)}.checklist-item button{width:27px;height:27px;border:0;border-radius:6px;background:transparent;color:#a0a1ae}.checklist-item button:hover{background:#fce9e7;color:#d95449}.checklist-add{display:grid;grid-template-columns:1fr auto;gap:6px}.checklist-add input{min-width:0}.checklist-add button{border:0;border-radius:8px;background:var(--surface-2);color:var(--primary);padding:0 11px;font-size:10px;font-weight:600}.check-progress{white-space:nowrap}
.assignee-field{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.assignee-field button{height:36px;margin-bottom:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--primary);padding:0 12px;font-size:10px;font-weight:600}.member-modal{width:min(430px,calc(100vw - 28px))}.color-field{grid-template-columns:1fr 46px;align-items:center}.color-field input{width:46px;height:34px;padding:3px;border-radius:8px}.modal-actions.compact{margin-top:18px}
.member-list{display:grid;gap:6px;margin:-5px 0 18px;padding-bottom:17px;border-bottom:1px solid var(--line)}.member-list-row{display:grid;grid-template-columns:32px 1fr 28px 28px;gap:6px;align-items:center}.member-list-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:9px;font-weight:700}.member-list-info{display:grid}.member-list-info strong{font-size:10px}.member-list-info small{font-size:8px;color:var(--muted)}.member-list-row button{width:28px;height:28px;border:0;border-radius:6px;background:var(--surface-2);color:var(--muted)}.member-list-row button:hover{background:#eae7ff;color:var(--primary)}.member-list-row .remove-member:hover{background:#fce9e7;color:#d95449}.member-list-row button:disabled{opacity:.35;cursor:not-allowed}
.profile-photo-field{display:grid;grid-template-columns:64px 1fr;gap:13px;align-items:center;margin-bottom:17px}.member-photo-preview{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--surface-2);border:1px dashed #bfc1ce;color:var(--muted);font-size:24px}.member-photo-preview img{width:100%;height:100%;object-fit:cover}.profile-photo-copy{display:grid;justify-items:start;gap:3px}.profile-photo-copy strong{font-size:11px}.profile-photo-copy small{font-size:8px;color:var(--muted)}.photo-actions{display:flex;align-items:center;gap:6px}.photo-upload-button{display:flex;align-items:center;gap:5px;margin-top:5px;border:1px solid var(--line);border-radius:7px;padding:7px 9px;background:var(--surface-2);color:var(--primary);font-size:9px;font-weight:600;cursor:pointer}.photo-upload-button:hover{border-color:#9187ed}.photo-upload-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.photo-actions button{margin-top:5px;border:0;background:transparent;color:#d95449;font-size:9px}.member-bubble,.mini-avatar,.avatar{overflow:hidden}.member-bubble img,.mini-avatar img,.avatar img,.task-meta .assignee img,.member-list-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.task-meta .assignee{overflow:hidden}
.project-logo-field{display:grid;grid-template-columns:68px 1fr;gap:13px;align-items:center;margin-bottom:17px}.project-logo-field>div:nth-child(2){display:grid;justify-items:start;gap:3px}.project-logo-field strong{font-size:11px}.project-logo-field small{font-size:8px;color:var(--muted)}.project-logo-preview{width:68px;height:68px;border-radius:16px;display:grid;place-items:center;overflow:hidden;background:#eeecff;border:1px dashed #bfc1ce;color:var(--primary);font-size:22px;font-weight:700}.project-logo-preview img{width:100%;height:100%;object-fit:cover}
.project-access-field{border:1px solid var(--line);border-radius:10px;padding:12px;margin:2px 0 14px}.project-access-field legend{padding:0 5px;font-size:10px;font-weight:700;color:var(--text)}.project-access-field>p{margin:0 0 10px;color:var(--muted);font-size:9px;line-height:1.5}.project-access-list{display:grid;gap:6px;max-height:150px;overflow:auto}.project-access-option{display:grid;grid-template-columns:18px 30px 1fr;gap:8px;align-items:center;padding:7px 8px;border-radius:8px;background:var(--surface-2);cursor:pointer}.project-access-option input{accent-color:var(--primary)}.project-access-option .member-list-avatar{width:30px;height:30px}.project-access-copy{display:grid}.project-access-copy strong{font-size:10px}.project-access-copy small{font-size:8px;color:var(--muted)}.project-access-empty{padding:10px;border-radius:8px;background:var(--surface-2);color:var(--muted);font-size:9px;text-align:center}
.empty-board{min-width:min(520px,80vw);min-height:230px;border:1px dashed var(--line);border-radius:14px;display:grid;place-content:center;justify-items:center;gap:7px;color:var(--muted);text-align:center;padding:28px}.empty-board strong{color:var(--text);font-size:15px}.empty-board span{max-width:330px;font-size:10px;line-height:1.5}
.comments-section{border-top:1px solid var(--line);margin-top:18px;padding-top:17px}.comments-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.comments-heading span{font-size:10px;font-weight:700;color:var(--text)}.comments-heading small{font-size:8px;color:var(--muted)}.comment-list{display:grid;gap:8px;max-height:220px;overflow:auto}.comment-empty,.comment-access-message{margin:0;padding:12px;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:9px;text-align:center}.comment-item{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:start;padding:10px;border-radius:10px;background:var(--surface-2)}.comment-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;overflow:hidden;color:#fff;font-size:8px;font-weight:700}.comment-avatar img{width:100%;height:100%;object-fit:cover}.comment-body{min-width:0;display:grid;gap:4px}.comment-meta{display:flex;align-items:center;gap:6px}.comment-meta strong{font-size:9px}.comment-meta time{font-size:7px;color:var(--muted)}.comment-body p{margin:0;color:var(--text);font-size:10px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.comment-delete{border:0;background:transparent;color:var(--muted);font-size:15px;line-height:1}.comment-delete:hover{color:#d95449}.comment-composer{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.comment-composer textarea{border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:8px;padding:9px 10px;resize:vertical;font-size:10px;outline:none}.comment-composer textarea:focus{border-color:#8e83ef;box-shadow:0 0 0 3px #6558e815}.comment-composer button{align-self:end;border:0;border-radius:8px;padding:10px 13px;background:var(--primary);color:#fff;font-size:10px;font-weight:700}.comment-composer button:disabled,.comment-composer textarea:disabled{opacity:.55}.comment-access-message{margin-top:8px}
.modal{max-height:calc(100vh - 28px);overflow:auto}
.toast{position:fixed;right:25px;bottom:25px;background:#242330;color:#fff;border-radius:9px;padding:11px 15px;font-size:11px;box-shadow:var(--shadow);transform:translateY(80px);opacity:0;transition:.25s;z-index:100}.toast.show{transform:translateY(0);opacity:1}
body.dark{--bg:#191922;--surface:#23232e;--surface-2:#2c2c38;--text:#eeeeF5;--muted:#9999aa;--line:#383844;--sidebar:#16161e;--card-shadow:0 2px 10px #0003}body.dark .column{background:#20202a}body.dark .column.drag-over{background:#2b2848}body.dark .tag{background:#363057;color:#b4acf9}body.dark .member-add{border-color:var(--surface)}
@media(max-width:1100px){.workspace{padding:30px 25px}.app-shell{grid-template-columns:225px 1fr}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;left:-280px;width:258px;transition:left .25s;box-shadow:15px 0 35px #1116}.sidebar.open{left:0}.main-content{width:100%}.topbar{justify-content:flex-start;padding:0 15px;gap:12px}.mobile-only{display:block}.search{width:calc(100% - 145px)}.search kbd{display:none}.top-actions{right:14px}.top-actions>.icon-button{display:none}.workspace{padding:24px 16px}.page-heading{align-items:flex-start}.page-heading p{max-width:260px}.heading-actions{display:none}.toolbar{align-items:flex-start}.filter-actions select,#sortButton{display:none}.column{flex-basis:82vw}.field-row{grid-template-columns:1fr}.modal-actions{grid-template-columns:auto 1fr auto}.modal-actions .secondary-button{display:none}}
