:root {
    --sidebar: #3f2c61;
    --sidebar-hover: #5a427e;
    --ink: #1e1f21;
    --muted: #6d6e6f;
    --line: #e7e7e5;
    --soft: #f7f7f5;
    --purple: #6d5bd0;
}
* { box-sizing: border-box; }
body { font-family: Inter, system-ui, sans-serif; color: var(--ink); background: #fff; font-size: 14px; }
.min-w-0 { min-width: 0; }
.app-shell { min-height: 100vh; display: flex; }
.app-sidebar {
    --bs-offcanvas-bg: var(--sidebar);
    width: 244px;
    min-width: 244px;
    background: var(--sidebar) !important;
    background-color: var(--sidebar) !important;
    color: #fff;
    display: flex;
    flex-direction: column;
    height: 100vh;
    position: sticky;
    top: 0;
    z-index: 1040;
}
.sidebar-head { height: 64px; display: flex; align-items: center; padding: 0 18px; justify-content: space-between; }
.brand { color: #fff; font-size: 21px; text-decoration: none; font-weight: 700; letter-spacing: -.7px; display: inline-flex; align-items: center; gap: 9px; }
.brand-mark { width: 23px; height: 19px; position: relative; display: inline-block; }
.brand-mark i { width: 8px; height: 8px; border-radius: 50%; background: #ff6b6b; position: absolute; bottom: 0; }
.brand-mark i:nth-child(1) { left: 0; }.brand-mark i:nth-child(2) { right: 0; }.brand-mark i:nth-child(3) { top: 0; left: 7.5px; }
.workspace-switcher { margin: 2px 10px 10px; padding: 10px; border-radius: 7px; display: flex; align-items: center; gap: 10px; background: #513b75; cursor: pointer; }
.workspace-switcher small { color: #cfc3df; font-size: 11px; }
.workspace-logo { width: 32px; height: 32px; border-radius: 7px; display: grid; place-items: center; background: linear-gradient(135deg,#8b7cf6,#5b4cc4); font-weight: 700; }
.sidebar-nav { display: flex; flex-direction: column; padding: 4px 8px; gap: 2px; }
.sidebar-nav a, .sidebar-bottom > a { color: #e6dff0; text-decoration: none; display: flex; align-items: center; gap: 11px; padding: 8px 11px; border-radius: 6px; font-size: 13px; }
.sidebar-nav a i, .sidebar-bottom > a i { font-size: 16px; }
.sidebar-nav a:hover, .sidebar-nav a.active, .sidebar-bottom > a:hover { color:#fff; background: var(--sidebar-hover); }
.nav-count { margin-left: auto; min-width: 20px; text-align: center; border-radius: 10px; background: #f06a6a; font-size: 11px; color:#fff; }
.sidebar-label { color: #c3b5d5; padding: 18px 15px 5px 19px; font-size: 11px; text-transform: uppercase; letter-spacing: .07em; display:flex; justify-content:space-between; align-items:center; }
.sidebar-label > a { color:inherit;text-decoration:none; }.sidebar-label > a:hover,.sidebar-label > a.active { color:#fff; }
.btn-icon { border: 0; background: transparent; color: inherit; border-radius: 4px; padding: 2px 5px; }.btn-icon:hover { background: #ffffff18; color:#fff; }
.project-dot { width: 10px; height: 10px; border-radius: 3px; flex: 0 0 auto; }
.project-nav { overflow-y:auto; max-height: 32vh; }
.sidebar-bottom { margin-top: auto; border-top: 1px solid #ffffff12; padding: 8px; }
.profile-menu { margin-top: 5px; border-top:1px solid #ffffff12; padding-top:8px; }
.profile-menu > button { width:100%; border:0; background:transparent; color:#fff; display:flex; align-items:center; gap:10px; padding:6px 10px; }
.profile-menu .dropdown-toggle:after { margin-left:auto; }
.avatar { width:30px; height:30px; min-width:30px; border-radius:50%; display:inline-grid; place-items:center; color:#fff; font-size:11px; font-weight:700; border:2px solid #fff; }
.avatar-sm { width:25px; height:25px; min-width:25px; border-width:1px; }
.avatar-stack { display:flex; }.avatar-stack .avatar { margin-left:-7px; }.avatar-stack .avatar:first-child { margin-left:0; }
.project-team-trigger { border:0;background:transparent;padding:3px 4px;border-radius:18px;align-items:center;transition:background .15s,box-shadow .15s; }
.project-team-trigger:hover,.project-team-trigger:focus { background:#f0edf7;box-shadow:0 0 0 2px #e5def2;outline:0; }
.project-team-trigger .avatar { pointer-events:none; }.project-team-more { background:#655778;color:#fff;letter-spacing:-.02em; }
.app-main { flex:1; min-width:0; background:#fff; }
.mobile-topbar { height:58px; border-bottom:1px solid var(--line); padding:8px 14px; align-items:center; justify-content:space-between; }
.page-wrap { padding: 30px 36px; max-width: 1500px; margin: 0 auto; }
.eyebrow { text-transform:uppercase; letter-spacing:.08em; color:var(--muted); font-size:11px; font-weight:600; }
.page-title { font-size:27px; font-weight:600; letter-spacing:-.6px; }
.btn-primary { --bs-btn-bg:#5b5fc7; --bs-btn-border-color:#5b5fc7; --bs-btn-hover-bg:#4b4fae; --bs-btn-hover-border-color:#4b4fae; }
.btn { font-size:13px; font-weight:500; border-radius:7px; }
.form-control,.form-select { border-color:#d9d9d7; font-size:13px; border-radius:7px; padding:.6rem .75rem; }
.form-control:focus,.form-select:focus { border-color:#7a6ff0; box-shadow:0 0 0 .18rem #7a6ff01a; }
.dashboard-hero { background: linear-gradient(120deg,#eeebff 0%,#f8f6ff 45%,#fff5ef 100%); border:1px solid #e4defe; border-radius:18px; padding:28px 30px; position:relative; overflow:hidden; }
.dashboard-hero:after { content:""; position:absolute; width:190px;height:190px;border:32px solid #b8acf544;border-radius:50%;right:-30px;top:-85px; }
.quick-add { display:flex; background:#fff; padding:6px; border:1px solid #e0dafa; border-radius:10px; box-shadow:0 5px 18px #6d5bd012; max-width:640px; position:relative; z-index:1; }
.quick-add input { flex:1; border:0; padding:7px 10px; outline:0; }
.stat-card { border:1px solid var(--line); border-radius:12px; padding:18px; height:100%; background:#fff; }
.stat-icon { width:38px;height:38px;border-radius:9px;display:grid;place-items:center;font-size:18px; }
.stat-number { font-size:24px;font-weight:650;letter-spacing:-.5px; }
.section-heading { display:flex;align-items:center;justify-content:space-between;margin:28px 0 13px; }
.section-heading h2 { font-size:16px;margin:0;font-weight:600; }
.project-card { border:1px solid var(--line); border-radius:12px; padding:17px; height:100%; transition:.18s; color:inherit; text-decoration:none; display:block; }
.project-card:hover { transform:translateY(-2px); border-color:#c9c9c5; box-shadow:0 8px 24px #1e1f210d; }
.project-icon { width:42px;height:42px;border-radius:10px;color:#fff;display:grid;place-items:center;font-size:19px; }
.project-icon-sm { width:36px;height:36px;min-width:36px;font-size:15px; }
.progress-thin { height:5px; background:#eee; }
.task-mini { display:flex;align-items:center;gap:12px;padding:11px 4px;border-bottom:1px solid #eeeeec; }
.task-mini:last-child { border:0; }
.check-btn { width:19px;height:19px;border-radius:50%;border:1.6px solid #a8a8a5;background:#fff;padding:0;display:grid;place-items:center;color:#fff;flex:0 0 auto; }
.check-btn:hover { border-color:#5b5fc7; }.check-btn.completed { background:#58a182;border-color:#58a182; }
.priority { font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:4px 7px;border-radius:5px;font-weight:600; }
.priority-high { color:#b51b34;background:#ffe7eb; }.priority-medium { color:#9a6500;background:#fff2d0; }.priority-low { color:#297a60;background:#e5f6f0; }
.color-picker { display:flex;gap:9px; }.color-picker input { display:none; }.color-picker span { width:27px;height:27px;border-radius:50%;display:block;cursor:pointer;border:3px solid #fff;box-shadow:0 0 0 1px #ddd; }.color-picker input:checked + span { box-shadow:0 0 0 2px #222; }
.auth-body { min-height:100vh;background:linear-gradient(135deg,#fff 40%,#f3f0ff); }
.auth-wrap { min-height:100vh;display:grid;grid-template-columns:1fr 1fr; }
.auth-panel { display:flex;align-items:center;justify-content:center;padding:40px; }
.auth-card { width:100%;max-width:420px; }
.auth-card .brand { color:var(--ink);margin-bottom:42px;font-size:25px; }
.auth-visual { margin:18px;background:linear-gradient(145deg,#3e326b,#6757b9);border-radius:22px;color:#fff;padding:70px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden; }
.auth-visual:before,.auth-visual:after { content:"";position:absolute;border-radius:50%;border:45px solid #ffffff10;width:330px;height:330px; }.auth-visual:before { right:-100px;top:-90px; }.auth-visual:after { left:-160px;bottom:-190px; }
.auth-visual h2 { font-size:38px;letter-spacing:-1.3px;max-width:520px;position:relative;z-index:1; }.auth-visual p { color:#ddd7ff;font-size:16px;max-width:480px;position:relative;z-index:1; }
.form-label { font-size:12px;font-weight:600;color:#4d4e50; }
.project-header { border-bottom:1px solid var(--line);padding:17px 25px 0;position:sticky;top:0;background:#fff;z-index:20; }
.project-titlebar { display:flex;align-items:center;gap:12px; }
.project-titlebar h1 { font-size:18px;margin:0;font-weight:600; }
.project-tabs { display:flex;gap:22px;margin-top:14px; }
.project-tabs a { color:#666;text-decoration:none;padding:8px 1px 11px;border-bottom:2px solid transparent;font-size:12px; }
.project-tabs a.active { color:var(--ink);border-bottom-color:var(--ink);font-weight:600; }
.project-content { padding:18px 26px; }
.toolbar { display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px; }
.task-table { border:1px solid var(--line);border-radius:10px;overflow:hidden; }
.section-row { background:#fafaf9;padding:10px 13px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;font-weight:600;font-size:12px; }
.list-section { background:#fff; }
.list-task-zone { min-height:4px; }
.task-drag-handle,.section-drag-handle { color:#aaa;cursor:grab;opacity:0;transition:opacity .15s;touch-action:none; }
.task-row:hover .task-drag-handle,.section-row:hover .section-drag-handle { opacity:1; }
.task-drag-handle:active,.section-drag-handle:active { cursor:grabbing; }
.list-task-zone:empty { min-height:8px;background:#fafafa;border-bottom:1px solid #eeeeec; }
.list-section.sortable-ghost { background:#eee9ff; }
.section-drag-handle { border:0;background:transparent;padding:2px 3px;margin:-2px 0;opacity:.72;border-radius:4px;line-height:1; }
.section-drag-handle:hover,.section-drag-handle:focus { opacity:1;background:#ece8f8;color:#5b4cc4; }
.section-order-guide { display:flex;align-items:center;gap:6px;padding:8px 12px;background:#f7f5fc;border:1px solid #e5e0f3;border-bottom:0;border-radius:10px 10px 0 0;color:#6e6878;font-size:10px; }
.section-order-status { transition:color .15s; }.list-sections.is-reordering .list-section:not(.sortable-chosen) { opacity:.7; }
.list-section.sortable-chosen { box-shadow:0 6px 18px #4c3c741c; }.list-section.sortable-drag { opacity:.95; }
.section-order-guide + .list-sections .list-section:first-child .section-row { border-top:0; }
.add-section-inline { display:flex;align-items:center;gap:9px;max-width:560px;margin-top:14px;border:1px dashed #cfc8dc;border-radius:9px;padding:7px 8px 7px 12px;color:#7b6e8e;background:#fcfbfe; }
.add-section-inline:focus-within { border-style:solid;border-color:#7a6ff0;box-shadow:0 0 0 .18rem #7a6ff01a; }
.add-section-inline input { flex:1;min-width:0;border:0;background:transparent;outline:0;font-size:13px;padding:5px 2px; }
.task-row { display:grid;grid-template-columns:minmax(260px,1fr) 155px 120px 120px 55px;align-items:center;min-height:45px;border-bottom:1px solid #eeeeec;padding:0 12px;cursor:pointer; }
.task-row:last-child { border-bottom:0; }.task-row:hover { background:#fafafa; }
.task-name { display:flex;align-items:center;gap:10px;min-width:0;font-weight:500; }
.task-name.completed span { text-decoration:line-through;color:#8d8d8b; }
.col-head { background:#fafaf9;color:#777;font-size:11px;text-transform:uppercase;letter-spacing:.04em;min-height:36px; }
.add-task-row { padding:8px 12px;border-bottom:1px solid #eeeeec; }
.add-task-row input { border:0;outline:0;width:100%;font-size:13px;background:transparent; }
.board-wrap { display:flex;gap:14px;overflow-x:auto;padding-bottom:20px;min-height:calc(100vh - 165px);align-items:flex-start; }
.board-column { width:310px;min-width:310px;background:#f5f5f3;border-radius:10px;padding:10px; }
.board-column-head { display:flex;align-items:center;padding:3px 3px 11px;font-weight:600;font-size:12px; }
.board-count { background:#e6e6e3;border-radius:10px;padding:1px 7px;color:#777;margin-left:7px;font-weight:500; }
.board-list { min-height:30px; }
.task-card { background:#fff;border:1px solid #dededb;border-radius:8px;padding:12px;margin-bottom:9px;cursor:pointer;box-shadow:0 1px 1px #00000008; }
.task-card:hover { border-color:#bab9b5; }.task-card .task-title { font-weight:500;margin-bottom:13px;line-height:1.4; }
.task-card-meta { display:flex;align-items:center;gap:7px;color:#737373;font-size:11px; }
.sortable-ghost { opacity:.35; }.sortable-drag { transform:rotate(2deg); }
.task-offcanvas { width:min(620px,100vw)!important; }
.task-offcanvas .offcanvas-header { border-bottom:1px solid var(--line);padding:13px 20px; }
.task-detail-body { padding:24px 28px; }
.task-title-input { border:0;font-size:23px;font-weight:600;padding:0;box-shadow:none!important; }
.detail-grid { display:grid;grid-template-columns:110px 1fr;gap:15px 12px;margin:25px 0;align-items:center; }
.detail-label { color:#777;font-size:12px; }.detail-grid .form-control,.detail-grid .form-select { border-color:transparent;background:#f7f7f5; }
.comment { display:flex;gap:10px;padding:13px 0;border-bottom:1px solid #eee; }.comment-body { background:#f7f7f5;border-radius:8px;padding:9px 12px;flex:1; }.comment-body p { margin:3px 0 0;white-space:pre-wrap; }
.empty-state { text-align:center;padding:55px 20px;color:#777; }.empty-state i { font-size:34px;color:#aaa; }
.due-overdue { color:#d33c57!important; }
.help-item { display:flex;gap:14px;padding:13px 0;border-bottom:1px solid var(--line); }
.help-item:last-child { border-bottom:0; }.help-item > i { width:34px;height:34px;border-radius:8px;background:#eee9ff;color:#5b4cc4;display:grid;place-items:center;font-size:16px;flex:0 0 auto; }
.help-item p { color:var(--muted);font-size:12px;margin:3px 0 0; }
.inbox-list { max-width:900px;margin:0 auto;border:1px solid var(--line);border-radius:12px;overflow:hidden; }
.inbox-item { display:flex;gap:14px;padding:17px;color:inherit;text-decoration:none;border-bottom:1px solid var(--line);transition:.15s; }
.inbox-item:last-child { border-bottom:0; }.inbox-item:hover { background:#faf9ff; }
.activity-icon { width:36px;height:36px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto; }
.activity-task { background:#e9f5ef;color:#328260; }.activity-comment { background:#eee9ff;color:#5b4cc4; }.activity-message { background:#fff0dc;color:#ad6d0f; }
.calendar-toolbar { display:flex;align-items:center;margin-bottom:15px;gap:6px; }
.calendar-toolbar h2 { font-size:17px;margin:0 10px;min-width:130px;text-align:center; }
.calendar-grid { display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));border:1px solid var(--line);border-radius:10px;overflow:auto; }
.calendar-weekday { background:#f7f7f5;padding:9px;text-align:center;text-transform:uppercase;font-size:10px;font-weight:600;color:#777;border-right:1px solid var(--line); }
.calendar-day { min-height:125px;padding:8px;border-right:1px solid var(--line);border-top:1px solid var(--line);background:#fff; }
.calendar-day.outside { background:#fafaf9;color:#aaa; }.calendar-day.today { background:#f8f6ff;box-shadow:inset 0 0 0 1px #7a6ff0; }
.day-number { width:25px;height:25px;display:grid;place-items:center;border-radius:50%;font-size:11px;margin-bottom:5px; }
.calendar-day.today .day-number { color:#fff;background:#6d5bd0; }
.calendar-task { display:block;width:100%;border:0;border-left:3px solid var(--task-color);border-radius:4px;background:color-mix(in srgb,var(--task-color) 10%,white);color:#333;text-align:left;font-size:10px;padding:5px 6px;margin:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none; }
.calendar-task:hover { filter:brightness(.97); }.calendar-task.completed { text-decoration:line-through;opacity:.65; }
.report-card { border:1px solid var(--line);border-radius:12px;padding:20px;height:100%; }
.report-card h3,.message-composer h3 { font-size:15px;margin-bottom:18px; }
.report-row { display:flex;align-items:center;gap:10px;padding:10px 0; }
.report-name { width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px; }
.report-bar { height:8px;background:#eee;border-radius:8px;overflow:hidden;flex:1; }.report-bar i { display:block;height:100%;border-radius:8px; }
.messages-layout { display:grid;grid-template-columns:minmax(280px,380px) minmax(400px,1fr);gap:20px;align-items:start; }
.message-composer { border:1px solid var(--line);border-radius:12px;padding:20px;position:sticky;top:145px; }
.message-feed { display:flex;flex-direction:column;gap:13px; }
.message-card { border:1px solid var(--line);border-radius:12px;padding:20px; }.message-card h3 { font-size:17px; }.message-card p { color:#555;white-space:pre-wrap;margin-bottom:0;line-height:1.6; }
.task-table.hide-assignee .column-assignee,.task-table.hide-priority .column-priority,.task-table.hide-due .column-due { display:none; }
.task-table.hide-assignee .task-row { grid-template-columns:minmax(260px,1fr) 120px 120px 55px; }
.task-table.hide-priority .task-row,.task-table.hide-due .task-row { grid-template-columns:minmax(260px,1fr) 155px 120px 55px; }
.task-table.hide-assignee.hide-priority .task-row,.task-table.hide-assignee.hide-due .task-row { grid-template-columns:minmax(260px,1fr) 120px 55px; }
.task-table.hide-priority.hide-due .task-row { grid-template-columns:minmax(260px,1fr) 155px 55px; }
.task-table.hide-assignee.hide-priority.hide-due .task-row { grid-template-columns:minmax(260px,1fr) 55px; }
.project-searchbar { display:flex;gap:10px;margin-bottom:17px; }.project-searchbar .input-group { max-width:420px; }.project-searchbar .form-select { width:170px;flex:0 0 auto; }
.projects-management { border:1px solid var(--line);border-radius:11px;overflow:hidden; }
.project-management-row { display:grid;grid-template-columns:minmax(250px,1.5fr) 115px minmax(155px,.8fr) 115px 150px 42px;gap:16px;align-items:center;padding:13px 15px;border-bottom:1px solid var(--line); }
.project-management-row:last-child { border-bottom:0; }.project-management-row:not(.project-management-head):hover { background:#fafafa; }
.project-management-head { background:#f7f7f5;color:#777;text-transform:uppercase;font-size:10px;letter-spacing:.04em;font-weight:600;padding-top:10px;padding-bottom:10px; }
.status-pill { display:inline-block;padding:5px 8px;border-radius:6px;font-size:10px;font-weight:600; }
.status-active { color:#24745a;background:#e4f4ed; }.status-on_hold { color:#906100;background:#fff0ca; }.status-completed { color:#526277;background:#e9edf2; }
.permission-guide { display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:20px; }
.permission-guide > div { border:1px solid var(--line);border-radius:9px;padding:13px; }.permission-guide p { color:var(--muted);font-size:11px;margin:8px 0 0;line-height:1.45; }
.members-card { border:1px solid var(--line);border-radius:11px;overflow:hidden; }
.member-row { display:grid;grid-template-columns:minmax(240px,1fr) 160px 100px 120px 44px;gap:16px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line); }
.member-row:last-child { border-bottom:0; }.member-head { background:#f7f7f5;color:#777;text-transform:uppercase;font-size:10px;letter-spacing:.04em;font-weight:600; }
.role-badge { display:inline-block;padding:5px 9px;border-radius:6px;font-size:10px;font-weight:650; }
.role-owner { color:#6941a5;background:#eee6fa; }.role-admin { color:#9c3045;background:#ffe6eb; }.role-editor { color:#245f9d;background:#e3effc; }.role-staff { color:#176b58;background:#dff4ed; }.role-commenter { color:#8a6208;background:#fff0c8; }.role-viewer { color:#526277;background:#e9edf2; }
.role-select { max-width:145px; }
.members-page { max-width:1500px; }
.member-summary-grid { display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px;margin-bottom:18px; }
.member-summary { border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;align-items:center;gap:13px;background:#fff; }
.member-summary>i { width:38px;height:38px;border-radius:9px;display:grid;place-items:center;background:#f0ebfa;color:var(--purple);font-size:17px; }
.member-summary strong,.member-summary span { display:block; }.member-summary strong { font-size:20px;line-height:1.1; }.member-summary span { color:var(--muted);font-size:11px;margin-top:3px; }
.member-toolbar { display:flex;gap:9px;align-items:center;margin-bottom:24px; }.member-toolbar .input-group { max-width:430px; }.member-toolbar .form-select { max-width:190px; }
.member-section-heading { margin-top:22px;align-items:end; }.member-section-heading h2 { margin-bottom:3px; }.member-section-heading p { margin:0;color:var(--muted);font-size:12px; }
.member-identity { display:flex;align-items:center;gap:11px;min-width:0; }.member-you { display:inline-block;color:#6d5bd0;background:#f0ebfa;border-radius:8px;padding:2px 6px;font-size:9px;text-transform:uppercase;letter-spacing:.03em;vertical-align:1px; }
.member-task-count { display:flex;align-items:baseline;gap:5px; }.member-task-count strong { font-size:15px; }.member-task-count span { color:var(--muted);font-size:11px; }
.invitation-avatar { width:30px;height:30px;min-width:30px;border-radius:50%;display:grid;place-items:center;color:#6d5bd0;background:#f0ebfa; }
.invitation-scope { display:flex;align-items:center;gap:6px;font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.invitation-scope .project-dot { display:inline-block; }
.invitation-expired { background:#fffafa; }.member-empty { border:0;border-radius:0;padding:42px 20px; }
.member-permission-guide { margin:28px 0 0; }
.invite-delivery-note { display:flex;gap:10px;align-items:flex-start;background:#f5f1fc;color:#625a70;border:1px solid #e5dcf4;border-radius:8px;padding:10px 11px;margin-bottom:16px;font-size:11px;line-height:1.45; }
.invite-delivery-note>i { color:#6d5bd0;font-size:14px; }.invite-delivery-note strong { display:block;color:#443b50;margin-bottom:1px; }
.invite-result { display:flex;align-items:flex-start;gap:12px;border-radius:9px;padding:13px;margin-bottom:15px;background:#f5f1fc;color:#5d4b76; }
.invite-result>i { font-size:21px; }.invite-result strong { display:block;font-size:12px;margin-bottom:2px; }.invite-result p { margin:0;font-size:11px; }
.invite-result-sent { background:#e7f5ee;color:#28765c; }.invite-result-failed { background:#fff0f1;color:#a33445; }
.invite-status { display:flex;align-items:center;gap:4px;width:max-content;margin-top:4px;border-radius:8px;padding:2px 6px;font-size:9px;background:#f0ebfa;color:#6a5790; }
.invite-status-sent { background:#e4f4ed;color:#24745a; }.invite-status-failed { background:#ffe6eb;color:#9c3045; }.invite-status-pending { background:#f1f1ef;color:#6d6e6f; }
.invite-account-setup { border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:#fbfbfa; }
.invite-account-setup summary { cursor:pointer;font-size:12px;font-weight:600;color:#4d4657;list-style:none; }.invite-account-setup summary::-webkit-details-marker { display:none; }
.invite-account-setup summary:after { content:"+";float:right;color:#827a8d;font-size:16px;line-height:1; }.invite-account-setup[open] summary:after { content:"−"; }
.invite-account-setup summary span { color:var(--muted);font-size:10px;font-weight:400; }.invite-account-setup>p { color:var(--muted);font-size:10px;line-height:1.45;margin:9px 0 12px; }
.project-team-modal { overflow:hidden; }.project-team-list { border-top:1px solid var(--line); }
.project-team-row { display:grid;grid-template-columns:36px minmax(150px,1fr) 70px 100px 36px;align-items:center;gap:10px;padding:12px 24px;border-bottom:1px solid var(--line); }
.project-team-row:hover { background:#fbfbfa; }.project-team-person strong,.project-team-person>span { display:block;font-size:11px; }
.project-team-person strong { font-size:12px; }.project-team-work { text-align:center; }.project-team-work strong,.project-team-work span { display:block; }.project-team-work strong { font-size:14px; }.project-team-work span { color:var(--muted);font-size:9px; }
.project-owner-label { display:block;color:#8b8491;font-size:8px;margin-top:3px; }.project-team-pending { background:#faf9fc;padding:12px 24px 14px; }
.project-team-subtitle { color:#6d6871;text-transform:uppercase;letter-spacing:.05em;font-size:9px;font-weight:700;margin-bottom:7px; }.project-team-subtitle span { background:#e9e4f1;border-radius:9px;padding:1px 6px;margin-left:4px; }
.project-invite-row { display:flex;align-items:center;gap:10px;padding:8px 0; }.project-invite-row strong { font-size:11px; }.project-invite-row small { font-size:9px; }
.dashboard-page { max-width:1600px; }
.dashboard-heading { display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px; }
.range-switcher { display:flex;background:#f1f0ee;border-radius:8px;padding:3px; }
.range-switcher a { color:#6b6b69;text-decoration:none;font-size:11px;font-weight:600;padding:6px 9px;border-radius:6px; }
.range-switcher a.active { background:#fff;color:#302d35;box-shadow:0 1px 4px #00000012; }
.dashboard-capture { display:flex;flex-direction:column;gap:16px;padding:22px 24px; }
.capture-copy { display:flex;align-items:center;gap:12px;position:relative;z-index:1; }
.capture-copy h2 { font-size:16px;margin:0 0 3px; }.capture-copy p { margin:0;color:var(--muted);font-size:12px; }
.capture-icon { width:38px;height:38px;border-radius:9px;display:grid;place-items:center;background:#6d5bd0;color:#fff;font-size:17px;box-shadow:0 6px 18px #6d5bd033; }
.dashboard-quick-form { display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(160px,.8fr) minmax(140px,.65fr) 140px 105px auto;gap:8px;position:relative;z-index:1; }
.dashboard-quick-form .form-control,.dashboard-quick-form .form-select { background:#fff; }
.quick-title { display:flex;align-items:center;background:#fff;border:1px solid #d9d9d7;border-radius:7px;padding:0 11px;min-width:0; }
.quick-title i { color:#8a819e;font-size:16px; }.quick-title input { border:0;outline:0;min-width:0;width:100%;padding:10px;background:transparent;font-size:13px; }
.metric-card { border:1px solid var(--line);border-radius:12px;padding:16px 17px;background:#fff;height:100%;transition:.15s; }
.metric-card:hover { border-color:#d1c9df;box-shadow:0 5px 18px #3f2c610a; }
.metric-top { display:flex;align-items:center;gap:10px;color:#6f6d72; }.metric-top .stat-icon { width:34px;height:34px;font-size:15px; }.metric-top small { font-weight:600; }
.metric-number { font-size:29px;font-weight:700;letter-spacing:-.8px;margin:13px 0 9px; }
.metric-foot { display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:#888; }.metric-foot a { color:#5b4cc4;text-decoration:none;white-space:nowrap; }
.dashboard-analytics,.dashboard-bottom-grid { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:16px;margin-top:16px; }
.dashboard-panel { border:1px solid var(--line);border-radius:12px;background:#fff;padding:19px;min-width:0; }
.panel-heading { display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px; }
.panel-heading h2 { font-size:15px;margin:0 0 3px; }.panel-heading p { color:var(--muted);font-size:11px;margin:0; }.panel-heading > a { font-size:11px;text-decoration:none;white-space:nowrap; }
.panel-total { font-size:11px;color:#5b4cc4;background:#eee9ff;border-radius:6px;padding:5px 8px;font-weight:600; }
.trend-chart { height:180px;display:flex;align-items:stretch;gap:8px;padding-top:10px; }
.trend-column { flex:1;display:flex;flex-direction:column;align-items:center;min-width:0; }
.trend-value { height:18px;font-size:9px;color:#777; }.trend-track { height:130px;width:min(28px,75%);background:#f0efed;border-radius:6px 6px 3px 3px;position:relative;overflow:hidden;display:flex;align-items:flex-end; }
.trend-track i { width:100%;display:block;background:linear-gradient(180deg,#8c7be8,#6554c7);border-radius:6px 6px 3px 3px;min-height:5px; }
.trend-column small { margin-top:6px;font-size:9px;color:#888;white-space:nowrap; }
.workload-list { display:flex;flex-direction:column;gap:12px; }
.workload-row { display:flex;align-items:center;gap:10px; }.workload-main { flex:1;min-width:0; }.workload-main > div:first-child { display:flex;justify-content:space-between;gap:8px;font-size:11px;margin-bottom:5px; }.workload-main small { color:#888; }.workload-main b { color:#cf3550;font-weight:600; }
.workload-track { height:6px;background:#f0efed;border-radius:5px;overflow:hidden; }.workload-track i { display:block;height:100%;background:linear-gradient(90deg,#7a6ff0,#9b91ed);border-radius:5px;min-width:3px; }
.dashboard-bottom-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:28px; }
.dashboard-task-list { margin:-4px 0; }
.activity-list { display:flex;flex-direction:column;margin:-4px 0; }
.dashboard-activity { color:inherit;text-decoration:none;display:flex;gap:10px;padding:9px 2px;border-bottom:1px solid #efefed; }
.dashboard-activity:last-child { border-bottom:0; }.dashboard-activity:hover strong { color:#5b4cc4; }
.dashboard-activity .activity-icon { width:30px;height:30px;border-radius:7px;font-size:12px; }
.dashboard-activity strong { font-size:11px;transition:.15s; }.dashboard-activity span { font-size:10px; }.dashboard-activity small { color:#92908f;font-size:9px; }
.inbox-tab-count { display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#e9e4fa;color:#5b4cc4;font-size:9px;margin-left:3px; }
.inbox-toolbar { display:flex;gap:9px;margin-bottom:16px; }.inbox-toolbar .input-group { max-width:430px; }.inbox-toolbar .form-select { width:190px;flex:0 0 auto; }
.notification-list { border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff; }
.notification-row { display:flex;align-items:center;border-bottom:1px solid var(--line);position:relative;transition:.15s; }
.notification-row:last-child { border-bottom:0; }.notification-row:hover { background:#faf9fd; }
.notification-row.is-unread { background:#fbfaff; }.notification-row.is-read { opacity:.82; }
.notification-open { display:flex;align-items:flex-start;gap:13px;padding:15px 16px;color:inherit;text-decoration:none;flex:1;min-width:0; }
.notification-icon { width:38px;height:38px;min-width:38px;border-radius:10px;display:grid;place-items:center;font-size:16px; }
.notification-assignment { background:#e7effd;color:#3970c3; }.notification-comment { background:#eee9ff;color:#6554c7; }.notification-message { background:#fff0d9;color:#aa6a0a; }.notification-completed { background:#e2f5ed;color:#278063; }.notification-access { background:#f1e8f5;color:#7b468f; }
.notification-copy { flex:1; }.notification-title { display:flex;align-items:center;gap:8px;font-size:12px;margin:1px 0 5px; }.notification-row.is-unread .notification-title strong { font-weight:700; }
.notification-copy p { color:#626066;font-size:11px;margin:0 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:800px; }
.notification-meta { display:flex;gap:13px;color:#929095;font-size:9px; }.notification-meta span { white-space:nowrap; }
.unread-dot { width:7px;height:7px;border-radius:50%;background:#6d5bd0;display:inline-block;box-shadow:0 0 0 3px #eeeafd; }
.notification-actions { padding:0 14px 0 5px; }.notification-actions .btn { opacity:0; }.notification-row:hover .notification-actions .btn { opacity:1; }
.notification-empty { border:0; }
@media(max-width:1199.98px){.dashboard-quick-form{grid-template-columns:minmax(220px,1fr) 1fr 1fr auto}.dashboard-quick-form input[type="date"],.dashboard-quick-form .quick-priority{display:none}}
@media(max-width:991.98px){.app-sidebar{position:fixed}.app-main{width:100%}.mobile-topbar{display:flex}.page-wrap{padding:22px 18px}.project-header{top:58px;padding-left:16px;padding-right:16px}.project-content{padding:16px}.auth-wrap{grid-template-columns:1fr}.auth-visual{display:none}.task-row{grid-template-columns:minmax(200px,1fr) 110px 80px}.task-row > :nth-child(4),.task-row > :nth-child(5){display:none}.project-management-row{grid-template-columns:minmax(230px,1fr) 105px minmax(140px,.7fr) 42px}.project-management-row>:nth-child(4),.project-management-row>:nth-child(5){display:none}.permission-guide{grid-template-columns:repeat(2,1fr)}.member-row{grid-template-columns:minmax(220px,1fr) 150px 105px 50px}.member-row>:nth-child(3){display:none}.member-summary-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:991.98px){.messages-layout{grid-template-columns:1fr}.message-composer{position:static}.calendar-grid{grid-template-columns:repeat(7,minmax(105px,1fr))}}
@media(max-width:575.98px){.dashboard-hero{padding:22px 20px}.quick-add{display:block}.quick-add .btn{width:100%}.stat-card{padding:14px}.project-tabs{overflow-x:auto}.project-tabs a{white-space:nowrap}.task-row{grid-template-columns:1fr 85px}.task-row > :nth-child(3){display:none}.auth-panel{padding:24px}.task-detail-body{padding:20px}.calendar-day{min-height:95px}.messages-layout{display:block}.message-feed{margin-top:15px}.task-drag-handle,.section-drag-handle{opacity:.65}.project-searchbar{flex-wrap:wrap}.project-searchbar .input-group{max-width:none;width:100%}.project-searchbar .form-select{flex:1}.project-management-head{display:none}.project-management-row{grid-template-columns:minmax(0,1fr) 42px}.project-management-row>:nth-child(2),.project-management-row>:nth-child(3),.project-management-row>:nth-child(4),.project-management-row>:nth-child(5){display:none}.permission-guide{grid-template-columns:1fr}.member-head{display:none}.member-row{grid-template-columns:minmax(0,1fr) 42px}.member-row>:nth-child(2),.member-row>:nth-child(3),.member-row>:nth-child(4){display:none}.member-summary-grid{grid-template-columns:1fr}.member-toolbar{flex-wrap:wrap}.member-toolbar .input-group{max-width:none;width:100%}.member-toolbar .form-select{flex:1;max-width:none}.member-section-heading{align-items:start}.member-section-heading>span{display:none}}
@media(max-width:991.98px){.dashboard-analytics,.dashboard-bottom-grid{grid-template-columns:1fr}.dashboard-quick-form{grid-template-columns:1fr 1fr}.quick-title{grid-column:1/-1}.dashboard-quick-form .btn{width:100%}}
@media(max-width:575.98px){.dashboard-heading{display:block}.dashboard-heading>div:last-child{margin-top:14px}.dashboard-quick-form{display:flex;flex-direction:column}.dashboard-quick-form input[type="date"],.dashboard-quick-form .quick-priority{display:block}.metric-foot span{display:none}.trend-chart{gap:4px}.trend-column small{font-size:8px}.dashboard-activity{padding:10px 0}}
@media(max-width:767.98px){.inbox-toolbar{flex-wrap:wrap}.inbox-toolbar .input-group{max-width:none;width:100%}.inbox-toolbar .form-select{flex:1}.notification-actions .btn{opacity:1}.notification-meta span:nth-child(2){display:none}}
@media(max-width:575.98px){.project-team-row{grid-template-columns:34px minmax(0,1fr) 80px 34px;padding:11px 16px}.project-team-row>.project-team-work{display:none}.project-team-pending{padding-left:16px;padding-right:16px}.project-team-modal .modal-footer>span{display:none}}
