:root{--brand:#2d6a4f;--accent:#6c5ce7;--brand-dark:color-mix(in srgb,var(--brand),#000 18%);--brand-soft:color-mix(in srgb,var(--brand),#fff 89%);--ink:#15251a;--text:#29362d;--muted:#6b786f;--line:#e3e9e4;--panel:#fff;--canvas:#f6f8f6;--danger:#c83d45;--warning:#c87818;--blue:#3876c3;--radius:12px;--shadow:0 8px 28px rgba(27,45,32,.07);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--canvas);font-synthesis:none}
*{box-sizing:border-box}html{min-height:100%;background:var(--canvas)}body{margin:0;min-height:100vh;font-size:14px;line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}form{margin:0}h1,h2,h3,p{margin-top:0}h1{margin-bottom:5px;font-size:22px;line-height:1.2;color:var(--ink)}h2{margin-bottom:4px;font-size:15px;color:var(--ink)}h3{color:var(--ink)}small,.muted{color:var(--muted)}input,select,textarea{width:100%;border:1px solid #dbe3dc;border-radius:8px;background:#fff;padding:10px 11px;outline:none;transition:border-color .18s,box-shadow .18s}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}textarea{resize:vertical}.full{width:100%}.span-2,.span-all{grid-column:1/-1}.danger{color:var(--danger)!important}.hint{font-weight:400;color:var(--muted)}
.app-shell{min-height:100vh;padding-left:260px}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;z-index:40;display:flex;flex-direction:column;background:#fbfcfb;border-right:1px solid var(--line);transition:width .2s,transform .2s}.sidebar-brand{height:58px;display:flex;align-items:center;gap:7px;padding:0 14px;border-bottom:1px solid var(--line)}.sidebar-toggle,.mobile-menu,.logout-button{border:0;background:transparent;border-radius:7px;padding:8px;color:#657269}.sidebar-toggle:hover,.mobile-menu:hover,.logout-button:hover{background:#edf2ee}.brand-lockup{display:flex;align-items:center;gap:9px;min-width:0}.brand-lockup strong{font-size:16px;color:var(--ink);white-space:nowrap}.brand-lockup img{width:29px;height:29px;object-fit:contain}.brand-mark{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:var(--brand);color:#fff;font-weight:800}.brand-mark.large{width:36px;height:36px;border-radius:10px}.org-card{display:flex;align-items:center;gap:10px;margin:10px 12px 4px;padding:9px 10px;border-radius:9px;background:#f0f4f1}.org-card div{min-width:0;display:flex;flex-direction:column}.org-card strong,.org-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-card strong{font-size:12px}.org-card small{font-size:10px}.org-home{color:var(--brand)}.sidebar-scroll{flex:1;overflow:auto;padding:8px}.nav-label{margin:10px 10px 5px;font-size:9px;letter-spacing:.12em;color:#8b978f;font-weight:800}.primary-nav a,.tree-all,.project-link,.add-structure{display:flex;align-items:center;gap:10px;min-height:36px;padding:7px 10px;border-radius:7px;color:#556158;font-size:12px}.primary-nav a i{width:17px;text-align:center;font-style:normal;font-size:15px}.primary-nav a:hover,.primary-nav a.active,.tree-all:hover,.project-link:hover{background:var(--brand-soft);color:var(--brand-dark)}.primary-nav a.active{font-weight:700}.nav-divider{height:1px;background:var(--line);margin:10px 8px}.tree-nav details{margin:1px 0}.tree-nav summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:33px;padding:6px 10px;border-radius:7px;cursor:pointer;font-size:11px;color:#546058}.tree-nav summary::-webkit-details-marker{display:none}.tree-nav summary>strong,.tree-nav summary>span:first-of-type{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-nav summary em,.project-link em{font-style:normal;font-size:9px;padding:1px 5px;border-radius:9px;background:#ebefec}.client-node{margin-left:11px!important}.project-link{margin-left:28px;min-height:29px;padding-top:4px;padding-bottom:4px;font-size:11px}.project-link i,.tree-dot,.color-dot{display:inline-block;flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:#aab4ad}.project-link span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-dot.neutral{background:#9ba69e}.add-structure{margin-top:6px;color:var(--brand);font-weight:700}.sidebar-footer{display:flex;align-items:center;gap:6px;padding:10px 12px;border-top:1px solid var(--line)}.user-summary{flex:1;min-width:0;display:flex;align-items:center;gap:9px}.user-summary>span:last-child{display:flex;flex-direction:column;min-width:0}.user-summary strong,.user-summary small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-summary strong{font-size:11px}.user-summary small{font-size:9px}.avatar{display:inline-grid;place-items:center;width:31px;height:31px;flex:0 0 auto;border-radius:50%;background:var(--brand-soft);color:var(--brand-dark);font-weight:800;font-style:normal}.avatar.small{width:24px;height:24px;font-size:10px}
.app-shell.sidebar-collapsed{padding-left:64px}.app-shell.sidebar-collapsed .sidebar{width:64px}.app-shell.sidebar-collapsed .brand-lockup strong,.app-shell.sidebar-collapsed .org-card div,.app-shell.sidebar-collapsed .nav-label,.app-shell.sidebar-collapsed .primary-nav span,.app-shell.sidebar-collapsed .tree-nav,.app-shell.sidebar-collapsed .add-structure,.app-shell.sidebar-collapsed .user-summary>span:last-child{display:none}.app-shell.sidebar-collapsed .org-card{justify-content:center}.app-shell.sidebar-collapsed .primary-nav a{justify-content:center}.app-shell.sidebar-collapsed .sidebar-footer{justify-content:center}.app-shell.sidebar-collapsed .logout-button{display:none}
.main{min-width:0}.topbar{position:sticky;top:0;z-index:30;height:49px;display:flex;align-items:center;gap:14px;padding:0 22px;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;align-items:center;gap:8px;flex:1;min-width:0;font-size:11px;color:var(--muted)}.breadcrumbs strong{color:#49564d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-search{display:flex;align-items:center;gap:6px;width:220px;height:32px;padding:0 9px;border:1px solid var(--line);border-radius:7px;background:#f8faf8}.quick-search input{border:0;padding:0;background:transparent;box-shadow:none}.quick-search kbd{font-size:9px;color:#89948c}.mobile-menu{display:none}.content{padding:24px 26px 84px;max-width:1560px;margin:0 auto}.mobile-bottom{display:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:9px 15px;border:1px solid var(--brand);border-radius:8px;background:var(--brand);color:#fff;font-weight:750;font-size:12px;transition:transform .15s,filter .15s}.button:hover{filter:brightness(.93)}.button:active{transform:translateY(1px)}.button.secondary{background:#fff;color:var(--brand-dark);border-color:#cddbd0}.button.ghost{background:transparent;color:#637068;border-color:transparent}.button.compact{min-height:32px;padding:6px 10px;font-size:11px}.topbar-cta{min-height:32px;padding:6px 11px}.icon-button{display:inline-grid;place-items:center;width:29px;height:29px;border:0;border-radius:6px;background:transparent;color:#68746c}.icon-button:hover{background:#edf2ee}.text-link{border:0;background:none;padding:0;color:var(--brand);font-weight:700;font-size:11px}.actions,.form-actions,.danger-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.form-actions{justify-content:flex-end}
.page-heading{margin-bottom:19px}.page-heading p{margin-bottom:0;color:var(--muted)}.page-heading.split{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.eyebrow{font-size:9px;letter-spacing:.15em;font-weight:800;color:var(--brand)!important;margin-bottom:6px!important}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 1px 2px rgba(20,40,26,.02)}.panel.flush{padding:0;overflow:hidden}.panel-head,.panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:15px}.panel-head p,.panel-title p{margin:0;font-size:11px;color:var(--muted)}.panel-title{align-items:center;margin:0;padding:13px 16px;border-bottom:1px solid var(--line)}.panel-title h2{margin:0}.empty{display:flex;min-height:220px;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:28px;color:var(--muted)}.empty>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-size:20px;margin-bottom:10px}.empty h3{margin-bottom:4px}.empty p{margin-bottom:14px}.empty.compact{min-height:250px}.empty.mini{min-height:95px;padding:15px}.empty.mini>span{width:28px;height:28px;font-size:13px;margin-bottom:5px}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.stat-card{display:flex;align-items:center;justify-content:space-between;min-height:104px;padding:17px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.stat-card:hover{border-color:#bdcbbf;box-shadow:var(--shadow)}.stat-card div{display:flex;flex-direction:column}.stat-card span{font-size:9px;letter-spacing:.1em;font-weight:800;color:#7b877f}.stat-card strong{font-size:28px;line-height:1.15;color:var(--ink)}.stat-card small{font-size:10px}.stat-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:9px;font-style:normal;background:var(--brand-soft);color:var(--brand)}.stat-icon.red{background:#fdecec;color:var(--danger)}.stat-icon.blue{background:#eaf2fc;color:var(--blue)}.stat-icon.mint{background:#e8f7f0;color:#2b8b61}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:16px}.dashboard-side{display:grid;gap:16px}.client-summary-row,.compact-task{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #edf1ee}.client-summary-row:last-child,.compact-task:last-child{border-bottom:0}.client-summary-row:hover,.compact-task:hover{background:#f8faf8}.client-summary-row>span{display:flex;align-items:center;gap:8px;width:45%}.client-summary-row i{height:4px;flex:1;border-radius:4px;background:linear-gradient(to right,var(--brand) 0 var(--progress),#e9eeea var(--progress))}.client-summary-row em{font-style:normal;font-weight:800;font-size:11px}.compact-task{align-items:flex-start}.compact-task strong,.compact-task small{display:block}.compact-task b{color:var(--danger)}
.task-filters{display:grid;grid-template-columns:repeat(4,minmax(135px,1fr)) minmax(190px,1.4fr) auto auto;align-items:center;gap:7px;margin-bottom:13px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:10px}.task-filters select,.task-filters input{padding:8px;font-size:11px}.filter-search{position:relative}.filter-search span{position:absolute;left:9px;top:8px;color:var(--muted)}.filter-search input{padding-left:26px}.show-done{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:10px;color:var(--muted)}.show-done input,.checkbox input,.switch input{width:auto}.view-switch{display:flex;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}.view-switch a{display:grid;place-items:center;width:30px;height:27px;border-radius:5px}.view-switch a.active{background:var(--brand-soft);color:var(--brand)}.task-groups{display:grid;gap:10px}.task-group-head{display:flex;align-items:center;gap:8px;padding:10px 13px;border-bottom:1px solid var(--line)}.task-group-head button{border:0;background:transparent}.task-group-head em{flex:1;font-size:10px;color:var(--muted);font-style:normal}.task-group-head a{font-size:10px;color:var(--brand);font-weight:700}.group-badge{font-size:10px;font-weight:800}.group-badge.danger{color:var(--danger)}.task-table-head,.task-row{display:grid;grid-template-columns:18px 5px minmax(210px,2.4fr) minmax(110px,.8fr) minmax(100px,.8fr) minmax(120px,1fr) 90px 55px;align-items:center;gap:9px}.task-table-head{min-height:30px;padding:0 12px;background:#f8faf8;border-bottom:1px solid var(--line);font-size:8px;color:#849087}.task-row{min-height:50px;padding:7px 12px;border-bottom:1px solid #edf1ee}.task-row:last-child{border-bottom:0}.task-row:hover{background:#fafcfb}.drag-handle{color:#a8b1aa;cursor:grab}.priority-dot{width:5px;height:30px;border-radius:5px;background:#cbd4cd}.priority-dot.high{background:#eb9b3f}.priority-dot.urgent{background:#dc4a52}.priority-dot.low{background:#8eafa0}.task-main{display:flex;min-width:0;flex-direction:column}.task-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.task-main small{font-size:9px}.status-pill,.priority-label,.category-pill{display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;padding:3px 7px;border-radius:12px;background:#eef2ef;color:#637068;font-size:9px;font-weight:750;white-space:nowrap}.status-pill.in_progress{background:#eaf2fc;color:#326ead}.status-pill.review{background:#f1ebfb;color:#7451ad}.status-pill.blocked,.priority-label.urgent{background:#fdebed;color:#b7353d}.status-pill.done{background:#e8f6ee;color:#2b8159}.priority-label.high{background:#fff1df;color:#a96113}.priority-label.low{background:#edf4f0;color:#658476}.category-pill i,.category-cell i{width:6px;height:6px;border-radius:50%;display:inline-block}.category-cell,.assignee-cell,.date{font-size:10px;color:#657169}.date.overdue{color:var(--danger);font-weight:800}.row-actions{display:flex;gap:3px}.row-actions form{display:inline}.row-actions a,.row-actions button{border:0;background:none;padding:5px;color:#7c8880}.task-group.collapsed [data-collapse-body]{display:none}
.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:10px;overflow-x:auto;padding-bottom:14px}.kanban-column{min-height:420px;border:1px solid var(--line);border-radius:10px;background:#f2f5f2}.kanban-column>header{display:flex;align-items:center;gap:8px;padding:11px 12px}.kanban-column>header strong{flex:1;font-size:11px}.kanban-column>header em{font-style:normal;font-size:9px;background:#e4e9e5;padding:2px 6px;border-radius:10px}.column-dot{width:8px;height:8px;border-radius:50%;background:var(--brand)}.column-dot.todo{background:#8c9890}.column-dot.in_progress{background:#4b83c8}.column-dot.review{background:#8562bb}.column-dot.blocked{background:#cc434b}.column-dot.done{background:#3c9269}.kanban-cards{display:grid;gap:8px;padding:0 8px}.kanban-card{background:#fff;border:1px solid #dde5de;border-radius:9px;box-shadow:0 1px 2px rgba(28,43,31,.04)}.kanban-card.dragging{opacity:.5}.kanban-card a{display:block;padding:11px}.project-tag{display:inline-flex;align-items:center;max-width:100%;font-size:9px;color:var(--muted)}.project-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--project-color);margin-right:5px}.kanban-card h3{font-size:12px;margin:8px 0}.card-badges{display:flex;flex-wrap:wrap;gap:5px}.card-badges>span:first-child{font-size:8px;padding:2px 6px;border-radius:9px;background:color-mix(in srgb,var(--badge-color),#fff 88%);color:var(--badge-color)}.kanban-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.avatars{display:flex}.avatars i{display:grid;place-items:center;width:21px;height:21px;margin-left:-5px;border:2px solid #fff;border-radius:50%;background:var(--brand-soft);font-size:8px;font-style:normal;color:var(--brand)}.column-add{display:block;padding:10px 12px;color:var(--muted);font-size:10px}.column-add:hover{color:var(--brand)}
.form-page,.narrow-page{max-width:900px;margin:0 auto}.narrow-page{max-width:620px}.form-grid,.task-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.task-form>label,.form-grid>label,.task-properties label,#recurrence label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:750;color:#536058}.task-form fieldset{border:1px solid var(--line);border-radius:8px}.task-form legend{font-size:10px;font-weight:750}.people-select{display:flex;flex-wrap:wrap;gap:7px}.people-select label{display:flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;font-size:10px}.people-select input{width:auto}.markdown-toolbar{display:flex;align-items:center;gap:3px;padding:5px;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;background:#f8faf8}.markdown-toolbar button{border:0;background:transparent;border-radius:4px;padding:4px 8px}.markdown-toolbar span{margin-left:auto;color:var(--muted);font-weight:400}.description-field textarea{border-radius:0 0 8px 8px}.back-link{display:inline-block;margin-bottom:8px;color:var(--muted);font-size:10px}
.detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.detail-context{display:flex;align-items:center;gap:7px;margin-bottom:5px;color:var(--muted);font-size:10px}.detail-context span:first-child:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px;background:var(--project-color)}.detail-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.detail-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:14px}.detail-main,.detail-side{display:grid;align-content:start;gap:14px}.prose{white-space:pre-wrap;color:#435047}.blocked-note{margin-top:14px;padding:12px;border-left:3px solid var(--danger);background:#fff4f4}.blocked-note p{margin:4px 0 0}.progress-ring{font-size:11px;font-weight:800;color:var(--brand)}.check-row{display:flex;align-items:center;gap:6px;padding:7px 0;border-bottom:1px solid #edf1ee}.check-item{display:grid;place-items:center;width:25px;height:25px;border:1px solid #cdd7cf;border-radius:6px;background:#fff;padding:0}.check-item.done{background:var(--brand);color:#fff}.subtask-edit{display:grid;grid-template-columns:minmax(130px,1fr) 130px 125px 30px;gap:5px;flex:1}.subtask-edit input,.subtask-edit select{padding:6px;font-size:10px}.inline-form{display:flex;align-items:center;gap:7px;margin-top:12px}.inline-form input:not([type=color]){flex:1}.comments{display:grid;gap:12px}.comments article{display:flex;align-items:flex-start;gap:9px}.comment-body{flex:1;display:flex;flex-wrap:wrap;gap:4px}.comment-body header{width:100%;display:flex;justify-content:space-between;font-size:10px}.comment-body time{color:var(--muted)}.comment-edit{flex:1}.comment-edit textarea{border-color:transparent;padding:6px 0;min-height:50px}.comment-edit textarea:focus{padding:6px;border-color:var(--line)}.comment-form{display:flex;align-items:flex-end;gap:8px;margin-top:14px}.task-properties{display:grid;gap:13px}.task-properties form{display:grid;gap:7px}.task-properties>div{display:flex;flex-direction:column;gap:3px}.task-properties small{font-size:8px;font-weight:800;letter-spacing:.08em}.task-properties strong{display:flex;align-items:center;gap:5px;font-size:11px}.people-list{display:flex;gap:5px;flex-wrap:wrap}.people-list>span{display:flex;align-items:center;gap:5px;font-size:10px}.file-list{display:grid;gap:6px}.file-row{display:flex;align-items:center;gap:4px}.file-row>a{display:flex;align-items:center;gap:8px;flex:1;padding:7px;border-radius:7px;background:#f8faf8}.file-row a div{display:flex;flex-direction:column}.file-row a strong{max-width:190px;overflow:hidden;text-overflow:ellipsis;font-size:10px}.file-row a small{font-size:8px}.drop-zone{display:flex!important;align-items:center;justify-content:center;min-height:65px;border:1px dashed #bdcbbf;border-radius:8px;background:#fafcfb;color:var(--muted)!important;font-weight:500!important;text-align:center}.drop-zone input{font-size:9px;border:0;background:transparent}.upload-form,#recurrence form{display:grid;gap:8px;margin-top:10px}.timeline{display:grid;gap:10px}.timeline>div{display:flex;gap:8px}.timeline>div>span{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--brand)}.timeline p{margin:0;font-size:9px}.timeline small{display:block}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.project-card{position:relative;overflow:hidden;padding:16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.project-accent{position:absolute;inset:0 auto 0 0;width:4px;background:var(--project-color)}.project-card>header,.project-card>footer{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:var(--muted)}.project-card h2{font-size:16px;margin:12px 0 6px}.project-card>p{min-height:42px;color:var(--muted);font-size:10px}.project-card>footer{margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}.project-card>footer a{color:var(--brand);font-weight:750}.project-people{display:flex}.project-people .avatar{margin-right:-5px;border:2px solid #fff}.project-manage{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.project-manage summary,.create-panel summary{cursor:pointer;color:var(--brand);font-size:10px;font-weight:750}.compact-grid{gap:7px;margin-top:10px}.compact-grid input,.compact-grid select,.compact-grid textarea{padding:7px;font-size:10px}.member-picker{display:grid;gap:8px;margin-top:12px}.member-picker>div{display:flex;flex-wrap:wrap;gap:6px}.member-picker label{font-size:9px}.member-picker input{width:auto}dialog{width:min(620px,calc(100vw - 30px));border:0;border-radius:14px;padding:0;box-shadow:0 24px 70px rgba(0,0,0,.24)}dialog::backdrop{background:rgba(11,24,15,.46);backdrop-filter:blur(2px)}.modal-card{padding:22px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between}.modal-head h2{font-size:19px}
.settings-tabs{display:flex;gap:3px;overflow:auto;margin-bottom:14px;padding:4px;background:#edf2ee;border-radius:9px}.settings-tabs a{padding:8px 12px;border-radius:6px;white-space:nowrap;color:#67736b;font-size:10px;font-weight:750}.settings-tabs a.active{background:#fff;color:var(--brand);box-shadow:0 1px 4px rgba(20,40,25,.08)}.settings-panel{max-width:1050px}.entity-list,.client-settings{display:grid;gap:7px}.entity-row{display:grid;grid-template-columns:auto auto minmax(180px,1fr) minmax(110px,.6fr) auto auto;align-items:center;gap:7px;padding:8px;border:1px solid var(--line);border-radius:8px}.entity-row input,.entity-row select{padding:7px;font-size:10px}.entity-row input[type=color],.create-strip input[type=color]{width:32px;height:32px;padding:2px}.create-strip{margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}.client-config{border:1px solid var(--line);border-radius:10px;padding:10px}.client-config>.entity-row{border:0;padding:0;grid-template-columns:auto minmax(170px,1fr) minmax(150px,.7fr) auto}.stage-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:11px 0;padding:9px;background:#f8faf8;border-radius:8px}.stage-list>strong{font-size:9px;letter-spacing:.08em}.stage-list>span{display:flex;align-items:center;gap:5px;padding:4px 6px;border-radius:10px;background:#fff;border:1px solid var(--line);font-size:9px}.stage-list>span i,.simple-list a>i{width:7px;height:7px;border-radius:50%}.stage-list>span form{display:inline}.stage-list em{font-size:9px;color:var(--muted)}.stage-list .inline-form{margin:0 0 0 auto}.stage-list input{padding:5px;font-size:9px}.simple-list{display:grid}.simple-list a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:10px;border-bottom:1px solid var(--line)}.simple-list small{font-size:9px}.users-table{display:grid}.users-head,.user-row{display:grid;grid-template-columns:1.2fr 1.5fr .7fr .7fr auto;align-items:center;gap:10px;padding:9px;border-bottom:1px solid var(--line)}.users-head{font-size:8px;color:var(--muted);background:#f8faf8}.user-row>span:first-of-type{display:flex;align-items:center;gap:7px}.user-row{font-size:10px}.user-row select{padding:6px;font-size:9px}.switch{display:flex;align-items:center;gap:5px;font-size:9px}.switch>span{position:relative;width:28px;height:16px;border-radius:10px;background:#c9d2cb}.switch>span:after{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:left .15s}.switch input{display:none}.switch input:checked+span{background:var(--brand)}.switch input:checked+span:after{left:14px}.create-panel.inner{margin-top:15px}.create-panel.inner form{margin-top:12px}.token-list>div{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid var(--line)}.token-list>div>span{flex:1;display:flex;flex-direction:column}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(330px,34%) 1fr;background:#fbf8f1}.login-manifesto{display:flex;flex-direction:column;padding:38px 44px;background:#f2f5ee;background-image:linear-gradient(rgba(45,106,79,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(45,106,79,.045) 1px,transparent 1px);background-size:28px 28px;border-right:1px solid #dfe7df}.login-brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:17px}.manifesto-copy{margin:auto 0 35px}.environment-pill{display:inline-block;margin-bottom:16px;padding:5px 9px;border:1px solid #cad9cc;border-radius:14px;color:var(--brand);font-size:8px;font-weight:850;letter-spacing:.14em}.manifesto-copy h1{font-size:31px;letter-spacing:-.025em}.manifesto-copy p{max-width:320px;color:var(--muted)}.manifesto-points{display:grid;gap:11px;margin-bottom:auto}.manifesto-points span{display:flex;align-items:center;gap:9px;font-size:11px}.manifesto-points i{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#fff;color:var(--brand);font-style:normal}.login-manifesto>small{margin-top:45px;font-size:9px}.login-form-side{display:grid;place-items:center;padding:35px}.login-form{width:min(365px,100%)}.login-form header{margin-bottom:24px}.login-form h2{font-size:22px}.login-form header p{color:var(--muted)}.login-form>label{display:grid;gap:6px;margin-bottom:13px;font-size:10px;font-weight:750}.input-with-icon{position:relative}.input-with-icon span{position:absolute;left:11px;top:11px;color:#869189}.input-with-icon input{padding-left:34px;min-height:43px}.remember{display:flex!important;grid-template-columns:auto 1fr;align-items:center}.remember input{width:auto}.login-submit{min-height:44px;margin-top:5px;justify-content:space-between}.restricted-note{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:17px;color:#7b867f;font-size:9px}.alert{padding:10px 12px;border-radius:8px;margin-bottom:12px}.alert.error{background:#fdeced;color:#ac3039}
.toast{position:fixed;right:20px;bottom:20px;z-index:100;padding:11px 14px;border-radius:8px;background:#173d2a;color:#fff;box-shadow:var(--shadow);font-size:11px}.toast[hidden]{display:none}
@media(max-width:1100px){.task-filters{grid-template-columns:repeat(3,1fr)}.project-grid{grid-template-columns:repeat(2,1fr)}.task-table-head,.task-row{grid-template-columns:14px 5px minmax(180px,2fr) 110px 100px 80px 45px}.task-table-head>:nth-child(6),.task-row>:nth-child(6){display:none}.detail-layout{grid-template-columns:1fr}.detail-side{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:760px){body{font-size:13px}.app-shell{padding-left:0}.sidebar{transform:translateX(-102%);width:min(86vw,310px)}.sidebar.open{transform:translateX(0)}.sidebar.open+.main{}.sidebar-overlay{display:none;position:fixed;inset:0;z-index:35;background:rgba(10,24,14,.42)}.app-shell.menu-open .sidebar-overlay{display:block}.app-shell.sidebar-collapsed{padding-left:0}.app-shell.sidebar-collapsed .sidebar{width:min(86vw,310px)}.app-shell.sidebar-collapsed .brand-lockup strong,.app-shell.sidebar-collapsed .org-card div,.app-shell.sidebar-collapsed .nav-label,.app-shell.sidebar-collapsed .primary-nav span,.app-shell.sidebar-collapsed .tree-nav,.app-shell.sidebar-collapsed .add-structure,.app-shell.sidebar-collapsed .user-summary>span:last-child{display:initial}.mobile-menu{display:block}.sidebar-toggle{display:none}.topbar{padding:0 12px}.quick-search{display:none}.topbar-cta{font-size:0;padding:6px 9px}.topbar-cta:first-letter{font-size:15px}.content{padding:18px 13px 82px}.mobile-bottom{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);inset:auto 0 0;z-index:32;height:60px;background:#fff;border-top:1px solid var(--line)}.mobile-bottom a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;font-size:8px;color:#6d7971}.mobile-bottom i{font-style:normal;font-size:16px}.page-heading.split,.detail-head{flex-direction:column}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card{min-height:90px;padding:12px}.stat-card strong{font-size:23px}.task-filters{display:flex;overflow-x:auto}.task-filters>*{min-width:145px}.show-done{min-width:120px}.task-table-head{display:none}.task-row{grid-template-columns:10px 4px 1fr auto;gap:7px;padding:10px}.task-row>.status-pill,.task-row>.category-cell,.task-row>.assignee-cell,.task-row>.date{display:none}.row-actions{display:flex}.kanban{grid-auto-columns:82vw}.form-grid,.task-form{grid-template-columns:1fr}.span-2{grid-column:auto}.detail-side{grid-template-columns:1fr}.subtask-edit{grid-template-columns:1fr 1fr}.subtask-edit input:first-of-type{grid-column:1/-1}.project-grid{grid-template-columns:1fr}.settings-tabs{margin-left:-13px;margin-right:-13px;border-radius:0}.entity-row,.client-config>.entity-row{grid-template-columns:auto 1fr}.entity-row>*{min-width:0}.users-head{display:none}.user-row{grid-template-columns:1fr 1fr}.login-shell{grid-template-columns:1fr;background:#fbf8f1}.login-manifesto{min-height:auto;padding:25px;background:transparent;border:0}.manifesto-copy,.manifesto-points,.login-manifesto>small{display:none}.login-form-side{align-items:start;padding:18px 25px 40px}.login-form{margin:auto}.dashboard-heading .button{display:none}}
@media(max-width:430px){.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card small{display:none}.client-summary-row>span{width:38%}.comment-form{flex-direction:column;align-items:stretch}.detail-head .actions{width:100%}.detail-head .actions>*{flex:1}.detail-head .actions .button{width:100%}.stage-list .inline-form{margin-left:0;width:100%}}
@media(max-width:760px){.login-shell{position:relative;display:block}.login-manifesto{position:absolute;z-index:2;inset:0 0 auto 0}.login-form-side{min-height:100vh;padding-top:125px}.login-form{margin:0 auto}.topbar-cta{width:34px}.topbar-cta::after{content:"+";font-size:18px}}

/* API 0.3.0 */
.api-token-form{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(190px,.75fr) auto;align-items:center;gap:9px}.api-token-form .button{white-space:nowrap}@media(max-width:760px){.api-token-form{grid-template-columns:1fr}.api-token-form .button{width:100%}}

/* Login 0.2.1 — composição corporativa e tipografia ampliada */
.login-shell{--login-dark:color-mix(in srgb,var(--brand),#10231b 72%);min-height:100vh;display:grid;grid-template-columns:minmax(580px,1.16fr) minmax(480px,.84fr);background:#f7f6f1}
.login-showcase{position:relative;isolation:isolate;display:flex;min-height:100vh;overflow:hidden;flex-direction:column;padding:46px clamp(48px,5vw,82px) 38px;background:var(--login-dark);color:#fff}
.login-showcase:after{content:"";position:absolute;z-index:-1;right:-160px;bottom:-230px;width:520px;height:520px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.018)}
.login-brand{display:inline-flex;align-items:center;align-self:flex-start;gap:12px;color:#fff;font-size:20px;letter-spacing:-.02em}
.login-brand .brand-mark{background:#fff;color:var(--login-dark)}
.login-logo-frame{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;background:#fff}
.login-logo-frame img{display:block;max-width:30px;max-height:30px;object-fit:contain}
.showcase-copy{max-width:720px;margin:clamp(70px,10vh,120px) 0 42px}
.showcase-kicker{margin:0 0 20px;color:rgba(255,255,255,.62);font-size:12px;font-weight:800;letter-spacing:.16em}
.showcase-copy h1{margin:0;color:#fff;font-size:clamp(46px,4.2vw,68px);font-weight:720;line-height:1.03;letter-spacing:-.052em}
.showcase-copy h1 span{display:block}
.showcase-description{max-width:560px;margin:24px 0 0;color:rgba(255,255,255,.7);font-size:19px;line-height:1.55}
.workspace-preview{width:min(760px,100%);overflow:hidden;margin-top:auto;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:#f8faf8;color:#1c2a21;box-shadow:0 28px 70px rgba(4,17,10,.24)}
.workspace-preview-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #dfe6e0;background:#fff}
.workspace-preview-head>div{display:grid;gap:2px}.workspace-preview-head strong{font-size:16px}
.workspace-preview-label,.workspace-preview-date{color:#738078;font-size:9px;font-weight:850;letter-spacing:.13em}
.workspace-preview-date{padding:6px 8px;border:1px solid #dbe3dd;border-radius:6px}
.workspace-preview-body{display:grid;grid-template-columns:158px 1fr;min-height:190px}
.workspace-preview-nav{display:flex;flex-direction:column;gap:5px;padding:16px 10px;border-right:1px solid #e3e9e4;background:#f1f4f1}
.workspace-preview-nav span{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:7px;color:#758078;font-size:11px}
.workspace-preview-nav span.preview-nav-active{background:#fff;color:var(--brand-dark);font-weight:800;box-shadow:0 1px 2px rgba(12,30,18,.06)}
.workspace-preview-nav i{width:7px;height:7px;border-radius:2px;background:#aab5ad}.workspace-preview-nav .preview-nav-active i{background:var(--brand)}
.workspace-preview-list{display:grid;align-content:start;padding:9px 17px 14px}
.preview-task{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:54px;border-bottom:1px solid #e5ebe6}.preview-task:last-child{border-bottom:0}
.preview-task div{display:grid;gap:2px}.preview-task strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.preview-task small{color:#7b867f;font-size:9px}.preview-task em{color:#778279;font-size:8px;font-style:normal;font-weight:850;letter-spacing:.08em}
.preview-status{width:7px;height:28px;border-radius:6px;background:#7493ae}.preview-status.review{background:#d09b54}.preview-status.done{background:#65a381}
.login-showcase-footer{display:flex;align-items:center;gap:12px;margin-top:28px;color:rgba(255,255,255,.48);font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.login-showcase-footer i{width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.28)}
.login-form-side{position:relative;display:grid;min-height:100vh;place-items:center;padding:64px clamp(48px,6vw,100px);background:#f7f6f1}
.login-form{width:min(440px,100%)}.login-form header{margin-bottom:36px}
.login-eyebrow{margin:0 0 12px!important;color:var(--brand)!important;font-size:11px!important;font-weight:850;letter-spacing:.15em}
.login-form h2{margin-bottom:10px;font-size:34px;line-height:1.12;letter-spacing:-.035em}.login-form header>p:last-child{margin:0;color:var(--muted);font-size:16px}
.login-form>label{display:grid;gap:9px;margin-bottom:20px;color:#344239;font-size:14px;font-weight:750}
.input-with-icon{position:relative}.input-with-icon svg{position:absolute;z-index:1;left:17px;top:18px;width:19px;height:19px;fill:none;stroke:#78847c;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.input-with-icon input{min-height:56px;padding:14px 16px 14px 50px;border-color:#d3dbd5;border-radius:10px;background:#fff;font-size:15px}.input-with-icon input::placeholder{color:#9aa39d}
.remember{display:flex!important;align-items:center;gap:10px;margin:0 0 24px!important;color:#56635b!important;font-size:13px!important;font-weight:600!important}.remember input{width:18px;height:18px;margin:0;accent-color:var(--brand)}
.login-submit{min-height:54px;margin-top:0;padding:14px 18px;border-radius:10px;font-size:15px;justify-content:space-between}.login-submit>span:last-child{font-size:20px;font-weight:400}
.restricted-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:22px;color:#7c877f;font-size:11px}.restricted-note svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6}
.login-copyright{position:absolute;right:0;bottom:28px;left:0;margin:0;color:#8b948e;font-size:10px;text-align:center}.alert{padding:12px 14px;border-radius:9px;margin-bottom:18px;font-size:13px}.alert.error{background:#fdeced;color:#ac3039}

@media(max-width:1000px){.login-shell{grid-template-columns:minmax(430px,.9fr) minmax(430px,1.1fr)}.login-showcase{padding:38px}.showcase-copy h1{font-size:46px}.workspace-preview-body{grid-template-columns:125px 1fr}}
@media(max-width:760px){.login-shell{position:static;display:block;min-height:100vh;background:#f7f6f1}.login-showcase{position:relative;min-height:238px;padding:27px 24px 32px}.login-showcase:after{right:-210px;bottom:-350px}.login-brand{font-size:18px}.login-logo-frame,.login-brand .brand-mark.large{width:38px;height:38px}.showcase-copy{margin:42px 0 0}.showcase-kicker{margin-bottom:11px;font-size:9px}.showcase-copy h1{font-size:30px;line-height:1.08;letter-spacing:-.04em}.showcase-description{margin-top:10px;font-size:14px}.workspace-preview,.login-showcase-footer{display:none}.login-form-side{min-height:auto;place-items:start stretch;padding:38px 24px 72px}.login-form{margin:0 auto}.login-form header{margin-bottom:30px}.login-form h2{font-size:30px}.login-form header>p:last-child{font-size:15px}.login-form>label{font-size:13px}.input-with-icon input{min-height:54px}.login-copyright{bottom:21px}}
@media(prefers-reduced-motion:reduce){.login-submit,.input-with-icon input{transition:none}}

/* Login 0.2.2 — autenticação operacional, sem composição promocional */
.auth-page{min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;padding:32px 40px 24px;border-top:4px solid var(--brand);background:#f5f5f2;color:#202923;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif}
.auth-brand a{display:inline-flex;align-items:center;gap:11px;font-size:18px;letter-spacing:-.02em}.auth-brand strong{color:#202923}
.auth-monogram,.auth-logo{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;background:var(--brand);color:#fff;font-size:16px;font-weight:750}
.auth-logo{background:#fff;border:1px solid #d9ddd9}.auth-logo img{display:block;max-width:28px;max-height:28px;object-fit:contain}
.auth-content{display:grid;place-items:center;padding:64px 24px 92px}.auth-form{width:min(440px,100%)}
.auth-form>header{margin-bottom:34px}.auth-form h1{margin:0 0 10px;color:#18211b;font-size:36px;font-weight:690;line-height:1.12;letter-spacing:-.04em}.auth-form>header p{margin:0;color:#667069;font-size:16px;line-height:1.5}
.auth-field{display:grid;gap:9px;margin-bottom:21px;color:#313b34;font-size:14px;font-weight:650}.auth-field input{min-height:56px;padding:14px 16px;border:1px solid #cbd1cc;border-radius:8px;background:#fff;font-size:16px;box-shadow:none}.auth-field input::placeholder{color:#929a94}.auth-field input:hover{border-color:#aeb7b0}.auth-field input:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand),transparent 86%)}
.auth-remember{display:flex;align-items:center;gap:10px;margin:2px 0 26px;color:#4e5951;font-size:14px}.auth-remember input{width:18px;height:18px;margin:0;accent-color:var(--brand)}
.auth-submit{width:100%;min-height:54px;border:1px solid var(--brand);border-radius:8px;background:var(--brand);color:#fff;font-size:16px;font-weight:700;transition:filter .15s,transform .15s}.auth-submit:hover{filter:brightness(.93)}.auth-submit:active{transform:translateY(1px)}.auth-submit:focus-visible{outline:3px solid color-mix(in srgb,var(--brand),transparent 72%);outline-offset:3px}
.auth-error{margin-bottom:21px;padding:12px 14px;border:1px solid #efc4c8;border-radius:8px;background:#fff4f4;color:#a32f38;font-size:14px}
.auth-help{max-width:390px;margin:24px auto 0;color:#747d76;font-size:13px;line-height:1.55;text-align:center}.auth-footer{color:#7c847e;font-size:12px;text-align:center}
@media(max-width:600px){.auth-page{padding:24px 24px 20px}.auth-content{place-items:start stretch;padding:72px 0 64px}.auth-form{margin:0 auto}.auth-form h1{font-size:32px}.auth-form>header{margin-bottom:30px}.auth-field{font-size:14px}.auth-field input{min-height:54px}.auth-footer{font-size:11px}}
@media(prefers-reduced-motion:reduce){.auth-submit,.auth-field input{transition:none}}

/* Operação 0.2.3 — filtros, restauração e gestão de acesso */
.alert.success{border:1px solid #b9dfc9;background:#e8f6ee;color:#256a49}
.heading-actions{display:flex;align-items:center;gap:9px}
.simple-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border-bottom:1px solid var(--line)}
.simple-list-row>a{border-bottom:0}.simple-list-row>form,.simple-list-row>.status-pill{margin-right:10px}
.stage-list>span.archived{opacity:.72;border-style:dashed}.stage-list .text-link{padding:0;border:0;background:transparent;color:var(--brand);font-size:9px;font-weight:750}
.user-entry{border-bottom:1px solid var(--line)}.user-entry .user-row{border-bottom:0}
.password-reset{display:flex;align-items:end;justify-content:flex-end;gap:8px;padding:0 9px 10px}
.password-reset label{display:grid;gap:4px;color:var(--muted);font-size:9px;font-weight:700}.password-reset input{min-width:220px;padding:7px;font-size:10px}
@media(max-width:760px){.heading-actions{width:100%;justify-content:space-between}.simple-list-row{grid-template-columns:1fr}.simple-list-row>form,.simple-list-row>.status-pill{margin:0 0 9px 10px;width:max-content}.password-reset{align-items:stretch;flex-direction:column}.password-reset input{min-width:0;width:100%}}
