:root{--primary-color:#24b3e7;--body-default:white;--ink:#17202e;--muted:#697586;--line:#e5ebf0;--soft:#f7fafc;--panel:#fff;--success:#27ae7e;--warning:#e8a124;--shadow:0 12px 30px #11182714;--font-ui:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--body-default);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:14px;line-height:1.45}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-frame,.login-page{background:linear-gradient(125deg, #24b3e71a, #27ae7e14 45%, #e8a12414), var(--body-default);min-height:100vh;padding:32px}.role-shell,.login-shell{width:min(1120px,100%);margin:0 auto}.role-shell{align-content:center;gap:34px;min-height:calc(100vh - 64px);display:grid}.brand-block,.login-heading,.preview-header,.form-row,.role-action,.back-link,.status-pill,.field-control,.remember-option{align-items:center;display:flex}.brand-block{gap:18px}.brand-mark{background:var(--primary-color);color:#fff;letter-spacing:0;border-radius:8px;place-items:center;width:58px;height:58px;font-weight:800;display:inline-grid;box-shadow:0 12px 28px #24b3e747}.brand-mark.compact{width:46px;height:46px}.eyebrow{color:var(--primary-color);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:0;max-width:720px;margin-bottom:0;font-size:clamp(2rem,5vw,4.6rem);line-height:1}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.role-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-content:start;gap:15px;min-height:260px;padding:28px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;box-shadow:0 14px 38px #17203314}.role-card:hover{box-shadow:var(--shadow);border-color:#24b3e79e;transform:translateY(-3px)}.role-icon{width:50px;height:50px;color:var(--primary-color);background:#24b3e71f;border-radius:8px;place-items:center;display:inline-grid}.role-stat{color:#16799c;background:#eef8fc;border-radius:8px;width:max-content;max-width:100%;padding:7px 10px;font-size:.82rem;font-weight:700}.role-card>span:not(.role-icon):not(.role-stat):not(.role-action){color:var(--muted);line-height:1.55}.role-action{color:var(--primary-color);gap:8px;margin-top:auto;font-weight:800}.login-page{place-items:center;display:grid}.login-shell{grid-template-columns:minmax(0,.86fr) minmax(380px,1fr);align-items:stretch;gap:24px;display:grid}.login-form-panel,.workspace-preview{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffffff0;border-radius:8px}.login-form-panel{padding:28px}.back-link{width:max-content;color:var(--muted);gap:8px;font-weight:700}.login-heading{flex-direction:column;align-items:flex-start;gap:12px;margin:34px 0 28px}.login-heading p{max-width:460px;color:var(--muted);margin-bottom:0;line-height:1.6}.role-badge,.status-pill{color:#16799c;background:#eef8fc;border:1px solid #24b3e738;border-radius:8px;font-weight:800}.role-badge{padding:8px 11px;font-size:.82rem}.login-form{gap:10px;display:grid}.login-form label{color:#2c3749;font-size:.92rem;font-weight:800}.field-control{border:1px solid var(--line);min-height:54px;color:var(--muted);background:#fff;border-radius:8px;gap:10px;padding:0 14px}.field-control:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 4px #24b3e71f}.field-control input{width:100%;min-width:0;color:var(--ink);border:0;outline:0}.field-control input::placeholder{color:#9aa7b5}.icon-button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:inline-grid}.icon-button:hover{background:var(--soft);color:var(--ink)}.form-row{color:var(--muted);justify-content:space-between;gap:14px;margin:8px 0 12px;font-size:.92rem}.form-row a{color:var(--primary-color);font-weight:800}.remember-option{gap:8px}.remember-option input{width:16px;height:16px;accent-color:var(--primary-color)}.primary-button{background:var(--primary-color);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:54px;font-weight:900;display:inline-flex;box-shadow:0 16px 34px #24b3e74d}.primary-button:hover{background:#179fd1}.workspace-preview{gap:24px;padding:28px;display:grid;overflow:hidden}.preview-header{justify-content:space-between;gap:18px}.preview-header h2{margin-bottom:0;font-size:1.65rem}.status-pill{color:#247a5d;white-space:nowrap;background:#edf9f4;border-color:#27ae7e38;gap:7px;padding:8px 10px}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.metric-grid div{border:1px solid var(--line);background:var(--soft);border-radius:8px;align-content:space-between;min-height:116px;padding:16px;display:grid}.metric-grid span,.task-row span{color:var(--muted);font-size:.9rem}.task-list{gap:12px;display:grid}.task-row{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;min-height:74px;padding:14px 16px;display:flex}.task-row div{gap:6px;display:grid}.task-row>span{color:var(--primary-color);font-weight:900}@media (max-width:860px){.app-frame,.login-page{padding:18px}.role-shell{min-height:calc(100vh - 36px)}.role-grid,.login-shell{grid-template-columns:1fr}.login-shell{gap:16px}.workspace-preview{order:-1}}@media (max-width:560px){.brand-block{flex-direction:column;align-items:flex-start}.role-card,.login-form-panel,.workspace-preview{padding:20px}.form-row,.preview-header,.task-row{flex-direction:column;align-items:flex-start}.metric-grid{grid-template-columns:1fr}}.workspace-app{min-height:100vh;color:var(--ink);background:#f6f9fc;grid-template-columns:272px minmax(0,1fr);display:grid}.app-sidebar{border-right:1px solid var(--line);background:#fffffff5;flex-direction:column;gap:12px;height:100vh;padding:14px 12px;display:flex;position:sticky;top:0;overflow:hidden auto}.app-sidebar::-webkit-scrollbar{width:5px}.app-sidebar::-webkit-scrollbar-track{background:0 0}.app-sidebar::-webkit-scrollbar-thumb{background:#d8e2e9;border-radius:4px}.app-sidebar::-webkit-scrollbar-thumb:hover{background:#b5c4d0}.sidebar-brand,.sidebar-nav,.sidebar-departments,.sidebar-more,.sidebar-favorites,.sidebar-bottom{flex-shrink:0}.sidebar-brand{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.sidebar-brand-text{gap:2px;display:grid}.sidebar-brand-text span,.sidebar-section-label,.favorite-item,.utility-button,.nav-item,.screen-title-row p,.summary-card span,.summary-card small{color:var(--muted)}.sidebar-nav,.sidebar-bottom,.sidebar-favorites,.screen-stack,.task-rows,.mini-list,.workload-list,.goal-tree{gap:8px;display:grid}.sidebar-favorites{align-content:start}.nav-item,.favorite-item,.utility-button{border-radius:8px;align-items:center;gap:10px;min-height:38px;padding:9px 10px;font-weight:700;display:flex}.sidebar-more{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0}.sidebar-more summary{color:#2c3749;cursor:pointer;justify-content:space-between;align-items:center;padding:8px 10px;font-weight:800;list-style:none;display:flex}.compact-nav{margin-top:6px}.sidebar-section-label{text-transform:uppercase;margin:8px 10px 2px;font-size:.75rem;font-weight:900}.sidebar-bottom{border-top:1px solid var(--line);padding-top:12px}.utility-button{cursor:pointer;text-align:left;background:0 0;border:0;width:100%}.workspace-main{min-width:0}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;grid-template-columns:minmax(260px,1fr) auto;justify-content:space-between;align-items:center;gap:18px;min-height:70px;padding:14px 24px;display:grid;position:sticky;top:0}.command-search,.natural-create,.ai-input{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:10px;display:flex}.command-search{width:min(620px,100%);min-height:42px;color:var(--muted);cursor:pointer;padding:0 12px}.command-search kbd{border:1px solid var(--line);background:var(--soft);color:#4c596b;border-radius:6px;margin-left:auto;padding:4px 7px;font-size:.75rem}.topbar-actions,.toolbar-actions,.builder-toolbar,.board-toolbar,.saved-view-row,.view-tabs,.density-control,.project-meta,.tag-row,.card-footer,.card-line,.avatar-stack,.linked-row,.layout-save-row{align-items:center;gap:8px;display:flex}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;min-width:0}.quick-create,.secondary-button,.toolbar-actions button,.toolbar-actions a,.builder-toolbar button,.builder-toolbar a,.saved-view-row button,.view-tabs button,.density-control button,.layout-save-row button,.flow-side button,.workload-row button,.data-table-wrap button,.library-section button,.preview-canvas button{border:1px solid var(--line);color:#2c3749;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-weight:800;display:inline-flex}.quick-create,.save-action{border-color:var(--primary-color)!important;background:var(--primary-color)!important;color:#fff!important}.top-icon,.profile-chip{border:1px solid var(--line);color:#2c3749;background:#fff;border-radius:8px;place-items:center;min-width:38px;min-height:38px;display:inline-grid}.workspace-switcher{position:relative}.workspace-switcher summary{border:1px solid var(--line);color:#2c3749;cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:9px;min-height:38px;padding:0 10px;list-style:none;display:flex}.workspace-switcher summary::-webkit-details-marker{display:none}.workspace-switcher summary>span,.workspace-menu button>span{text-align:left;gap:1px;min-width:0;display:grid}.workspace-switcher summary strong,.workspace-menu button strong{text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:.82rem;line-height:1.1;overflow:hidden}.workspace-switcher summary small,.workspace-menu button small{color:var(--muted);font-size:.7rem;line-height:1.1}.workspace-menu{z-index:40;border:1px solid var(--line);background:#fff;border-radius:8px;gap:6px;width:286px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 45px #0f172a29}.workspace-menu-heading,.workspace-menu-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.workspace-menu-heading{color:var(--muted);text-transform:uppercase;padding:2px 4px 6px;font-size:.76rem;font-weight:800}.workspace-menu-heading a{color:#0f7891;text-transform:none}.workspace-menu button,.workspace-menu-actions button{color:#334155;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-height:42px;padding:8px 9px;font-weight:700;display:flex}.workspace-menu button:hover,.workspace-menu button.active{color:#0f7891;background:#f0fbfd;border-color:#d7e8ef}.workspace-menu-actions{border-top:1px solid var(--line);padding-top:8px}.workspace-menu-actions button{border-color:var(--line);flex:1;justify-content:center;min-height:34px}.profile-chip{grid-template-columns:auto auto;gap:8px;padding:0 10px}.profile-chip span,.avatar{color:#fff;background:#172033;border-radius:8px;place-items:center;width:28px;height:28px;font-size:.75rem;font-weight:900;display:inline-grid}.screen-canvas{background:#f8fafc;flex-direction:column;gap:20px;min-height:calc(100vh - 70px);padding:24px 32px 48px;display:flex}.workspace-notice{color:#16603f;background:#f0fdf5;border:1px solid #bee7d3;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:700;display:flex}.workspace-notice button{color:#16603f;cursor:pointer;background:0 0;border:0;font-weight:800}.inline-action-result{color:#16603f;background:#f0fdf5;border:1px solid #bee7d3;border-radius:8px;align-items:center;gap:7px;width:max-content;max-width:100%;padding:8px 10px;font-size:.84rem;font-weight:700;display:inline-flex}.screen-title-row{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:4px;padding-bottom:14px;display:flex}.screen-title-row h1{max-width:none;color:var(--ink);letter-spacing:-.01em;margin:0;font-size:20px;font-weight:700;line-height:1.25}.density-control,.view-tabs,.segmented{border:1px solid var(--line);background:#eef4f8;border-radius:8px;flex-wrap:wrap;padding:4px}.density-control button,.view-tabs button,.segmented button{background:0 0;border:0;min-height:30px}.density-control .active,.view-tabs .active,.segmented .active,.saved-view-row .active{color:#16799c;background:#fff;box-shadow:0 6px 18px #17203314}.summary-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.summary-card,.widget-card,.library-section,.library-item,.project-card,.project-header,.ai-brief,.work-group,.kanban-column,.kanban-card,.info-panel,.data-table-wrap,.task-main-panel,.task-side-panel,.timeline-shell,.calendar-shell,.goal-card,.doc-editor,.doc-list,.inbox-item,.ai-chat,.ai-side,.flow-canvas,.approval-card,.module-card,.onboarding-step,.preview-canvas,.field-bank,.layout-lines{border:1px solid var(--line);background:#fff;border-radius:10px;box-shadow:0 1px 3px #0f172a0a,0 1px 2px #0f172a05}.summary-card{gap:8px;padding:16px;display:grid}.summary-card strong{font-size:2rem}.ai-brief,.project-header,.inbox-item{justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.ai-brief h2,.project-header h2,.widget-card h2,.library-section h2,.project-card h2,.work-group h2,.data-table-wrap h2,.detail-section h3,.flow-side h2{margin:0}.ai-brief p,.project-header p,.info-panel p,.approval-card p,.module-card span,.library-item span,.doc-editor p,.detail-section p{color:var(--muted);margin-bottom:0;line-height:1.5}.dashboard-grid{grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px;display:grid}.widget-card,.work-group,.data-table-wrap,.timeline-shell,.calendar-shell{padding:16px}.widget-card.wide{grid-column:span 2}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading button{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;place-items:center;display:inline-grid}.mini-list div,.task-row-line{border-bottom:1px solid #eef2f5;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px;min-height:42px;padding:8px 0;display:grid}.mini-list div{grid-template-columns:auto minmax(0,1fr)}.mini-list span,.task-row-line span{color:var(--muted);font-size:.86rem}.builder-toolbar,.board-toolbar{flex-wrap:wrap;justify-content:space-between}.dashboard-builder-grid{grid-template-columns:repeat(4,minmax(180px,1fr));grid-auto-flow:dense;gap:12px;display:grid}.builder-widget{background:#fff;border:1px dashed #b8d7e4;border-radius:8px;gap:10px;min-height:160px;padding:16px;display:grid}.builder-widget.medium{grid-column:span 1}.builder-widget.large{grid-column:span 2}.builder-widget.full{grid-column:1/-1}.builder-widget p{color:var(--muted);margin:0}.widget-drag-handle,.widget-actions{color:var(--muted);align-items:center;gap:8px;display:flex}.widget-actions{flex-wrap:wrap;margin-top:auto}.widget-actions button{border:1px solid var(--line);background:var(--soft);color:#2c3749;cursor:pointer;border-radius:8px;min-height:30px}.library-grid,.settings-grid,.project-grid,.approval-grid,.card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.library-section,.project-card,.info-panel,.approval-card,.module-card,.field-bank,.layout-lines,.preview-canvas,.goal-card{padding:16px}.library-items,.field-chip-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:14px;display:grid}.library-item,.module-card{align-content:start;gap:9px;min-height:120px;padding:14px;display:grid}.project-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.project-card{gap:14px;display:grid}.project-meta,.tag-row{flex-wrap:wrap}.project-meta span,.tag-row span,.priority,.role-badge{color:#4c596b;background:#f0f5f8;border-radius:8px;width:max-content;max-width:100%;padding:5px 8px;font-size:.78rem;font-weight:900}.meter{grid-template-columns:minmax(90px,1fr) auto;align-items:center;gap:10px;display:grid}.meter span{background:var(--primary-color);z-index:1;border-radius:999px;grid-area:1/1;height:9px;position:relative}.meter:before{content:"";background:#e5edf3;border-radius:999px;grid-area:1/1;height:9px}.meter strong{color:#2c3749;grid-area:1/2;font-size:.88rem}.avatar-stack{flex-wrap:wrap}.avatar-stack span:last-child{color:var(--muted);margin-left:auto;font-weight:800}.project-icon{color:#fff;background:#172033;border-radius:8px;flex:none;place-items:center;width:64px;height:64px;font-weight:900;display:grid}.saved-view-row{flex-wrap:wrap}.swimlane{gap:12px;display:grid}.swimlane-label{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;display:flex}.swimlane-label strong{color:var(--ink)}.kanban-board{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;flex-direction:row;flex:1;align-items:stretch;gap:14px;height:100%;min-height:0;padding-bottom:8px;display:flex;overflow:auto hidden}.kanban-board::-webkit-scrollbar{height:9px}.kanban-board::-webkit-scrollbar-track{background:#e2e8f0;border-radius:6px}.kanban-board::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:6px}.kanban-board::-webkit-scrollbar-thumb:hover{background:#64748b}.kanban-column{border:1px solid var(--line);box-sizing:border-box;background:#f8fafc;border-radius:10px;flex-direction:column;flex:0 0 300px;width:300px;min-width:290px;max-width:320px;height:100%;min-height:0;max-height:100%;padding:12px;display:flex}.kanban-column header{flex-shrink:0;align-items:center;gap:8px;margin-bottom:8px;display:flex}.column-dot{background:var(--primary-color);border-radius:999px;width:10px;height:10px}.column-dot.green{background:var(--success)}.column-dot.orange{background:var(--warning)}.column-dot.purple{background:#8d65d8}.column-dot.red{background:#e05757}.column-dot.gray{background:#7c8794}.limit-warning{color:#c34848;font-weight:900}.inline-create{min-height:38px;color:var(--muted);cursor:pointer;background:#fff;border:1px dashed #b6c7d3;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;margin-bottom:8px;display:inline-flex}.kanban-cards{flex-direction:column;flex:1;gap:10px;min-height:0;padding-right:4px;display:flex;overflow:hidden auto}.kanban-cards::-webkit-scrollbar{width:5px}.kanban-cards::-webkit-scrollbar-track{background:0 0}.kanban-cards::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.kanban-cards::-webkit-scrollbar-thumb:hover{background:#94a3b8}.kanban-card{gap:9px;padding:12px;display:grid;position:relative}.kanban-card.selected{border-color:var(--primary-color);box-shadow:0 0 0 3px #24b3e71f}.kanban-card.is-blocked{border-left:4px solid #e05757}.card-line,.card-footer{color:var(--muted);justify-content:space-between;font-size:.82rem}.card-header-line span:first-child{color:#4c596b;font-weight:900}.priority-high{color:#a46605;background:#fff5dc}.priority-critical{color:#b63838;background:#feecec}.priority-medium{color:#16799c;background:#eef8fc}.priority-low{color:#247a5d;background:#edf9f4}.blocked,.danger-text{font-weight:900;color:#c34848!important}.card-quick-actions{grid-template-columns:repeat(4,1fr);gap:6px;display:none}.kanban-card:hover .card-quick-actions{display:grid}.card-quick-actions button{border:1px solid var(--line);background:var(--soft);color:#4c596b;cursor:pointer;border-radius:7px;min-height:28px;font-size:.75rem;font-weight:800}.collapsed{min-width:280px;max-width:320px}.collapsed header{align-items:center;display:flex}.collapsed header strong,.collapsed header small{writing-mode:horizontal-tb}.collapsed-column-label{writing-mode:horizontal-tb;display:none}.layout-builder,.task-detail-layout,.docs-layout,.ai-layout{grid-template-columns:minmax(220px,.8fr) minmax(360px,1.4fr) minmax(260px,.8fr);align-items:start;gap:14px;display:grid}.field-bank,.layout-lines,.preview-canvas{gap:12px;display:grid}.field-chip-grid button{border:1px solid var(--line);color:#2c3749;cursor:grab;background:#f9fbfd;border-radius:8px;justify-content:flex-start;min-height:36px;font-weight:800}.layout-line{background:#f9fbfd;border:1px dashed #b8d7e4;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:10px;display:grid}.layout-line div{flex-wrap:wrap;gap:6px;display:flex}.layout-line span{color:#4c596b;background:#fff;border-radius:8px;padding:5px 8px;font-size:.78rem;font-weight:800}.task-detail-layout{grid-template-columns:minmax(0,1fr) 320px}.task-main-panel,.task-side-panel{gap:12px;padding:16px;display:grid}.detail-section{border-top:1px solid #eef2f5;padding:14px 0}.side-field{border-bottom:1px solid #eef2f5;gap:4px;padding-bottom:10px;display:grid}.side-field span{color:var(--muted);font-size:.82rem;font-weight:800}.data-table-scroll{margin-top:12px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:760px;font-size:.9rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #eef2f5;padding:12px}.data-table th{color:var(--muted);text-transform:uppercase;font-size:.78rem}.timeline-grid{gap:12px;margin-top:16px;display:grid}.timeline-row{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:12px;display:grid}.timeline-row strong{color:#2c3749}.timeline-row>span{background:#edf2f6;border-radius:8px;height:38px;position:relative}.timeline-bar{padding-left:max(12px, var(--offset));color:#16799c;align-items:center;font-weight:900;display:flex}.timeline-bar:before{content:"";left:var(--offset);background:#24b3e738;border-radius:8px;width:28%;height:22px;position:absolute}.span-2:before{width:38%}.span-3:before{width:48%}.span-4:before{width:58%}.calendar-grid{grid-template-columns:repeat(7,minmax(90px,1fr));gap:8px;margin-top:14px;display:grid}.calendar-cell{border:1px solid var(--line);background:#fbfdfe;border-radius:8px;align-content:start;gap:8px;min-height:104px;padding:10px;display:grid}.calendar-cell strong{color:#16799c;font-size:.82rem}.calendar-cell small{color:#a46605;background:#fff5dc;border-radius:8px;width:max-content;padding:4px 7px;font-weight:900}.workload-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:auto minmax(190px,1fr) minmax(160px,.9fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.workload-row span{color:var(--muted)}.workload-row.overloaded{background:#fff8f8;border-color:#f0a7a7}.goal-card{gap:12px;display:grid}.linked-row{color:var(--muted);flex-wrap:wrap}.docs-layout{grid-template-columns:240px minmax(0,1fr)}.doc-list{align-content:start;gap:8px;padding:12px;display:grid}.doc-list button{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;min-height:38px;font-weight:800;display:flex}.doc-list button:hover{background:#eaf7fc}.doc-editor{padding:20px}.inbox-item{justify-content:flex-start}.inbox-item strong{flex:1}.ai-layout{grid-template-columns:minmax(0,1fr) 320px}.ai-chat,.ai-side{gap:12px;padding:16px;display:grid}.ai-message{background:#eef8fc;border-radius:8px;gap:10px;max-width:76%;padding:12px;display:flex}.ai-message.user{color:#fff;background:#172033;justify-self:end}.ai-message p{margin:0;line-height:1.5}.ai-input{margin-top:10px;padding:8px}.ai-input input,.natural-create input,.preview-canvas input{border:0;outline:0;width:100%;min-width:0}.ai-input button{background:var(--primary-color);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:34px;font-weight:900}.flow-canvas{grid-template-columns:minmax(0,1fr) 320px;gap:14px;padding:16px;display:grid}.flow-row{align-items:center;gap:16px;padding:20px 4px;display:flex;overflow-x:auto}.flow-node{background:#f9fbfd;border:1px solid #b8d7e4;border-radius:8px;gap:8px;min-width:190px;padding:16px;display:grid;position:relative}.flow-node:not(:last-child):after{content:"";background:#9fb9c8;width:16px;height:2px;position:absolute;top:50%;right:-17px}.flow-node span{color:var(--muted)}.flow-side{gap:12px;display:grid}.preview-canvas input{border:1px solid var(--line);border-radius:8px;min-height:42px;padding:0 12px}.onboarding-flow{grid-template-columns:repeat(5,minmax(170px,1fr));gap:12px;display:grid}.onboarding-step{gap:10px;padding:16px;display:grid}.onboarding-step span{color:#16799c;background:#eef8fc;border-radius:8px;place-items:center;width:34px;height:34px;font-weight:900;display:inline-grid}.onboarding-step.active{border-color:var(--primary-color)}.command-overlay{z-index:100;background:#17203357;place-items:start center;padding-top:8vh;display:grid;position:fixed;inset:0}.command-palette{background:#fff;border-radius:8px;gap:12px;width:min(720px,100% - 28px);padding:14px;display:grid;box-shadow:0 28px 90px #17203342}.command-input{border:1px solid var(--line);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.command-input input{border:0;outline:0;min-height:36px}.command-input button,.quick-create-menu button,.quick-create-menu a,.command-list button,.command-list a{border:1px solid var(--line);color:#2c3749;cursor:pointer;background:#f9fbfd;border-radius:8px;font-weight:800}.quick-create-menu,.command-list{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.quick-create-menu button,.quick-create-menu a,.command-list button,.command-list a{align-items:center;gap:8px;min-height:40px;padding:0 10px;display:flex}.command-list{grid-template-columns:1fr}.workspace-app.is-collapsed{grid-template-columns:82px minmax(0,1fr)}.is-collapsed .sidebar-brand-text,.is-collapsed .nav-item span,.is-collapsed .favorite-item span,.is-collapsed .utility-button span,.is-collapsed .sidebar-more summary span,.is-collapsed .sidebar-section-label{display:none}.is-collapsed .sidebar-brand{grid-template-columns:auto;justify-items:center}.is-collapsed .app-sidebar{overflow:hidden auto}.pulse-hero,.pulse-overview article,.pulse-board-shell,.pulse-lane,.pulse-card{background:#fff;border:1px solid #e6ecf1;border-radius:10px;box-shadow:0 1px 2px #1118270a,0 10px 22px #11182709}.pulse-hero{justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.pulse-hero h2{margin:0 0 6px;font-size:clamp(1.55rem,2.8vw,2.4rem);line-height:1.08}.pulse-hero p{max-width:720px;color:var(--muted);margin:0}.pulse-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.pulse-actions button,.pulse-actions a{color:#2c3749;cursor:pointer;background:#fff;border:1px solid #e4eaf0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-size:.84rem;font-weight:700;display:inline-flex}.pulse-overview{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.pulse-overview article{gap:4px;padding:14px;display:grid}.pulse-overview span,.pulse-overview small,.pulse-board-top span,.pulse-lane header span,.pulse-card p{color:var(--muted)}.pulse-overview strong{font-size:1.45rem;line-height:1}.pulse-board-shell{gap:12px;padding:14px;display:grid}.pulse-board-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.pulse-board{grid-template-columns:repeat(5,minmax(200px,1fr));gap:10px;padding-bottom:4px;display:grid;overflow-x:auto}.pulse-lane{min-height:430px;box-shadow:none;background:#f8fbfd;align-content:start;gap:10px;padding:10px;display:grid}.pulse-lane header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:36px;display:grid}.pulse-lane header div{gap:2px;display:grid}.pulse-lane header small{color:#4c596b;background:#edf2f6;border-radius:999px;place-items:center;width:24px;height:24px;font-weight:800;display:inline-grid}.pulse-card{gap:8px;padding:11px;display:grid;position:relative;overflow:hidden}.pulse-card:before{content:"";background:var(--primary-color);width:4px;position:absolute;inset:0 auto 0 0}.pulse-card strong{font-size:.92rem;line-height:1.3}.pulse-card p{margin:0;font-size:.82rem}.pulse-card .card-line span{text-transform:capitalize;font-size:.72rem;font-weight:800}.pulse-card-actions{opacity:0;grid-template-columns:repeat(3,1fr);gap:6px;display:grid;transform:translateY(2px)}.pulse-card:hover .pulse-card-actions{opacity:1;transform:translateY(0)}.pulse-card-actions button{color:#4c596b;cursor:pointer;background:#fff;border:1px solid #e4eaf0;border-radius:7px;min-height:28px;font-size:.72rem;font-weight:800}.pulse-card.priority-critical:before,.pulse-card.due-overdue:before{background:#e05757}.pulse-card.priority-high:before,.pulse-card.due-soon:before{background:#e8a124}.pulse-card.priority-medium:before{background:var(--primary-color)}.pulse-card.priority-low:before,.pulse-card.due-done:before,.pulse-card.due-open:before{background:#27ae7e}.pulse-card.due-today{background:linear-gradient(90deg,#24b3e714,#fff 38%)}.pulse-card.due-overdue,.pulse-card.due-risk{background:linear-gradient(90deg,#e0575714,#fff 38%)}.pulse-chart-shell{background:#fff;border:1px solid #e6ecf1;border-radius:10px;gap:12px;padding:14px;display:grid;box-shadow:0 1px 2px #1118270a,0 10px 22px #11182709}.pulse-chart{gap:12px;max-height:680px;padding:4px;display:grid;overflow:hidden}.chart-context-row,.chart-focus-window{scroll-snap-align:none}.chart-context-block{background:#fbfdfe;border:1px solid #e8edf2;border-radius:10px;grid-template-columns:220px minmax(0,1fr);align-items:stretch;gap:12px;padding:12px;display:grid}.chart-context-block>div:first-child{color:#17202e;align-content:center;gap:4px;display:grid}.chart-context-block span{color:var(--muted)}.chart-context-cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.chart-focus-window{background:linear-gradient(90deg,#e057570d 0 20%,#24b3e712 20% 40%,#27ae7e0d 40% 60%,#e8a1240d 60% 80%,#17202e08 80% 100%),#fff;border:1px solid #dce8f0;border-radius:12px;gap:10px;min-width:920px;padding:14px;display:grid}.chart-axis{grid-template-columns:repeat(5,1fr);gap:8px;padding-left:88px;display:grid}.chart-axis span{color:#526073;text-align:center;background:#ffffffb8;border-radius:8px;padding:8px 10px;font-size:.78rem;font-weight:800}.chart-lanes{gap:8px;min-height:430px;display:grid;position:relative}.chart-lane-row{grid-template-columns:80px minmax(0,1fr);align-items:center;gap:8px;min-height:76px;display:grid}.chart-lane-row>span{color:#526073;text-align:right;font-size:.78rem;font-weight:800}.chart-track{background:repeating-linear-gradient(90deg,#d5e0e894 0 1px,#0000 1px 20%),#ffffff94;border:1px dashed #d5e0e8;border-radius:10px;height:100%}.chart-links{pointer-events:none;width:calc(100% - 88px);height:100%;position:absolute;inset:0 0 0 88px;overflow:visible}.chart-links path{fill:none;stroke:#24b3e79e;stroke-width:1.1px;stroke-linecap:round;filter:drop-shadow(0 2px 4px #24b3e729)}.chart-node{width:190px;min-height:116px;left:calc(88px + var(--node-x));z-index:2;position:absolute;transform:translate(-50%)}.chart-node-1{top:18px}.chart-node-2{top:96px}.chart-node-3{top:177px}.chart-node-4{top:256px}.chart-node-5{top:336px}.chart-node:hover{z-index:4;transform:translate(-50%)translateY(-2px);box-shadow:0 12px 28px #1118271f}.chart-node:after{content:"";background:currentColor;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-9px;left:50%;box-shadow:0 0 0 4px #ffffffe6}.chart-zoom-bar{background:#fbfdfe;border:1px solid #e8edf2;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.chart-zoom-bar>div:first-child{align-items:baseline;gap:10px;display:flex}.chart-zoom-bar strong{color:#0d7ca8;font-size:1rem}.chart-zoom-bar span{color:var(--muted);font-size:.84rem}.pulse-chart-viewport{cursor:grab;overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 42%,#24b3e71a,#0000 28rem),linear-gradient(90deg,#e057570d,#24b3e70a,#27ae7e0a,#e8a1240a),#fff;border:1px solid #dce8f0;border-radius:14px;height:min(68vh,690px);min-height:560px;position:relative;overflow:hidden}.pulse-chart-viewport.is-panning{cursor:grabbing}.pulse-chart-world{transform-origin:50% 0;width:1680px;height:1120px;margin-left:-840px;transition:transform .12s;position:absolute;top:18px;left:50%}.pulse-chart-world .chart-context-row{position:absolute;left:58px;right:58px}.pulse-chart-world .chart-context-row:first-child{top:20px}.pulse-chart-world .chart-context-row.bottom{top:820px}.pulse-chart-world .chart-focus-window{min-width:0;height:535px;position:absolute;top:245px;left:58px;right:58px}.pulse-chart-world .chart-lanes{min-height:455px}.pulse-chart-world .chart-lane-row{min-height:80px}.pulse-chart-world .chart-links{inset:0 0 0 88px}.pulse-chart-world .chart-node{width:210px}.chart-minimap{background:linear-gradient(90deg,#e0575726,#24b3e724,#27ae7e1f,#e8a12421),#ffffffd1;border:1px solid #5260733d;border-radius:10px;width:170px;height:92px;position:absolute;bottom:14px;right:14px;box-shadow:0 8px 24px #1118271f}.minimap-view{border:2px solid var(--primary-color);background:#24b3e71f;border-radius:6px;width:62px;height:34px;position:absolute;top:28px;left:52px}@media (max-width:1100px){.workspace-app{grid-template-columns:82px minmax(0,1fr)}.workspace-app .sidebar-brand-text,.workspace-app .nav-item span,.workspace-app .favorite-item span,.workspace-app .utility-button span,.workspace-app .sidebar-more summary span,.workspace-app .sidebar-section-label{display:none}.workspace-app .sidebar-brand{grid-template-columns:auto;justify-items:center}.dashboard-grid,.summary-strip,.dashboard-builder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-builder,.task-detail-layout,.ai-layout,.flow-canvas{grid-template-columns:1fr}.kanban-board{display:flex}}@media (max-width:720px){.workspace-app{display:block}.app-sidebar{display:none}.topbar,.screen-title-row,.ai-brief,.project-header,.builder-toolbar,.board-toolbar,.swimlane-label,.inbox-item{flex-direction:column;align-items:stretch}.topbar{padding:14px;position:static}.screen-canvas{padding:14px}.summary-strip,.dashboard-grid,.dashboard-builder-grid,.onboarding-flow,.calendar-grid,.docs-layout{grid-template-columns:1fr}.widget-card.wide,.builder-widget.large,.builder-widget.full{grid-column:auto}.workload-row,.timeline-row{grid-template-columns:1fr}}body{background:#f7fafc}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,a{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #24b3e738}h1,h2,h3,strong{letter-spacing:0;font-weight:700}h1{font-size:clamp(2rem,4vw,3.8rem);line-height:1.04}.screen-title-row h1{font-size:clamp(1.45rem,2vw,2rem);line-height:1.12}.app-frame,.login-page{background:radial-gradient(circle at 0 0,#24b3e71a,#0000 34rem),linear-gradient(#fbfdff 0%,#f7fafc 100%)}.role-shell{align-content:start;gap:24px;min-height:calc(100vh - 64px);padding-top:min(8vh,72px)}.brand-mark{background:linear-gradient(145deg,#24b3e7,#1594c7);border-radius:10px;font-weight:800;box-shadow:0 10px 22px #24b3e733}.brand-mark.compact{width:40px;height:40px;font-size:.86rem}.eyebrow{color:#1389b6;margin-bottom:6px;font-size:.7rem;font-weight:800}.role-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.role-card{background:#ffffffe6;border-color:#e7edf2;gap:12px;min-height:208px;padding:20px;box-shadow:0 10px 24px #1118270f}.role-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px #1118271a}.role-icon{background:#ecf8fc;border-radius:10px;width:44px;height:44px}.role-stat,.role-badge,.status-pill,.project-meta span,.tag-row span,.priority{border-radius:999px;font-size:.72rem;font-weight:700}.role-card strong{font-size:1.02rem}.role-card>span:not(.role-icon):not(.role-stat):not(.role-action){font-size:.88rem}.login-shell{grid-template-columns:minmax(340px,.72fr) minmax(380px,1fr);gap:18px;width:min(980px,100%)}.login-form-panel,.workspace-preview{background:#fffffff5;border-color:#e7edf2;padding:24px;box-shadow:0 18px 45px #11182717}.metric-grid div{min-height:98px}.metric-grid strong{font-size:1.55rem}.task-row{min-height:64px;padding:12px 14px}.login-heading{gap:10px;margin:26px 0 24px}.login-heading h1{font-size:clamp(1.75rem,3vw,2.55rem)}.field-control,.primary-button{min-height:48px}.workspace-app{background:#f7fafc;grid-template-columns:260px minmax(0,1fr)}.app-sidebar{background:#fff;border-right-color:#e8edf2;gap:12px;padding:14px 12px;box-shadow:1px 0 #11182705}.sidebar-brand{border-bottom:1px solid #edf1f4;padding:2px 2px 10px}.sidebar-brand-text strong{font-size:.94rem}.sidebar-brand-text span{font-size:.76rem}.sidebar-nav,.sidebar-bottom,.sidebar-favorites{gap:4px}.nav-item,.favorite-item,.utility-button{border-radius:8px;gap:9px;min-height:34px;padding:7px 9px;font-size:.86rem;font-weight:600}.nav-item svg,.favorite-item svg,.utility-button svg{stroke-width:2px}.nav-item.active,.utility-button.active,.nav-item:hover,.utility-button:hover,.favorite-item:hover{color:#0d7ca8;background:#eff9fd}.nav-item.active,.utility-button.active{box-shadow:inset 3px 0 0 var(--primary-color)}.sidebar-more{border-color:#edf1f4;padding:7px 0}.sidebar-more summary{min-height:32px;padding:6px 9px;font-size:.8rem;font-weight:700}.sidebar-section-label{margin:7px 9px 2px;font-size:.68rem}.topbar{background:#ffffffe0;border-bottom-color:#e8edf2;min-height:62px;padding:11px 20px}.command-search{color:#7a8798;border-color:#e7edf2;min-height:38px;font-size:.88rem}.command-search:hover{border-color:#cdd8e1;box-shadow:0 6px 18px #1118270f}.quick-create,.secondary-button,.toolbar-actions button,.toolbar-actions a,.builder-toolbar button,.builder-toolbar a,.saved-view-row button,.view-tabs button,.density-control button,.layout-save-row button,.workload-row button,.data-table-wrap button,.library-section button,.preview-canvas button{border-color:#e4eaf0;min-height:34px;padding:0 11px;font-size:.82rem;font-weight:600}.quick-create,.save-action,.primary-button,.ai-input button{box-shadow:0 8px 18px #24b3e738}.quick-create:hover,.save-action:hover,.primary-button:hover,.ai-input button:hover{background:#159ed0!important;border-color:#159ed0!important}.top-icon,.profile-chip{border-color:#e4eaf0;min-width:36px;min-height:36px;box-shadow:0 4px 12px #1118270a}.top-icon:hover,.profile-chip:hover{background:#fbfdfe;border-color:#cdd8e1}.screen-canvas{gap:16px;padding:20px}.screen-title-row{align-items:center;padding-bottom:2px}.density-control,.view-tabs,.segmented{background:#eef3f7;border-color:#e2e8ee;gap:2px;padding:3px}.density-control button,.view-tabs button,.segmented button{border-radius:7px;min-height:28px}.density-control .active,.view-tabs .active,.segmented .active,.saved-view-row .active{color:#0d7ca8;box-shadow:0 2px 7px #11182712}.screen-stack,.task-rows,.mini-list,.workload-list,.goal-tree,.summary-strip,.dashboard-grid,.dashboard-builder-grid,.library-grid,.settings-grid,.project-grid,.approval-grid,.card-grid{gap:12px}.summary-card,.widget-card,.library-section,.library-item,.project-card,.project-header,.ai-brief,.work-group,.kanban-column,.kanban-card,.info-panel,.data-table-wrap,.task-main-panel,.task-side-panel,.timeline-shell,.calendar-shell,.goal-card,.doc-editor,.doc-list,.inbox-item,.ai-chat,.ai-side,.flow-canvas,.approval-card,.module-card,.onboarding-step,.preview-canvas,.field-bank,.layout-lines{background:#fff;border-color:#e6ecf1;box-shadow:0 1px 2px #1118270a,0 10px 22px #11182709}.summary-card,.widget-card,.work-group,.data-table-wrap,.timeline-shell,.calendar-shell,.library-section,.project-card,.info-panel,.approval-card,.module-card,.field-bank,.layout-lines,.preview-canvas,.goal-card,.task-main-panel,.task-side-panel{padding:14px}.summary-card{gap:5px}.summary-card strong{font-size:1.55rem;line-height:1.1}.summary-card small{font-size:.78rem}.ai-brief,.project-header,.inbox-item{padding:15px}.ai-brief h2,.project-header h2,.widget-card h2,.library-section h2,.project-card h2,.work-group h2,.data-table-wrap h2,.flow-side h2,.goal-card h2,.approval-card h2,.module-card strong{font-size:1rem;line-height:1.25}.ai-brief p,.project-header p,.info-panel p,.approval-card p,.module-card span,.library-item span,.doc-editor p,.detail-section p{font-size:.88rem}.section-heading{min-height:34px}.section-heading button{border-color:#e4eaf0;width:30px;height:30px}.dashboard-grid{grid-template-columns:repeat(4,minmax(210px,1fr))}.widget-card{min-height:154px}.mini-list div,.task-row-line{gap:9px;min-height:38px}.builder-widget{background:#fff;border-color:#c8d9e3;min-height:146px}.builder-widget strong{font-size:1.35rem}.library-item,.module-card{min-height:108px;box-shadow:none}.module-card svg,.library-item svg{color:#0d7ca8}.project-card{gap:12px}.meter{grid-template-columns:minmax(90px,1fr) auto}.meter span,.meter:before{height:7px}.project-icon{width:54px;height:54px}.kanban-board{gap:12px}.kanban-column{min-height:0;box-shadow:none;background:#f8fbfd;padding:10px}.kanban-column header{min-height:32px}.kanban-column header strong{font-size:.9rem}.inline-create{min-height:34px;font-size:.82rem}.kanban-card{gap:8px;padding:10px;box-shadow:0 1px 2px #1118270d}.kanban-card strong{font-size:.9rem;line-height:1.35}.card-line,.card-footer,.tag-row{font-size:.78rem}.card-quick-actions button{font-size:.7rem}.layout-builder,.task-detail-layout,.docs-layout,.ai-layout,.flow-canvas{gap:12px}.layout-line{background:#fbfdfe;border-color:#c8d9e3;min-height:52px}.field-chip-grid button{background:#fbfdfe;min-height:34px;font-size:.82rem}.data-table{font-size:.84rem}.data-table th,.data-table td{padding:10px 12px}.data-table tbody tr:hover,.timeline-row>span,.calendar-cell,.flow-node{background:#fbfdfe}.calendar-cell{min-height:92px}.workload-row{padding:12px}.ai-message{background:#eff9fd;border-radius:12px}.command-palette{box-shadow:0 24px 70px #11182738}@media (max-width:1100px){.workspace-app,.workspace-app.is-collapsed{grid-template-columns:78px minmax(0,1fr)}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pulse-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.pulse-board{grid-template-columns:repeat(5,245px)}.chart-context-block{grid-template-columns:1fr}}@media (max-width:720px){.screen-canvas{padding:12px}.topbar-actions{justify-content:flex-start}.screen-title-row h1{font-size:1.45rem}.role-grid,.login-shell{grid-template-columns:1fr}.role-shell{min-height:auto;padding-top:18px}.pulse-hero,.pulse-board-top{flex-direction:column;align-items:stretch}.pulse-actions{justify-content:flex-start}.pulse-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.pulse-board{grid-template-columns:repeat(5,260px)}.pulse-chart{max-height:720px}.chart-focus-window{min-width:900px}}.screen-canvas.is-boards-screen{box-sizing:border-box;flex-direction:column;gap:10px;height:calc(100vh - 70px);max-height:calc(100vh - 70px);padding:16px 24px 12px;display:flex;overflow:hidden}.screen-canvas.is-boards-screen .screen-title-row{flex-shrink:0;margin-bottom:0}.screen-canvas.is-boards-screen .kanban-screen-stack{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow:hidden}.screen-canvas.is-boards-screen .kanban-screen-stack .kanban-unified-header{flex-shrink:0}.screen-canvas.is-boards-screen .kanban-board{gap:16px;padding-bottom:14px}.screen-canvas.is-boards-screen .kanban-column{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex:0 0 310px;width:310px;min-width:295px;max-width:325px;padding:14px 12px;box-shadow:0 1px 2px #00000005}.screen-canvas.is-boards-screen .kanban-cards{gap:12px;padding:2px 2px 8px}.screen-canvas.is-boards-screen .kanban-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;gap:8px;padding:13px 14px;transition:transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 1px 3px #0000000a,0 1px 2px #00000005}.screen-canvas.is-boards-screen .kanban-card:hover{border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 6px 16px #0000000f,0 2px 4px #00000008}.screen-canvas.is-boards-screen .kanban-swimlane{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.screen-canvas.is-boards-screen .kanban-screen-stack .board-list-view{scroll-behavior:smooth;flex-direction:column;flex:1;gap:16px;min-height:0;padding-bottom:80px;padding-right:8px;display:flex;overflow:auto}.screen-canvas.is-boards-screen .kanban-screen-stack .board-list-view::-webkit-scrollbar{width:6px;height:6px}.screen-canvas.is-boards-screen .kanban-screen-stack .board-list-view::-webkit-scrollbar-track{background:0 0}.screen-canvas.is-boards-screen .kanban-screen-stack .board-list-view::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.screen-canvas.is-boards-screen .kanban-screen-stack .board-list-view::-webkit-scrollbar-thumb:hover{background:#94a3b8}.screen-canvas.is-chart-screen{height:100vh;padding:0;overflow:hidden}.workspace-app.chart-mode .topbar{display:none}.screen-canvas.is-chart-screen .pulse-fullscreen,.screen-canvas.is-chart-screen .pulse-chart-shell{height:100%;min-height:0}.screen-canvas.is-chart-screen .pulse-chart-shell{box-shadow:none;background:#f7fafc;border:0;border-radius:0;padding:0}.screen-canvas.is-chart-screen .pulse-chart-viewport{background:radial-gradient(circle at 52% 44%,#24b3e71f,#0000 38rem),linear-gradient(90deg,#e057570d,#24b3e709,#27ae7e09,#e8a12409),#f7fafc;border:0;border-radius:0;height:100%;min-height:0}.chart-head-up,.chart-view-switcher,.screen-canvas.is-chart-screen .chart-zoom-bar{z-index:8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe0;border:1px solid #dae3ebe6;border-radius:12px;position:absolute;box-shadow:0 10px 28px #11182714}.chart-head-up{justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex;top:18px;left:20px;right:20px}.chart-head-up h1{margin:0 0 4px;font-size:clamp(1.6rem,2.6vw,2.5rem);line-height:1}.chart-head-up span{color:var(--muted)}.chart-view-switcher{gap:6px;padding:6px;display:flex;top:116px;left:20px}.chart-view-switcher button{color:#2c3749;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:32px;padding:0 12px;font-weight:700}.chart-view-switcher .active{color:#0d7ca8;background:#ecf8fc}.screen-canvas.is-chart-screen .chart-zoom-bar{max-width:720px;padding:10px 12px;bottom:20px;right:20px}.screen-canvas.is-chart-screen .pulse-chart-world{transform-origin:50% 0;width:2600px;height:1700px;margin-left:-1300px;top:150px}.screen-canvas.is-chart-screen .pulse-chart-world .chart-context-row{left:70px;right:70px}.screen-canvas.is-chart-screen .pulse-chart-world .chart-context-row:first-child{top:168px}.screen-canvas.is-chart-screen .pulse-chart-world .chart-context-row.bottom{top:1480px}.screen-canvas.is-chart-screen .chart-context-block{background:#ffffffc7;grid-template-columns:260px minmax(0,1fr);padding:14px}.screen-canvas.is-chart-screen .chart-context-cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.screen-canvas.is-chart-screen .pulse-chart-world .chart-focus-window{background:linear-gradient(90deg,#e0575712 0 14.28%,#24b3e712 14.28% 28.56%,#27ae7e0f 28.56% 42.84%,#e8a1240f 42.84% 57.12%,#24b3e70b 57.12% 71.4%,#17202e09 71.4% 85.68%,#27ae7e0a 85.68% 100%),#ffffffb8;border-radius:16px;height:900px;padding:18px;top:520px;left:70px;right:70px}.screen-canvas.is-chart-screen .chart-axis{grid-template-columns:repeat(7,1fr);padding-left:104px}.screen-canvas.is-chart-screen .chart-lanes{min-height:805px}.screen-canvas.is-chart-screen .chart-lane-row{grid-template-columns:96px minmax(0,1fr);min-height:108px}.screen-canvas.is-chart-screen .chart-links{width:calc(100% - 106px);inset:0 0 0 106px}.screen-canvas.is-chart-screen .chart-links path{stroke-width:.5px}.screen-canvas.is-chart-screen .chart-node{top:var(--node-y);width:224px;min-height:122px;left:calc(106px + var(--node-x))}.screen-canvas.is-chart-screen .chart-node:hover{transform:translate(-50%)translateY(-3px)}.focus-point{left:calc(106px + var(--focus-x));top:var(--focus-y);z-index:1;color:#0d7ca8;pointer-events:none;align-content:center;justify-items:center;gap:3px;width:148px;height:148px;display:grid;position:absolute;transform:translate(-50%,-50%)}.focus-point span{opacity:.08;background:currentColor;border:2px solid;border-radius:50%;width:116px;height:116px;position:absolute;inset:14px;box-shadow:0 0 0 16px}.focus-point strong,.focus-point small{z-index:2;background:#ffffffe6;border-radius:999px;padding:4px 8px;position:relative;box-shadow:0 4px 14px #11182714}.focus-point strong{color:#17202e;text-transform:uppercase;font-size:.78rem}.focus-point small{color:var(--muted);font-size:.72rem;font-weight:700}.focus-point.danger{color:#e05757}.focus-point.success{color:#27ae7e}.focus-point.warning{color:#e8a124}.screen-canvas.is-chart-screen .chart-minimap{top:116px;bottom:auto;right:20px}@media (max-width:900px){.chart-head-up,.screen-canvas.is-chart-screen .chart-zoom-bar{flex-direction:column;align-items:stretch;left:12px;right:12px}.chart-view-switcher{top:180px;left:12px;right:12px;overflow-x:auto}.screen-canvas.is-chart-screen .chart-minimap{display:none}}:root{--ink:#111827;--muted:#64748b;--line:#e2e8f0;--soft:#f8fafc;--primary-color:#0ea5c6;--success:#16a36f;--warning:#d97706;--shadow:0 14px 35px #0f172a12}.workspace-dashboard{gap:16px;display:grid}.workspace-hero,.planner-panel{border:1px solid var(--line);background:#fff;border-radius:8px;box-shadow:0 1px 2px #0f172a0a,0 14px 28px #0f172a0a}.workspace-hero{justify-content:space-between;align-items:flex-end;gap:18px;padding:22px;display:flex}.workspace-hero h1{max-width:820px;margin:0;font-size:clamp(1.65rem,3vw,2.65rem);line-height:1.08}.workspace-hero-copy{max-width:720px;color:var(--muted);margin:8px 0 0;line-height:1.5}.workspace-context-title{margin:0;font-size:1.1rem;line-height:1.25}.hero-actions,.timer-actions,.project-card-footer,.subtask-progress{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hero-actions button,.hero-actions a,.timer-actions button,.section-heading a,.workspace-access-actions button{border:1px solid var(--line);color:#334155;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:0 11px;font-size:.82rem;font-weight:700;display:inline-flex}.planner-grid{grid-template-columns:minmax(320px,1.35fr) minmax(300px,1fr);align-items:start;gap:12px;display:grid}.workspace-access-hero,.workspace-join-panel,.workspace-card{border:1px solid var(--line);background:#fff;border-radius:8px;box-shadow:0 1px 2px #0f172a0a,0 14px 28px #0f172a0a}.workspace-access-hero,.workspace-join-panel{justify-content:space-between;align-items:flex-end;gap:18px;padding:18px;display:flex}.workspace-access-hero h2,.workspace-join-panel h2{margin:0 0 6px;font-size:clamp(1.25rem,2vw,1.8rem)}.workspace-access-hero p,.workspace-join-panel p,.workspace-card p{color:var(--muted);margin:0;line-height:1.5}.workspace-access-actions,.join-code-row,.workspace-card-stats,.workspace-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.workspace-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.workspace-card{gap:14px;padding:16px;display:grid}.workspace-card.active{background:#f8fdff;border-color:#0ea5c66b}.workspace-card-stats span{color:#0f7891;background:#eef6f8;border-radius:999px;align-items:center;gap:6px;min-height:26px;padding:5px 9px;font-size:.78rem;font-weight:700;display:inline-flex}.workspace-card-actions{padding-top:2px}.workspace-card-actions button,.workspace-card-actions a{border:1px solid var(--line);color:#334155;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;min-height:32px;padding:0 10px;font-size:.8rem;font-weight:700;display:inline-flex}.workspace-card.active .workspace-card-actions button:first-child{color:#0f7891;background:#e8f8fc;border-color:#0ea5c666}.join-code-row{min-width:min(420px,100%)}.join-code-row input{border:1px solid var(--line);border-radius:8px;outline:0;flex:1;min-width:220px;min-height:38px;padding:0 12px}.planner-panel{gap:14px;padding:16px;display:grid}.today-panel{grid-row:span 2}.focus-task-list,.project-plan-list,.deadline-list,.subtask-list,.timer-log{gap:10px;display:grid}.focus-task,.project-plan-row,.deadline-row,.subtask-item{background:#fbfdff;border:1px solid #e8eef4;border-radius:8px}.focus-task{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.focus-task.active{background:#f0fbfd;border-color:#0ea5c657}.focus-task input,.task-row-line input,.subtask-item input{width:17px;height:17px;accent-color:var(--primary-color);margin-top:2px}.focus-task strong,.project-plan-row strong,.deadline-row strong{line-height:1.32;display:block}.focus-task span,.project-plan-row span,.deadline-row small,.subtask-progress span,.timer-display span,.project-card p,.project-card-footer span{color:var(--muted);font-size:.84rem}.subtask-progress{margin-top:8px}.subtask-progress span,.timer-chip,.project-card-footer span{color:#0f7891;background:#eef6f8;border-radius:999px;align-items:center;gap:5px;width:max-content;max-width:100%;min-height:24px;padding:4px 8px;font-size:.76rem;font-weight:700;display:inline-flex}.project-plan-row{grid-template-columns:minmax(0,1fr) minmax(120px,.8fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.deadline-row{grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.deadline-row>span{color:#0f7891;font-size:.78rem;font-weight:800}.deadline-row time{color:#334155;font-size:.82rem;font-weight:800}.timer-panel{background:linear-gradient(#fff 0%,#f8fbfd 100%)}.timer-display{background:#f0fbfd;border:1px solid #d9eef4;border-radius:8px;gap:4px;padding:14px;display:grid}.timer-display strong{font-size:2rem;line-height:1}.project-overview-grid{grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px;display:grid}.project-plan-panel{grid-column:span 2}.info-stat{color:#0f7891;align-items:center;gap:9px;min-height:54px;display:flex}.info-stat strong{color:#111827;font-size:1rem}.subtask-item{cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:42px;padding:9px 10px;display:grid}.subtask-item span{color:#334155}.subtask-item input:checked+span{color:var(--muted);text-decoration:line-through}.timer-log{grid-template-columns:repeat(3,minmax(0,1fr))}.timer-log div{background:#fbfdff;border:1px solid #e8eef4;border-radius:8px;gap:5px;padding:12px;display:grid}.timer-log svg{color:#0f7891}.timer-log span{color:var(--muted);font-size:.78rem}.task-row-line{grid-template-columns:auto minmax(0,1fr) auto minmax(138px,auto) auto}.task-row-title{gap:3px;min-width:0;display:grid}.task-row-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kanban-column.is-drop-target{background:#f0fbfd;border-color:#0ea5c680;box-shadow:inset 0 0 0 2px #0ea5c61c}.kanban-card:active{cursor:grabbing}.empty-kanban-drop{min-height:84px;color:var(--muted);border:1px dashed #b6c7d3;border-radius:8px;place-items:center;font-size:.82rem;font-weight:800;display:grid}.project-card-footer{justify-content:space-between;padding-top:2px}.project-card-footer span:last-child{color:#475569;background:#f3f5f7}.summary-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.summary-card{min-height:112px}.project-chart-page{gap:12px;display:grid}.project-chart-toolbar,.project-chart-canvas{border:1px solid var(--line);background:#fff;border-radius:8px;box-shadow:0 1px 2px #0f172a0a,0 14px 28px #0f172a0a}.project-chart-toolbar{justify-content:space-between;align-items:flex-end;gap:16px;padding:16px;display:flex}.project-chart-toolbar h2{margin:0 0 5px;font-size:1.35rem}.project-chart-toolbar p:not(.eyebrow){max-width:760px;color:var(--muted);margin:0;line-height:1.5}.project-chart-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.project-chart-actions button{border:1px solid var(--line);color:#334155;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;min-height:34px;padding:0 11px;font-size:.82rem;font-weight:700;display:inline-flex}.project-chart-canvas{cursor:grab;overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none;background:#fbfdff;height:min(76vh,820px);min-height:620px;position:relative;overflow:hidden}.project-chart-canvas:active{cursor:grabbing}.project-chart-meta{z-index:4;background:#ffffffe6;border:1px solid #e2e8f0e6;border-radius:8px;align-items:center;gap:9px;padding:8px 10px;display:flex;position:absolute;top:12px;left:12px;box-shadow:0 8px 22px #0f172a14}.project-chart-save-state{z-index:4;color:#16603f;background:#f0fdf5f0;border:1px solid #bee7d3;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-size:.82rem;font-weight:800;display:inline-flex;position:absolute;top:12px;right:12px;box-shadow:0 8px 22px #0f172a14}.project-chart-meta strong{color:#0f7891}.project-chart-meta span{color:var(--muted);font-size:.82rem}.project-chart-world{transform-origin:0 0;will-change:transform;min-width:9000px;min-height:5800px;position:absolute;top:72px;left:60px}.project-chart-lines{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.project-chart-lines path{fill:none;stroke:var(--wire-color,#0ea5c6);stroke-width:6px;stroke-linecap:round;opacity:.72;filter:drop-shadow(0 8px 10px color-mix(in srgb, var(--wire-color,#0ea5c6) 18%, transparent)) drop-shadow(0 0 5px color-mix(in srgb, var(--wire-shadow,#0ea5c6) 12%, transparent));transition:d .16s}.project-chart-lines path.secondary{stroke-width:4.5px;opacity:.58}.project-chart-node{left:var(--node-x);top:var(--node-y);width:var(--node-width,680px);height:var(--node-height,590px);border:2px solid color-mix(in srgb, var(--project-color,#0ea5c6) 52%, #d9e7ee);box-shadow:0 12px 30px #0f172a1a, 0 0 0 4px color-mix(in srgb, var(--project-color,#0ea5c6) 8%, transparent);cursor:grab;z-index:2;touch-action:none;background:#fffffff0;border-top-width:5px;border-radius:8px;grid-template-rows:auto auto auto auto auto auto minmax(260px,1fr);align-content:start;gap:10px;padding:14px;transition:border-color .14s,box-shadow .14s;display:grid;position:absolute;overflow:hidden}.project-chart-node:hover{border-color:color-mix(in srgb, var(--project-color,#0ea5c6) 72%, #fff);box-shadow:0 16px 36px #0f172a24, 0 0 0 5px color-mix(in srgb, var(--project-color,#0ea5c6) 11%, transparent)}.project-chart-node.is-dragging,.project-chart-node.is-resizing{cursor:grabbing;z-index:5;border-color:var(--project-color,#0ea5c6);box-shadow:0 24px 60px #0f172a38, 0 0 0 6px color-mix(in srgb, var(--project-color,#0ea5c6) 13%, transparent)}.project-chart-node-head,.engineer-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.project-chart-node-head{justify-content:space-between}.project-chart-node-head span,.engineer-row span{background:color-mix(in srgb, var(--project-color,#0ea5c6) 12%, #fff);width:max-content;max-width:100%;color:color-mix(in srgb, var(--project-color,#0ea5c6) 82%, #0f172a);border-radius:999px;padding:4px 7px;font-size:.72rem;font-weight:800}.project-chart-node h3{margin:0;font-size:1rem;line-height:1.25}.project-chart-node p{color:var(--muted);margin:0;font-size:.82rem}.project-time-summary{color:#64748b;background:#fbfdff;border:1px solid #e7f0f4;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.72rem;font-weight:800;display:flex}.project-time-summary span{white-space:nowrap;min-width:0}.project-time-summary strong{color:#0f172a}.project-time-summary .overrun{color:#b91c1c;background:#dc26261a;border-radius:999px;padding:3px 7px}.project-time-bar{background:#e5edf3;border-radius:999px;height:8px;overflow:hidden}.project-time-bar span{border-radius:inherit;background:linear-gradient(90deg,#16a36f,#0ea5c6);height:100%;display:block;box-shadow:0 0 16px #0ea5c638}.project-time-bar.overrun span{background:linear-gradient(90deg,#f59e0b,#dc2626)}.project-task-canvas{border:1px solid color-mix(in srgb, var(--project-color,#0ea5c6) 15%, #edf3f7);background:#fff;border-radius:10px;height:auto;min-height:0;margin-top:2px;position:relative;overflow:hidden}.project-task-lines{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.project-task-lines path{fill:none;stroke:var(--task-wire-color,#0ea5c6);stroke-width:3px;stroke-linecap:round;opacity:.68;filter:drop-shadow(0 3px 5px color-mix(in srgb, var(--task-wire-color,#0ea5c6) 18%, transparent))}.project-task-lines path.status-done{opacity:.76}.project-task-lines path.status-due-soon{opacity:.64}.project-task-lines path.status-overdue{opacity:.82}.project-task-lines path.status-future{opacity:.42}.project-chart-task{left:var(--task-x);top:var(--task-y);z-index:1;touch-action:none;background:#fff;border:1px solid #e5edf2;border-radius:8px;width:218px;transition:box-shadow .14s,transform .14s,width .14s;position:absolute;overflow:hidden;box-shadow:0 8px 18px #0f172a12}.project-chart-task:hover,.project-chart-task.is-expanded{z-index:3;transform:translateY(-2px);box-shadow:0 14px 28px #0f172a24}.project-chart-task.is-dragging{z-index:4;transform:translateY(-2px)scale(1.01);box-shadow:0 18px 36px #0f172a2e}.project-chart-task.is-expanded{width:262px}.project-chart-task button{color:#111827;cursor:pointer;text-align:left;background:0 0;border:0;border-left:5px solid #cbd5e1;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;min-height:72px;padding:8px 34px 8px 12px;display:grid}.project-chart-task.status-done button{background:linear-gradient(90deg,#16a36f1f,#0000 56%);border-left-color:#16a36f}.project-chart-task.status-due-soon button{background:linear-gradient(90deg,#d977061f,#0000 56%);border-left-color:#d97706}.project-chart-task.status-overdue button{background:linear-gradient(90deg,#dc26261f,#0000 56%);border-left-color:#dc2626}.project-chart-task.status-future button{background:#fbfdff;border-left-color:#94a3b8}.task-main,.task-people{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.task-main{gap:2px;display:grid}.task-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.task-main small{color:#475569;background:#f1f5f9;border-radius:999px;width:max-content;padding:3px 6px;font-size:.68rem;font-weight:800}.task-people em{color:#fff;background:#172033;border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 6px;font-size:.66rem;font-style:normal;font-weight:800;display:inline-grid}.task-drag-grip{z-index:2;cursor:grab;background:radial-gradient(circle,#64748b 1.2px,#0000 1.4px) 5px 5px/7px 7px,#fff;border:1px solid #dce6ec;border-radius:7px;place-items:center;width:24px;height:24px;display:inline-grid;position:absolute;top:8px;right:8px}.task-drag-grip:active{cursor:grabbing}.task-time,.task-time-bar{grid-column:1/-1}.task-time{color:#64748b;justify-content:space-between;align-items:center;gap:8px;font-size:.68rem;font-weight:800;display:flex}.task-time strong{color:#0f7891;font-size:.68rem}.task-time-bar{background:#cbd5e1b8;border-radius:999px;height:6px;display:block;overflow:hidden}.task-time-bar i{border-radius:inherit;background:linear-gradient(90deg,#16a36f,#0ea5c6);height:100%;display:block}.task-time-bar.overrun i{background:linear-gradient(90deg,#f59e0b,#dc2626)}.project-resize-handle{z-index:6;opacity:0;background:#0ea5c62e;border:0;border-radius:999px;transition:opacity .12s,background .12s,box-shadow .12s;position:absolute}.project-chart-node:hover .project-resize-handle,.project-chart-node.is-resizing .project-resize-handle{opacity:1}.project-resize-handle:hover,.project-resize-handle:focus-visible{background:#0ea5c657;box-shadow:0 0 0 4px #0ea5c61a}.project-resize-handle.resize-x{cursor:ew-resize;width:12px;height:30%;top:35%;right:0}.project-resize-handle.resize-y{cursor:ns-resize;width:30%;height:12px;bottom:0;left:35%}.project-resize-handle.resize-both{cursor:nwse-resize;border-radius:7px;width:22px;height:22px;bottom:3px;right:3px}.project-chart-task svg{color:#64748b;transition:transform .14s}.project-chart-task svg.expanded{transform:rotate(180deg)}.project-chart-subtasks{border-left:5px solid #0000;gap:5px;padding:0 9px 9px;display:grid}.subtask-card{color:#475569;background:#fff;border:1px solid #e8eef4;border-radius:7px;padding:7px 8px 7px 22px;font-size:.76rem;line-height:1.35;display:block;position:relative;box-shadow:0 1px 2px #0f172a0a}.subtask-card:before{content:"";background:#94a3b8;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:9px;transform:translateY(-50%)}@media (max-width:1180px){.planner-grid,.project-overview-grid{grid-template-columns:1fr}.today-panel,.project-plan-panel{grid-area:auto}}@media (max-width:760px){.topbar{grid-template-columns:1fr}.workspace-hero,.workspace-access-hero,.workspace-join-panel,.project-chart-toolbar{flex-direction:column;align-items:stretch;padding:16px}.hero-actions,.timer-actions{justify-content:flex-start}.project-plan-row,.deadline-row,.timer-log,.task-row-line{grid-template-columns:1fr}.focus-task{grid-template-columns:auto minmax(0,1fr)}.focus-task .priority{grid-column:2}.summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.project-chart-canvas{min-height:620px}.project-chart-world{min-width:9000px;min-height:5800px;top:86px;left:30px}}.task-drawer-overlay{z-index:1000;background:#11182766;justify-content:flex-end;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.task-detail-drawer{background:var(--panel);flex-direction:column;width:min(600px,100%);height:100%;animation:.3s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;overflow-y:auto;box-shadow:-4px 0 24px #0000001a}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.task-drawer-header{border-bottom:1px solid var(--line);background:var(--panel);z-index:10;justify-content:space-between;align-items:flex-start;padding:24px 32px;display:flex;position:sticky;top:0}.task-drawer-header-content h2{color:var(--ink);margin:8px 0 0;font-size:20px}.task-drawer-meta{color:var(--muted);align-items:center;gap:12px;margin-bottom:4px;font-size:13px;display:flex}.task-drawer-actions{gap:8px;display:flex}.task-drawer-body{flex-direction:column;gap:32px;padding:32px;display:flex}.task-info-grid{background:var(--soft);border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr;gap:20px;padding:20px;display:grid}.task-info-item{flex-direction:column;gap:6px;display:flex}.task-info-item span{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.task-info-item strong,.task-info-item select{color:var(--ink);align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.task-info-item select{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;padding:6px 8px}.task-section-title{color:var(--ink);justify-content:space-between;align-items:center;margin-bottom:16px;font-size:16px;font-weight:600;display:flex}.task-description{color:var(--ink);border:1px solid #0000;border-radius:8px;padding:16px;font-size:14px;line-height:1.6;transition:all .2s}.task-description:hover{background:var(--soft);border-color:var(--line);cursor:text}.task-subtasks-list{flex-direction:column;gap:12px;display:flex}.task-subtask-item{background:var(--soft);border:1px solid #0000;border-radius:6px;align-items:center;gap:12px;padding:8px 12px;display:flex}.task-subtask-item:hover{border-color:var(--line)}.task-subtask-item input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary-color)}.task-subtask-item span{flex:1;font-size:14px}.task-subtask-item.completed span{color:var(--muted);text-decoration:line-through}.add-subtask-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;display:flex}.add-subtask-btn:hover{background:var(--soft);color:var(--ink)}.add-subtask-input input{border:1px solid var(--line);border-radius:6px;flex:1;padding:8px 12px;font-size:14px}.add-subtask-input button{background:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 16px;font-weight:500}.task-timer-section{background:var(--soft);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;padding:20px;display:flex}.task-timer-info{flex-direction:column;gap:4px;display:flex}.task-timer-info strong{font-variant-numeric:tabular-nums;font-size:24px}.task-timer-info span{color:var(--muted);font-size:13px}.task-timer-btn{background:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;padding:10px 20px;font-weight:500;transition:all .2s;display:flex}.task-timer-btn.running{background:var(--warning);color:#fff}.create-task-modal-overlay{z-index:1000;background:#11182766;place-items:center;animation:.2s ease-out fadeIn;display:grid;position:fixed;inset:0}.create-task-modal{background:var(--panel);border-radius:12px;flex-direction:column;width:min(560px,90vw);display:flex;box-shadow:0 20px 40px #00000026}.create-task-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:24px;display:flex}.create-task-header h2{margin:0;font-size:18px}.create-task-body{flex-direction:column;gap:20px;padding:24px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--ink);font-size:13px;font-weight:500}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;padding:10px 12px;font-family:inherit;font-size:14px}.form-group textarea{resize:vertical;min-height:80px}.form-row-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.create-task-footer{border-top:1px solid var(--line);background:var(--soft);border-radius:0 0 12px 12px;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.create-task-actions{gap:12px;display:flex}.btn-secondary{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;padding:8px 16px;font-weight:500}.btn-primary{background:var(--primary-color);border:1px solid var(--primary-color);color:#fff;cursor:pointer;border-radius:6px;padding:8px 16px;font-weight:500}.btn-text{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:8px;font-size:14px}.btn-text:hover{color:var(--ink)}.kanban-card{cursor:pointer;transition:transform .1s,box-shadow .1s}.kanban-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.card-status-label{background:var(--soft);color:var(--muted);border-radius:4px;padding:2px 6px;font-size:12px;font-weight:500}.card-assignee{color:var(--ink);align-items:center;gap:6px;font-size:13px;display:flex}.card-date{color:var(--muted);align-items:center;gap:4px;font-size:12px;display:flex}.card-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;margin-top:4px;padding-top:12px;font-size:12px;display:flex}.card-footer span,.timer-chip{align-items:center;gap:4px;display:flex}.clickup-overlay{justify-content:center;align-items:flex-start;padding-top:10vh;display:flex}.clickup-style{background:#fff;border-radius:12px;flex-direction:column;width:min(720px,95vw);display:flex;overflow:hidden}.clickup-tabs{border-bottom:1px solid var(--line);gap:16px;padding:16px 24px 0;display:flex}.clickup-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;font-size:14px;font-weight:500}.clickup-tabs button.active{color:var(--ink);border-bottom-color:var(--primary-color)}.clickup-body{flex-direction:column;gap:16px;padding:24px;display:flex}.clickup-title-input{width:100%;color:var(--ink);border:none;outline:none;padding:0;font-size:24px;font-weight:600}.clickup-title-input::placeholder{color:#a3a3a3}.clickup-desc-input{resize:vertical;width:100%;min-height:120px;color:var(--ink);border:none;outline:none;padding:0;font-size:15px}.clickup-desc-input::placeholder{color:#a3a3a3}.clickup-chips{flex-wrap:wrap;align-items:center;gap:12px;padding-top:16px;display:flex}.cu-chip{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;outline:none;padding:6px 12px;font-size:13px;font-weight:500}.cu-chip.status-chip{border-style:dashed}.clickup-footer{border-top:1px solid var(--line);background:#f9fafb;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.btn-templates{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:flex}.footer-actions-cu{align-items:center;gap:12px;display:flex}.footer-actions-cu .btn-primary{border-radius:8px;align-items:center;gap:6px;padding:8px 16px;display:flex}.task-drawer-overlay{background:#0006!important;justify-content:center!important;align-items:center!important;display:flex!important}.task-detail-modal{background:#fff;border-radius:12px;width:min(1100px,95vw);height:min(800px,90vh);margin:auto;animation:.2s ease-out modal-fade-in;display:flex;overflow:hidden;box-shadow:0 10px 40px #0003}@keyframes modal-fade-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.task-modal-main{border-right:1px solid var(--line);flex-direction:column;flex:1;padding:40px;display:flex;overflow-y:auto}.task-modal-breadcrumbs{color:var(--muted);margin-bottom:20px;font-size:13px}.task-modal-header h2{color:var(--ink);margin-bottom:32px;font-size:32px;font-weight:600}.task-modal-grid{grid-template-columns:1fr 1fr;gap:28px;margin-bottom:40px;display:grid}.task-modal-field{align-items:center;gap:16px;display:flex}.field-label{color:var(--muted);width:100px;font-size:13px;font-weight:500}.assignee-display,.date-display{color:var(--ink);align-items:center;gap:10px;font-size:14px;font-weight:500;display:flex}.task-modal-section{margin-bottom:40px}.task-modal-activity{background:#f9fafb;flex-direction:column;width:360px;display:flex}.activity-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.activity-header h3{color:var(--ink);font-size:16px;font-weight:600}.activity-feed{flex:1;padding:24px;overflow-y:auto}.activity-item{color:var(--muted);margin-bottom:16px;font-size:13px}.activity-input{border-top:1px solid var(--line);background:#fff;padding:20px 24px}.activity-input input{border:1px solid var(--line);border-radius:8px;outline:none;width:100%;padding:14px;font-size:14px}.activity-input input:focus{border-color:var(--primary-color)}.avatar{color:#fff!important;cursor:default!important;background-color:#007bff!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;width:28px!important;height:28px!important;font-size:12px!important;font-weight:600!important;display:inline-flex!important}.avatar[title=\?]{color:#4b5563!important;background-color:#d1d5db!important}.task-detail-modal{width:min(800px,95vw)!important}.task-modal-main{border-right:none!important;padding:40px 48px!important}.clickup-title-input{margin-bottom:12px;font-size:28px!important}.clickup-desc-input{background-color:#f9fafb;transition:all .2s;border:1px solid #0000!important;border-radius:8px!important;min-height:140px!important;padding:16px!important}.clickup-desc-input:focus{background-color:#fff;box-shadow:0 4px 12px #0000000d;border-color:var(--line)!important}.cu-chip{transition:all .2s;box-shadow:0 1px 2px #00000005;border:1px solid var(--line)!important;background:#fff!important;border-radius:100px!important;padding:8px 14px!important}.cu-chip:hover,.cu-chip:focus{box-shadow:0 2px 6px #0000000d;border-color:#d1d5db!important}.add-subtask-input input{background-color:#f9fafb;border:1px solid #0000;border-radius:8px;width:100%;padding:10px 16px;transition:all .2s}.add-subtask-input input:focus{border-color:var(--line);background-color:#fff;outline:none;box-shadow:0 4px 12px #0000000d}.add-subtask-input{gap:12px;margin-top:12px;display:flex}.add-subtask-input button{border:1px solid var(--line);cursor:pointer;background-color:#fff;border-radius:8px;padding:0 16px;font-weight:500;transition:all .2s}.add-subtask-input button:hover{background-color:#f3f4f6}.clickup-tabs{padding-left:32px!important}.clickup-body{padding:32px!important}.layout-builder-page{background-color:#fff;flex-direction:column;height:100%;display:flex;overflow:hidden}.layout-builder-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:24px 32px;display:flex}.layout-builder-header .eyebrow{margin-bottom:4px}.layout-builder-header h1{margin-bottom:4px;font-size:24px;font-weight:600}.layout-builder-header .subtitle{color:var(--muted);font-size:14px}.header-actions{align-items:center;gap:12px;display:flex}.save-label{color:var(--muted);font-size:13px}.layout-select{border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 12px;font-size:13px}.layout-builder-content{background-color:#f9fafb;flex:1;grid-template-columns:280px 1fr 380px;display:grid;overflow:hidden}.lb-col{padding:24px;overflow-y:auto}.lb-col-header{margin-bottom:20px}.lb-col-header h3{margin-bottom:4px;font-size:16px;font-weight:600}.lb-hint{color:var(--muted);font-size:13px}.lb-header-actions{justify-content:space-between;align-items:center;display:flex}.lb-fields-col{border-right:1px solid var(--line);background:#fff}.lb-fields-list{flex-direction:column;gap:8px;display:flex}.lb-field-chip{border:1px solid var(--line);cursor:grab;color:var(--ink);background:#fff;border-radius:8px;align-items:center;gap:12px;padding:10px 16px;font-size:13px;font-weight:500;transition:box-shadow .2s,border-color .2s;display:flex}.lb-field-chip:hover{border-color:#d1d5db;box-shadow:0 2px 5px #0000000d}.icon-blue{color:#3b82f6}.icon-grey{color:#6b7280}.icon-green{color:#10b981}.icon-red{color:#ef4444}.icon-orange{color:#f97316}.icon-teal{color:#14b8a6}.icon-yellow{color:#eab308}.icon-purple{color:#a855f7}.lb-layout-col{padding:24px 32px}.lb-drop-zones{flex-direction:column;gap:16px;margin-bottom:32px;display:flex}.lb-zone-group{flex-direction:column;gap:8px;display:flex}.lb-zone-group label{color:var(--muted);font-size:13px;font-weight:500}.lb-zone{border:1px dashed var(--line);background:#fff;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;min-height:48px;padding:8px;display:flex}.lb-zone.single-item{display:block}.lb-dropped-chip{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:500;display:flex;box-shadow:0 1px 2px #00000005}.lb-dropped-chip.full-width{width:100%}.remove-icon{color:var(--muted);cursor:pointer;margin-left:auto}.remove-icon:hover{color:var(--ink)}.lb-layout-toggle{justify-content:center;gap:16px;display:flex}.toggle-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500}.toggle-btn.active{color:var(--primary-color);background:#fff;box-shadow:0 1px 3px #0000001a}.lb-preview-col{border-left:1px solid var(--line);background:#fff}.lb-preview-canvas{border:1px solid var(--line);background:#f9fafb;border-radius:12px;margin-top:24px;padding:24px}.lb-mock-card{width:100%;cursor:default!important;box-shadow:0 4px 12px #0000000d!important}.lb-bottom-banner{color:#1e3a8a;background:#eff6ff;border-top:1px solid #bfdbfe;align-items:center;gap:12px;padding:16px 32px;font-size:13px;display:flex}.mock-id{color:var(--primary-color);font-size:13px;font-weight:600}.mock-priority.high{color:#ef4444;background:#fef2f2;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:11px;font-weight:600;display:flex}.mock-title{color:var(--ink);margin-bottom:16px;font-size:16px;font-weight:600;display:block}.mock-info-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:12px;font-size:12px;display:flex}.mock-status{color:var(--ink);align-items:center;gap:6px;font-weight:500;display:flex}.status-dot{border-radius:50%;width:8px;height:8px}.status-dot.orange{background:#f97316}.mock-assignee{color:var(--ink);align-items:center;gap:6px;font-weight:500;display:flex}.mock-date{align-items:center;gap:4px;display:flex}.mock-badge{color:var(--ink);background:#f3f4f6;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-weight:500;display:flex}.mock-badge.red{color:#ef4444;background:#fef2f2}.mock-badge.no-bg{border:1px solid var(--line);background:0 0}.mock-tag{border-radius:12px;padding:2px 8px;font-size:11px;font-weight:500}.mock-tag.blue{color:#3b82f6;background:#eff6ff}.mock-tag.green{color:#10b981;background:#ecfdf5}.mock-tag.purple{color:#a855f7;background:#faf5ff}.mock-reporter{color:var(--muted);background:#f9fafb;border-radius:8px;align-items:center;gap:6px;margin:16px 0;padding:12px;font-size:12px;display:flex}.mock-bottom-area{color:var(--muted);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;font-size:12px;display:flex}.mock-subtasks{flex-direction:column;gap:4px;width:120px;display:flex}.mock-progress-bar{background:#e5e7eb;border-radius:2px;height:4px;overflow:hidden}.mock-progress-fill{background:var(--primary-color);height:100%}.mock-logged-time{color:var(--ink);align-items:center;gap:4px;font-weight:500;display:flex}.mock-footer-row{justify-content:space-between;display:flex}.mock-footer-item{flex-direction:column;gap:4px;font-size:12px;display:flex}.mock-footer-item label{color:var(--muted)}.mock-footer-item span{color:var(--ink);font-weight:600}.mock-risk-badge{color:#ca8a04;background:#fef9c3;border-radius:4px;padding:2px 6px}.mw-identity-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 0 10px;display:flex}.mw-identity-info{align-items:center;gap:10px;display:flex}.mw-avatar-chip{border:1px solid var(--line);background:var(--soft);border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 6px;display:inline-flex}.mw-avatar-initials{background:var(--primary-color);color:#fff;letter-spacing:0;border-radius:50%;place-items:center;width:28px;height:28px;font-size:.72rem;font-weight:800;display:inline-grid}.mw-avatar-chip strong{color:var(--ink);font-size:.88rem}.mw-ws-label{color:var(--muted);font-size:.82rem}.mw-identity-stats{align-items:center;gap:8px;display:flex}.mw-stat-chip{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.mw-filters{flex-wrap:wrap;gap:8px;padding:10px 0}.mw-search-wrap{align-items:center;display:flex;position:relative}.mw-search-icon{color:var(--muted);pointer-events:none;position:absolute;left:10px}.mw-search-input{border:1px solid var(--line);height:34px;color:var(--ink);background:#fff;border-radius:8px;outline:none;min-width:200px;padding:0 32px;font-size:.84rem;transition:border-color .15s}.mw-search-input:focus{border-color:var(--primary-color)}.mw-search-input::placeholder{color:var(--muted)}.mw-search-clear{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;place-items:center;padding:2px;display:inline-grid;position:absolute;right:8px}.mw-filter-select{border:1px solid var(--line);height:34px;color:var(--ink);cursor:pointer;background:#fff;border-radius:8px;outline:none;padding:0 10px;font-family:inherit;font-size:.84rem;transition:border-color .15s}.mw-filter-select:focus{border-color:var(--primary-color)}.mw-clear-btn{border:1px solid var(--line);height:34px;color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:5px;padding:0 10px;font-size:.82rem;transition:all .15s;display:inline-flex}.mw-clear-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.mw-group-label-row{align-items:center;gap:7px;display:flex}.mw-group-toggle{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;place-items:center;padding:2px;transition:color .15s;display:inline-grid}.mw-group-toggle:hover{color:var(--ink)}.mw-group-title{color:var(--ink);letter-spacing:.01em;text-transform:uppercase;margin:0;font-size:.84rem;font-weight:700}.mw-group-count{background:var(--line);min-width:20px;height:20px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-flex}.work-group-overdue{border-left:3px solid var(--warning);padding-left:12px}.mw-overdue-label,.mw-overdue-icon{color:var(--warning)}.mw-task-row{cursor:pointer;border-radius:6px;align-items:center;transition:background .1s;display:grid;grid-template-columns:22px minmax(0,1fr) auto auto minmax(130px,auto) 60px!important;gap:10px!important;padding:10px 6px!important}.mw-task-row:hover{background:var(--soft)}.mw-task-done{opacity:.6}.mw-task-done .mw-task-title-btn strong{color:var(--muted);text-decoration:line-through}.mw-task-overdue{background:#fffdf7}.mw-task-overdue:hover{background:#fffbee}.mw-task-selected{outline:1px solid var(--primary-color);outline-offset:-1px;background:#f0fbfd}.mw-complete-circle{border:1.5px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;outline:none;flex-shrink:0;place-items:center;width:18px;height:18px;transition:border-color .15s,background .15s;display:inline-grid}.mw-complete-circle:hover{border-color:var(--primary-color);background:#eef8fc}.mw-complete-circle svg{width:10px;height:10px;display:block}.mw-complete-circle-done{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.mw-complete-circle-done:hover{background:var(--primary-color);border-color:var(--primary-color);opacity:.85}.mw-task-title-row{align-items:center;gap:8px;min-width:0;display:flex}.mw-task-title-btn{text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;flex:1;min-width:0;padding:0;transition:color .15s;overflow:hidden}.mw-task-title-btn:hover strong{color:var(--primary-color)}.mw-task-title-btn strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;display:block;overflow:hidden}.mw-done-text{color:var(--muted)!important;text-decoration:line-through!important}.mw-breadcrumb{flex-wrap:wrap;align-items:center;gap:4px;margin-top:2px;display:flex}.mw-crumb-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.76rem;transition:color .15s}.mw-crumb-btn:hover{color:var(--primary-color);text-decoration:underline}.mw-crumb-sep{color:var(--line);font-size:.76rem}.mw-crumb-muted{color:var(--line);font-size:.76rem;font-style:italic}.mw-status-pill{white-space:nowrap;border:1px solid var(--line);background:var(--soft);color:var(--muted);border-radius:999px;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.mw-status-in_progress{color:#16799c;background:#eef8fc;border-color:#c5e9f5}.mw-status-review{color:#a46605;background:#fff5dc;border-color:#f5dfa0}.mw-status-done{color:#247a5d;background:#edf9f4;border-color:#b8e8d8}.mw-status-blocked{color:#b63838;background:#feecec;border-color:#f5b8b8}.mw-status-ready,.mw-status-backlog{background:var(--soft);color:var(--muted)}.mw-deadline{color:var(--muted);white-space:nowrap;font-size:.78rem}.mw-deadline-overdue{color:var(--warning);white-space:nowrap;font-size:.78rem;font-weight:700}.mw-deadline-none{color:var(--line)}.mw-timer-placeholder{width:60px;min-height:1px;display:block}.mw-deadline-rows{gap:8px;display:grid}.mw-deadline-row{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;transition:all .15s;display:grid}.mw-deadline-row:hover{background:var(--soft);border-color:var(--primary-color)}.mw-deadline-row-overdue{background:#fffdf5;border-color:#f5dfa0}.mw-deadline-row-overdue:hover{border-color:var(--warning);background:#fffbee}.mw-deadline-task-info{gap:2px;min-width:0;display:grid}.mw-deadline-task-name{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;overflow:hidden;color:var(--ink)!important}.mw-deadline-task-sub{font-size:.76rem;color:var(--muted)!important}.mw-deadline-task-sub time{color:var(--muted)}.mw-project-header{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:4px;padding:10px 0 14px;display:flex}.mw-project-header-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.mw-project-icon{border:1px solid var(--line);background:var(--soft);width:34px;height:34px;color:var(--primary-color);border-radius:8px;flex-shrink:0;place-items:center;display:inline-grid}.mw-project-info{min-width:0}.mw-project-name{color:var(--ink);margin:0 0 4px;font-size:.94rem;font-weight:700}.mw-project-meta-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.mw-meta-chip{background:var(--line);color:var(--muted);border-radius:999px;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.mw-meta-active{color:#16799c;background:#eef8fc}.mw-meta-review{color:#a46605;background:#fff5dc}.mw-meta-done{color:#247a5d;background:#edf9f4}.mw-project-progress-wrap{align-items:center;gap:8px;min-width:120px;display:flex}.mw-project-progress-bar{background:var(--line);border-radius:999px;flex:1;height:6px;overflow:hidden}.mw-project-progress-fill{background:var(--primary-color);border-radius:999px;height:100%;transition:width .3s}.mw-progress-pct{color:var(--muted);white-space:nowrap;font-size:.76rem;font-weight:700}.mw-view-project-btn{border:1px solid var(--line);color:var(--primary-color);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;align-items:center;gap:5px;padding:6px 12px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.mw-view-project-btn:hover{border-color:var(--primary-color);background:#eef8fc}.mw-timers-layout{gap:0;display:grid}.mw-timer-section{margin-bottom:0!important}.mw-active-timer{border:1px solid var(--line);background:#f0fbfd;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;padding:14px;display:flex}.mw-active-timer-info{gap:3px;min-width:0;display:grid}.mw-active-task-name{color:var(--ink);cursor:pointer;font-size:.94rem;font-weight:700;transition:color .15s}.mw-active-task-name:hover{color:var(--primary-color)}.mw-active-task-project{color:var(--muted);font-size:.78rem}.mw-active-timer-display{align-items:center;gap:12px;display:flex}.mw-timer-clock{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.5rem;font-weight:800}.mw-timer-controls{align-items:center;gap:6px;display:flex}.mw-timer-btn{border:1px solid var(--line);height:32px;color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:5px;padding:0 12px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.mw-timer-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.mw-timer-btn-primary{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.mw-timer-btn-primary:hover{opacity:.9;color:#fff}.mw-timer-btn-stop{color:var(--warning);border-color:var(--warning)}.mw-timer-btn-stop:hover{background:#fffdf5}.mw-no-timer{border:1px dashed var(--line);text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:6px;margin-bottom:8px;padding:28px;display:flex}.mw-no-timer-icon{color:var(--line)}.mw-no-timer-title{color:var(--muted);margin:0;font-size:.9rem;font-weight:600}.mw-no-timer-sub{color:var(--muted);margin:0;font-size:.8rem}.mw-today-time-list{border:1px solid var(--line);border-radius:8px;margin-bottom:8px;overflow:hidden}.mw-today-time-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:10px 14px;font-size:.86rem;display:flex}.mw-today-time-row:last-child{border-bottom:none}.mw-today-project{color:var(--ink);font-weight:500}.mw-today-time-total{background:var(--soft);color:var(--ink);justify-content:space-between;align-items:center;padding:10px 14px;font-size:.86rem;font-weight:700;display:flex}.mw-total-chip{font-size:.78rem!important}.mw-recent-timer-row{border-bottom:1px solid #eef2f5;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 0;display:grid}.mw-recent-timer-info{gap:2px;min-width:0;display:grid}.mw-recent-task-name{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:600;transition:color .15s;overflow:hidden;color:var(--ink)!important}.mw-recent-task-name:hover{color:var(--primary-color)!important}.mw-recent-task-project{font-size:.76rem;color:var(--muted)!important}.mw-start-btn{border:1px solid var(--line);height:28px;color:var(--muted);cursor:pointer;white-space:nowrap;background:#fff;border-radius:6px;align-items:center;gap:4px;padding:0 10px;font-size:.76rem;font-weight:600;transition:all .15s;display:inline-flex}.mw-start-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.mw-tracking-badge{color:#16799c;background:#eef8fc;border-radius:999px;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.mw-bulk-bar{border:1px solid var(--primary-color);background:#f0fbfd;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;display:flex}.mw-bulk-count{color:var(--ink);margin-right:4px;font-size:.82rem;font-weight:700}.mw-bulk-action-btn{border:1px solid var(--line);height:30px;color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:5px;padding:0 12px;font-size:.8rem;font-weight:600;transition:all .15s;display:inline-flex}.mw-bulk-action-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.mw-bulk-done{color:var(--success);border-color:var(--success)}.mw-bulk-done:hover{color:var(--success);background:#edf9f4}.mw-bulk-select-wrap{align-items:center;display:inline-flex;position:relative}.mw-bulk-select-wrap svg{pointer-events:none;color:var(--muted);position:absolute;right:8px}.mw-bulk-select{border:1px solid var(--line);height:30px;color:var(--ink);cursor:pointer;appearance:none;background:#fff;border-radius:6px;outline:none;padding:0 28px 0 10px;font-family:inherit;font-size:.8rem;transition:border-color .15s}.mw-bulk-select:focus{border-color:var(--primary-color)}.mw-bulk-clear{border:1px solid var(--line);width:30px;height:30px;color:var(--muted);cursor:pointer;background:#fff;border-radius:6px;place-items:center;margin-left:auto;transition:all .15s;display:inline-grid}.mw-bulk-clear:hover{border-color:var(--warning);color:var(--warning)}.mw-empty-state{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:32px 24px;display:flex}.mw-empty-icon{color:var(--line);margin-bottom:4px}.mw-empty-title{color:var(--muted);margin:0;font-size:.9rem;font-weight:600}.mw-empty-sub{color:var(--muted);max-width:340px;margin:0;font-size:.8rem}@media (max-width:768px){.mw-task-row{grid-template-columns:22px minmax(0,1fr) auto!important}.mw-task-row .mw-status-pill,.mw-task-row .mw-deadline,.mw-task-row .mw-deadline-overdue,.mw-task-row .timer-chip{display:none}.mw-project-header,.mw-active-timer,.mw-identity-row{flex-direction:column;align-items:flex-start}}.tt-page{flex-direction:column;gap:20px;padding:0 0 40px;display:flex}.tt-page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tt-page-title{color:var(--ink);margin:0 0 4px;font-size:1.35rem;font-weight:700;line-height:1.2}.tt-page-sub{color:var(--muted);margin:0;font-size:.82rem}.tt-filters-bar{background:var(--soft);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.tt-filters-label{color:var(--muted);align-items:center;gap:5px;margin-right:4px;font-size:.78rem;font-weight:600;display:inline-flex}.tt-filter-group{align-items:center;gap:6px;display:flex}.tt-filter-label{color:var(--muted);white-space:nowrap;font-size:.75rem;font-weight:600}.tt-select-wrap{align-items:center;display:inline-flex;position:relative}.tt-select{appearance:none;border:1px solid var(--line);background:var(--panel);height:30px;color:var(--ink);cursor:pointer;border-radius:6px;padding:0 28px 0 10px;font-size:.8rem;font-weight:500;transition:border-color .15s}.tt-select:hover,.tt-select:focus{border-color:var(--primary-color);outline:none}.tt-select-chevron{pointer-events:none;color:var(--muted);position:absolute;right:8px}.tt-filter-fixed{color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:4px 10px;font-size:.8rem;font-weight:600}.tt-reset-btn{border:1px solid var(--line);background:var(--panel);height:30px;color:var(--muted);cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:0 12px;font-size:.78rem;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.tt-reset-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.tt-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.tt-summary-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.tt-summary-card--blue{background:#eff6ff;border-color:#bfdbfe}.tt-summary-card--overrun{background:#fef2f2;border-color:#fecaca}.tt-summary-card--active{background:#f0fdf4;border-color:#bbf7d0}.tt-summary-icon{width:34px;height:34px;color:var(--primary-color);background:#24b3e71f;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:inline-flex}.tt-summary-card--overrun .tt-summary-icon{color:#dc2626;background:#ef44441a}.tt-summary-card--active .tt-summary-icon{color:var(--success);background:#27ae7e1f}.tt-summary-value{color:var(--ink);font-size:1.15rem;font-weight:700;line-height:1.2}.tt-summary-label{color:var(--muted);margin-top:2px;font-size:.75rem;font-weight:600}.tt-summary-sub{color:var(--muted);margin-top:3px;font-size:.72rem}.tt-section{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.tt-section-header{border-bottom:1px solid var(--line);background:#fafcfd;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.tt-section-title{color:var(--ink);margin:0;font-size:.9rem;font-weight:700}.tt-section-count{color:var(--muted);font-size:.75rem;font-weight:500}.tt-running-badge{color:#15803d;background:#dcfce7;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.tt-running-badge--paused{color:#92400e;background:#fef3c7}.tt-active-timer-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.tt-active-timer-info{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.tt-active-user{flex-shrink:0;align-items:center;gap:8px;display:flex}.tt-active-user-name{color:var(--ink);font-size:.82rem;font-weight:600}.tt-active-task-info{flex-direction:column;gap:3px;min-width:0;display:flex}.tt-active-project{color:var(--muted);font-size:.75rem}.tt-active-subtask{color:var(--muted);font-size:.73rem;font-style:italic}.tt-active-timer-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.tt-active-clock{font-variant-numeric:tabular-nums;color:var(--ink);letter-spacing:.02em;font-size:1.35rem;font-weight:700}.tt-active-controls{align-items:center;gap:6px;display:flex}.tt-ctrl-btn{border:1px solid var(--line);background:var(--panel);height:30px;color:var(--ink);cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:0 12px;font-size:.78rem;font-weight:600;transition:border-color .15s,background .15s;display:inline-flex}.tt-ctrl-btn:hover{background:var(--soft);border-color:#94a3b8}.tt-ctrl-btn--primary{color:var(--primary-color);background:#eff6ff;border-color:#bfdbfe}.tt-ctrl-btn--primary:hover{border-color:var(--primary-color);background:#dbeafe}.tt-ctrl-btn--stop{color:#dc2626;background:#fef2f2;border-color:#fecaca}.tt-ctrl-btn--stop:hover{background:#fee2e2;border-color:#dc2626}.tt-avatar{background:var(--primary-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.7rem;font-weight:700;display:inline-flex}.tt-avatar--sm{width:26px;height:26px;font-size:.65rem}.tt-avatar--xs{width:20px;height:20px;font-size:.6rem}.tt-table-wrap{overflow-x:auto}.tt-table{border-collapse:collapse;width:100%;font-size:.82rem}.tt-th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);white-space:nowrap;background:#fafcfd;padding:9px 14px;font-size:.72rem;font-weight:700}.tt-th--num{text-align:right}.tt-th--progress{min-width:160px}.tt-tr{border-bottom:1px solid var(--line);transition:background .12s}.tt-tr:last-child{border-bottom:none}.tt-tr:hover{background:#f8fafc}.tt-tr--clickable{cursor:pointer}.tt-tr--clickable:hover .tt-task-title-cell span{color:var(--primary-color)}.tt-td{vertical-align:middle;color:var(--ink);padding:10px 14px}.tt-td--num{text-align:right}.tt-td--date{white-space:nowrap}.tt-proj-name{color:var(--ink);font-weight:600}.tt-time-val{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.tt-muted{color:var(--muted)}.tt-overrun-val{color:#dc2626;align-items:center;gap:4px;font-size:.78rem;font-weight:600;display:inline-flex}.tt-date-val{color:var(--ink);font-size:.8rem;font-weight:600;display:block}.tt-time-small{color:var(--muted);margin-top:2px;font-size:.72rem;display:block}.tt-task-title-cell{color:var(--ink);align-items:center;gap:5px;font-weight:500;display:flex}.tt-task-key{color:var(--muted);margin-top:2px;font-family:ui-monospace,Cascadia Mono,monospace;font-size:.72rem;display:block}.tt-task-link{font:inherit;color:var(--primary-color);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.82rem;font-weight:500;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .12s}.tt-task-link:hover{-webkit-text-decoration-color:var(--primary-color);text-decoration-color:var(--primary-color)}.tt-member-cell{align-items:center;gap:7px;font-weight:500;display:inline-flex}.tt-assignee-cell{align-items:center;gap:5px;font-size:.8rem;display:inline-flex}.tt-inline-warn{color:#f59e0b;flex-shrink:0}.tt-log-subtask{color:var(--muted);margin-top:2px;font-size:.72rem;display:block}.tt-progress-wrap{align-items:center;gap:8px;display:flex}.tt-progress-bar-track{background:#e5ebf0;border-radius:999px;flex:1;min-width:60px;height:6px;overflow:hidden}.tt-progress-bar-fill{background:var(--primary-color);border-radius:999px;height:100%;transition:width .3s}.tt-progress-bar-fill.tt-progress-overrun{background:#ef4444}.tt-progress-label{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:.73rem;font-weight:600}.tt-progress-label--overrun{color:#dc2626}.tt-source-badge{border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.tt-source-timer{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.tt-source-manual{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.tt-source-other{color:#7c3aed;background:#fdf4ff;border:1px solid #e9d5ff}.tt-status-pill{white-space:nowrap;background:var(--soft);color:var(--muted);border:1px solid var(--line);border-radius:999px;align-items:center;padding:3px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.tt-status--inprogress{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.tt-status--review{color:#7c3aed;background:#fdf4ff;border-color:#e9d5ff}.tt-status--ready{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.tt-status--backlog{color:var(--muted);border-color:var(--line);background:#f8fafc}.tt-status--done{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.tt-status--blocked{color:#dc2626;background:#fef2f2;border-color:#fecaca}.tt-empty-panel{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:36px 24px;display:flex}.tt-empty-icon{color:#d1d5db;margin-bottom:4px}.tt-empty-title{color:var(--muted);margin:0;font-size:.88rem;font-weight:600}.tt-empty-sub{color:#94a3b8;max-width:360px;margin:0;font-size:.78rem}@media (max-width:1100px){.tt-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.tt-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tt-active-timer-card{flex-direction:column;align-items:flex-start}.tt-active-timer-right{justify-content:space-between;width:100%}.tt-filters-bar{gap:8px}}
