@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Inter,system-ui,sans-serif;color:#17242b;background:#eef2f1;font-synthesis:none}*{box-sizing:border-box}button,input{font:inherit}button{color:inherit}body{margin:0;min-width:1180px;min-height:100vh;overflow:hidden;-webkit-font-smoothing:antialiased}.app-shell{display:grid;grid-template-columns:248px minmax(560px,1fr) 500px;height:100vh;overflow:hidden;background:#f4f6f5}.sidebar{display:flex;flex-direction:column;height:100vh;padding:28px 18px 18px;color:#dce7e4;background:#19262e;border-right:1px solid #263740}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 26px;font-weight:700;color:#fff}.brand>span{flex:1}.notification-button{position:relative;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:5px;color:#b8c7c4;background:transparent;cursor:pointer}.notification-button:hover{color:#fff;background:#263840}.notification-button b{position:absolute;top:-4px;right:-5px;min-width:17px;padding:2px 4px;border-radius:9px;color:#fff;background:#c3544a;font-size:8px}.brand-mark{display:grid;place-items:center;width:37px;height:37px;border-radius:10px;color:#c6f1e5;background:#13785f}.nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:11px 12px;border:0;border-radius:8px;color:#aebdc2;background:transparent;cursor:pointer;text-align:left}.nav-item:hover,.nav-item.active{color:#fff;background:#263840}.nav-item.active{border-left:3px solid #54b99f;padding-left:9px}.workspace-area{margin-top:auto;padding:18px 0;border-top:1px solid #304049}.workspace-switch{display:flex;align-items:center;gap:10px;width:100%;border:0;padding:8px;color:#fff;background:transparent;text-align:left;cursor:pointer}.workspace-switch>span:nth-child(2){flex:1;font-size:13px;font-weight:600}.workspace-switch small,.invite-code small,.profile small{display:block;margin-bottom:3px;color:#82969d;font-size:10px;font-weight:500}.workspace-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#334950;font-size:11px;font-weight:700}.invite-button{display:flex;align-items:center;gap:8px;width:100%;margin-top:8px;padding:10px;border:1px solid #3a5057;border-radius:8px;color:#d7e4e1;background:transparent;cursor:pointer}.invite-button:hover{border-color:#57bca3}.invite-code{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:9px 10px;border-radius:8px;color:#cdd9d6;background:#142127;font-size:12px}.invite-code button{border:0;color:#8da39f;background:transparent;cursor:pointer}.profile{display:flex;align-items:center;gap:10px;padding:15px 7px 2px;border-top:1px solid #304049}.profile-main{display:flex;flex:1;align-items:center;gap:10px;min-width:0;padding:0;border:0;text-align:left;background:transparent;cursor:pointer}.profile-main>span:last-child{min-width:0}.profile strong{display:block;overflow:hidden;color:#f3f7f6;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.avatar,.mini-avatar{display:grid;place-items:center;border-radius:50%;color:#0e5e4e;background:#cae8df;font-weight:700}.avatar{width:34px;height:34px;font-size:11px}.avatar.has-photo,.mini-avatar.has-photo{overflow:hidden}.avatar img,.mini-avatar img{width:100%;height:100%;object-fit:cover}.logout{display:flex;align-items:center;gap:5px;min-height:34px;padding:0 7px;border:1px solid #3a4b52;border-radius:5px;color:#b9c7ca;background:transparent;cursor:pointer;font-size:9px}.logout:hover{color:#fff;border-color:#64777d}.project-pane{display:flex;flex-direction:column;min-width:0;height:100vh;overflow:hidden;background:#fff;border-right:1px solid #dce3e0}.project-toolbar{display:flex;align-items:center;gap:18px;height:84px;padding:0 25px;border-bottom:1px solid #e2e7e5}.segmented{display:flex;padding:3px;border-radius:8px;background:#eef2f1}.segmented button{padding:8px 18px;border:0;border-radius:6px;color:#64736f;background:transparent;cursor:pointer;font-size:13px}.segmented button.active{color:#172b27;background:#fff;box-shadow:0 1px 3px #bdc9c5;font-weight:600}.completed-filter{display:flex;align-items:center;gap:7px;flex:0 0 auto;color:#5e6e69;cursor:pointer;font-size:10px;white-space:nowrap}.completed-filter input{width:15px;height:15px;accent-color:#187b64}.search{display:flex;align-items:center;gap:9px;flex:1;height:40px;padding:0 13px;border:1px solid #d6dedb;border-radius:8px;color:#83918d}.search:focus-within{border-color:#4eab94;box-shadow:0 0 0 3px #daf2eb}.search input{width:100%;border:0;outline:0;color:#24322f;background:transparent;font-size:13px}.toolbar-action{display:flex;align-items:center;gap:5px;padding:9px 11px;border:1px solid #b9cec8;border-radius:5px;color:#176b58;background:#fff;cursor:pointer;font-size:10px;font-weight:600;white-space:nowrap}.list-head,.project-row{display:grid;grid-template-columns:44px minmax(150px,1.5fr) minmax(140px,1.1fr) 110px 85px;align-items:center;gap:12px}.list-head{height:44px;padding:0 22px;color:#81908c;background:#f7f9f8;border-bottom:1px solid #e2e7e5;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.045em}.project-list{flex:1;min-height:0;overflow-y:auto}.project-row{width:100%;min-height:72px;padding:9px 22px;border:0;border-bottom:1px solid #edf0ef;background:#fff;cursor:pointer;text-align:left}.project-row:hover{background:#f8fbfa}.project-row.selected{background:#edf8f4;box-shadow:inset 3px 0 #13836a}.project-id{color:#52615d;font-size:12px;font-weight:700}.project-name{min-width:0}.project-name strong{display:block;overflow:hidden;color:#21312d;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.project-name small{display:block;margin-top:5px;color:#98a4a1;font-size:10px}.project-name small .kanban-marker{display:inline;margin-left:4px;color:#4b776c;font-size:8px;font-style:normal;font-weight:600}.person{display:flex;align-items:center;gap:7px;color:#596863;font-size:11px}.person.unassigned{color:#9a7166;font-style:italic}.mini-avatar{flex:0 0 25px;width:25px;height:25px;font-size:8px}.progress-cell{display:grid;gap:6px;color:#56645f;font-size:11px}.progress-track{display:block;height:4px;overflow:hidden;border-radius:5px;background:#e1e7e5}.progress-track>span{display:block;height:100%;border-radius:inherit;background:#169375}.updated{color:#75827e;font-size:10px}.list-footer,.detail-footer{min-height:48px;display:flex;align-items:center;padding:0 24px;color:#84918d;border-top:1px solid #e2e7e5;font-size:10px}.last-sync{margin-left:auto}.loading,.empty{padding:40px 24px;color:#778681;text-align:center;font-size:13px}.detail-pane{display:flex;flex-direction:column;min-width:0;height:100vh;overflow:hidden;background:#f8faf9}.detail-header{padding:27px 30px 0;background:#fff;border-bottom:1px solid #e2e7e5}.eyebrow{color:#55706a;font-size:10px;font-weight:600}.detail-header h1{min-height:52px;margin:8px 0 14px;color:#172823;font-size:22px;line-height:1.25}.detail-topline{display:flex;align-items:center;justify-content:space-between}.access-badge{padding:5px 8px;border-radius:6px;color:#17745f;background:#e4f5ef;font-size:9px;font-weight:700}.access-badge.locked{display:flex;align-items:center;gap:4px;color:#6e7774;background:#edf0ef}.assignment{display:flex;align-items:center;gap:10px;margin:-5px 0 15px;color:#7c8985;font-size:10px}.assignment select{min-width:170px;padding:7px 29px 7px 9px;border:1px solid #d5dfdc;border-radius:7px;outline:none;color:#33443f;background:#fff;font-size:11px}.assignment strong{color:#33443f}.assignment.project-client{margin-top:-8px}.assignment.project-client small{color:#8a9692;font-size:8px}.project-task-toggle{display:flex;align-items:center;gap:9px;width:max-content;margin:-5px 0 14px;padding:8px 10px;border:1px solid #dce5e2;border-radius:8px;background:#f7faf9;cursor:pointer}.project-task-toggle input{width:16px;height:16px;accent-color:#137c64}.project-task-toggle strong,.project-task-toggle small{display:block}.project-task-toggle strong{color:#30433d;font-size:10px}.project-task-toggle small{margin-top:2px;color:#899590;font-size:8px}.completion-mode-toggle{display:flex;align-items:flex-start;gap:9px;margin:0 0 14px;padding:10px 11px;border:1px solid #cfded9;border-left:3px solid #4a7d70;border-radius:7px;background:#f4f8f7;cursor:pointer}.completion-mode-toggle input{width:16px;height:16px;margin-top:1px;accent-color:#356f60}.completion-mode-toggle strong,.completion-mode-toggle small{display:block}.completion-mode-toggle strong{color:#263b35;font-size:10px}.completion-mode-toggle small{margin-top:3px;color:#71807b;font-size:8px}.approval-only-state{display:flex;gap:12px;margin:18px;padding:17px;border:1px solid #d5dfdc;border-radius:8px;color:#356f60;background:#f7faf9}.approval-only-state strong{color:#283a35;font-size:12px}.approval-only-state p{margin:5px 0 0;color:#687772;font-size:10px;line-height:1.55}.detail-tabs{display:flex;gap:24px}.detail-tabs button{padding:0 2px 12px;border:0;border-bottom:2px solid transparent;color:#82908c;background:transparent;cursor:pointer;font-size:12px}.detail-tabs button.active{border-color:#13836a;color:#173a31;font-weight:600}.checklist-head,.check-row{display:grid;grid-template-columns:30px minmax(150px,1fr) 112px 75px;align-items:center;gap:10px}.checklist-head{height:40px;padding:0 24px;color:#8b9894;background:#f4f7f6;border-bottom:1px solid #e3e8e6;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.checklist{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.check-row{width:100%;min-height:61px;padding:10px 24px;border:0;border-bottom:1px solid #e6ebe9;background:#fff;cursor:pointer;text-align:left}.check-row:hover:not(:disabled){background:#f4fbf8}.check-row:disabled{cursor:default;opacity:1}.check-row.protected{background:#f8faf9}.check-row.readonly{background:#fafbfb}.check-row.waiting{background:#faf8f3}.check-row.waiting .check-status{color:#8a7151}.check-row.waiting .checkbox{border-style:dashed;border-color:#b9a98f}.check-number{color:#96a19e;font-size:10px}.check-text{color:#2d3b37;font-size:11px;line-height:1.4}.check-status{display:flex;align-items:center;gap:7px;color:#71807c;font-size:10px}.checkbox{display:grid;place-items:center;flex:0 0 18px;width:18px;height:18px;border:1.5px solid #b8c4c0;border-radius:5px;color:#fff;background:#fff}.checkbox.checked{border-color:#14836a;background:#14836a}.protected .checkbox.checked{border-color:#7b9991;background:#7b9991}.check-date{color:#73817d;font-size:10px}.detail-footer{justify-content:space-between;background:#fff}.sync-state{display:flex;align-items:center;gap:7px;color:#427668}.sync-state>span{width:7px;height:7px;border-radius:50%;background:#2aa47f;box-shadow:0 0 0 3px #d9eee8}.detail-empty{margin:auto}.toast{position:fixed;z-index:30;right:25px;bottom:25px;padding:13px 17px;border-radius:9px;color:#fff;background:#162a25;box-shadow:0 12px 35px #0c211b40;font-size:12px}.notification-panel{position:fixed;z-index:35;top:14px;left:258px;width:360px;max-height:calc(100vh - 28px);border:1px solid #cfd9d6;background:#fff;box-shadow:0 18px 45px #1428202b}.notification-panel>header{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid #e0e6e4}.notification-panel>header strong,.notification-panel>header small{display:block}.notification-panel>header strong{font-size:13px}.notification-panel>header small{margin-top:3px;color:#88948f;font-size:9px}.notification-panel>header button{border:0;color:#6d7c77;background:transparent;cursor:pointer}.browser-notification-action{display:flex;align-items:center;gap:7px;width:calc(100% - 28px);margin:10px 14px 0;padding:9px 10px;border:1px solid #d7e2de;border-radius:6px;color:#356f60;background:#f5f9f8;cursor:pointer;font-size:9px;font-weight:600}.notification-list{max-height:calc(100vh - 100px);overflow-y:auto}.notification-list article{display:flex;gap:10px;padding:13px 16px;border-bottom:1px solid #edf0ef}.notification-list article.unread{background:#f1f8f5}.notification-kind{flex:0 0 7px;width:7px;height:7px;margin-top:5px;border-radius:50%;background:#758b84}.kind-task{background:#9a7440}.kind-pnr{background:#317967}.kind-checklist{background:#557a95}.kind-message{background:#7b6495}.notification-list article div{min-width:0}.notification-list article strong{display:block;font-size:10px}.notification-list article p{margin:4px 0;color:#61706b;font-size:9px;line-height:1.4}.notification-list time{color:#909b97;font-size:8px}.notification-empty{padding:25px;color:#84908c;text-align:center;font-size:10px}.modal-backdrop{position:fixed;z-index:40;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#10201db8}.modal{position:relative;width:430px;padding:28px;border-radius:8px;background:#fff;box-shadow:0 18px 48px #081a1540}.modal-close{position:absolute;top:16px;right:16px;border:0;background:transparent;cursor:pointer;color:#75827e}.modal-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;color:#14745f;background:#dff3ed}.members-modal>.modal-icon{display:none}.modal>.eyebrow{display:none}.modal h2{margin:0 0 14px;font-size:19px}.modal p{margin:0 0 20px;color:#65736f;font-size:12px;line-height:1.55}.modal-code{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px dashed #95b8ae;border-radius:9px;background:#f3faf7}.modal-code strong{letter-spacing:.12em}.modal-code button{display:flex;align-items:center;gap:6px;border:0;color:#116b58;background:transparent;cursor:pointer;font-size:11px;font-weight:600}.modal-primary{width:100%;margin-top:18px;padding:11px;border:0;border-radius:8px;color:#fff;background:#137c64;cursor:pointer;font-weight:600}.splash,.login-page{min-height:100vh;display:grid;place-items:center;background:#edf3f1}.splash{color:#50625d;font-size:13px}.login-card{width:390px;padding:38px;border:1px solid #dbe4e1;border-radius:16px;background:#fff;box-shadow:0 25px 70px #17372e1c}.login-logo{margin-bottom:18px}.login-card h1{margin:8px 0;font-size:24px}.login-card>p{margin:0 0 24px;color:#71807c;font-size:12px;line-height:1.5}.login-card label{display:grid;gap:7px;margin-top:14px;color:#52615d;font-size:11px;font-weight:600}.login-card input,.member-form input{width:100%;height:41px;padding:0 12px;border:1px solid #d5dfdc;border-radius:8px;outline:none}.login-card input:focus,.member-form input:focus{border-color:#4eab94;box-shadow:0 0 0 3px #daf2eb}.primary-button{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:18px;padding:11px;border:0;border-radius:8px;color:#fff;background:#137c64;cursor:pointer;font-weight:600}.primary-button:disabled{opacity:.6}.form-error{margin-top:12px;color:#a33e35;font-size:11px}.members-modal{max-height:88vh;overflow-y:auto}.member-list{display:grid;gap:5px;margin:17px 0}.member-item{display:flex;align-items:center;gap:10px;padding:9px;border-radius:8px;background:#f4f7f6}.member-item>span:nth-child(2){flex:1}.member-item strong,.member-item small{display:block}.member-item strong{font-size:11px}.member-item small{margin-top:3px;color:#8a9692;font-size:9px}.member-item em{color:#678078;font-size:9px;font-style:normal}.member-item select,.member-form select{height:41px;padding:0 10px;border:1px solid #d5dfdc;border-radius:6px;color:#3d4c47;background:#fff;font-size:10px}.member-form select{width:100%}.member-manage{padding:7px 8px;border:1px solid #ccd9d5;border-radius:5px;color:#47655c;background:#fff;cursor:pointer;font-size:8px}.settings-link{border:0;padding:0;color:#176d59;background:transparent;cursor:pointer;font-size:10px;font-weight:600}.member-form{display:grid;gap:8px;padding-top:15px;border-top:1px solid #e4e9e7}.member-form h3{margin:0 0 4px;font-size:13px}.member-form .primary-button{margin-top:2px}.created-credentials{display:grid;gap:5px;margin-top:14px;padding:13px;border:1px solid #b8d9cf;border-radius:8px;background:#eef9f5;font-size:11px}.created-credentials small{color:#6c7975}.created-credentials button{width:max-content;margin-top:4px;padding:7px 10px;border:0;border-radius:5px;color:#fff;background:#176d59;cursor:pointer;font-size:9px;font-weight:600}.password-generator{display:grid;grid-template-columns:1fr auto;gap:7px}.password-generator button{padding:0 10px;border:1px solid #b8ccc6;border-radius:6px;color:#356f60;background:#f7faf9;cursor:pointer;font-size:9px;font-weight:600}.approval-card-status{display:flex;align-items:center;gap:6px;margin-top:9px;padding:7px 8px;border:1px solid #d8e3df;border-radius:5px;color:#537269;background:#f7faf9;font-size:8px;font-weight:600}.approval-linked-note{margin:8px 0 0;color:#60746e;font-size:9px}.role-editor-actions{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.secondary-button{padding:9px 12px;border:1px solid #ccd8d4;border-radius:6px;color:#52645e;background:#fff;cursor:pointer;font-size:9px;font-weight:600}.sheet-settings-modal{width:700px;max-height:88vh;overflow-y:auto}.sheet-settings-modal>p{margin:7px 0 16px;color:#687772;font-size:10px;line-height:1.5}.sheet-url-row{display:grid;grid-template-columns:1fr auto;gap:8px}.sheet-url-row input,.sheet-select select{height:40px;padding:0 11px;border:1px solid #d4dedb;border-radius:6px;outline:none}.sheet-url-row button{padding:0 13px;border:1px solid #a9c6bd;border-radius:6px;color:#286756;background:#f4f9f7;cursor:pointer;font-size:9px;font-weight:600}.sheet-select{display:grid;gap:6px;margin-top:15px;color:#566660;font-size:9px}.column-picker{margin:16px 0;border:1px solid #dbe3e1;border-radius:7px}.column-picker>header{padding:12px 13px;border-bottom:1px solid #e2e8e6}.column-picker header strong,.column-picker header small{display:block}.column-picker header strong{font-size:11px}.column-picker header small{margin-top:3px;color:#7b8884;font-size:8px}.column-picker>div{display:grid;grid-template-columns:1fr 1fr;max-height:330px;overflow-y:auto}.column-picker label{display:grid;grid-template-columns:16px 30px 1fr;gap:7px;align-items:start;min-height:48px;padding:10px;border-right:1px solid #edf0ef;border-bottom:1px solid #edf0ef;cursor:pointer;font-size:9px;line-height:1.35}.column-picker label.selected{background:#f0f7f5}.column-picker label input{accent-color:#176d59}.column-picker label b{color:#176d59}.role-column-check{display:grid;grid-template-columns:16px 28px 1fr;align-items:start}.role-column-check b{color:#37806c;font-size:8px}.profile-modal,.account-modal{width:440px}.profile-modal>label,.account-modal>label{display:grid;gap:6px;margin-top:11px;color:#52625d;font-size:9px}.profile-modal input,.account-modal input{height:40px;padding:0 11px;border:1px solid #d4dedb;border-radius:6px}.profile-modal h3{margin:20px 0 0;font-size:11px}.avatar-editor{display:grid;grid-template-columns:42px 1fr;gap:4px 10px;align-items:center;margin:15px 0;padding:12px;background:#f4f8f7}.avatar-editor .avatar{grid-row:1 / 3;width:42px;height:42px}.avatar-editor label{color:#176d59;cursor:pointer;font-size:9px;font-weight:600}.avatar-editor input{display:none}.avatar-editor small{color:#7c8985;font-size:8px}.password-reset{margin-top:20px;padding-top:15px;border-top:1px solid #e0e6e4}.password-reset p{color:#77847f;font-size:9px}.password-reset>button{padding:8px 10px;border:1px solid #e1b9b5;border-radius:5px;color:#9c3932;background:#fff8f7;cursor:pointer}.password-reset>div{display:grid;gap:8px;margin-top:10px;padding:10px;background:#f1f7f5}.password-reset code{font-size:12px}.password-reset>div button{width:max-content;border:0;color:#176d59;background:transparent;cursor:pointer;font-size:9px;font-weight:600}.kanban-page{grid-column:2 / 4;display:flex;flex-direction:column;min-width:0;height:100vh;overflow:hidden;background:#edf0ef}.kanban-toolbar{display:flex;align-items:center;justify-content:space-between;min-height:92px;padding:18px 26px;border-bottom:1px solid #cfd7d4;background:#fff}.kanban-toolbar h1{margin:4px 0 2px;font-size:23px;letter-spacing:-.02em}.kanban-toolbar p{margin:0;color:#798782;font-size:11px}.kanban-tools{display:flex;align-items:center;gap:10px}.kanban-column-control{position:relative}.kanban-column-menu{position:absolute;z-index:30;top:calc(100% + 7px);right:0;width:270px;padding:8px;border:1px solid #cfd9d6;border-radius:7px;background:#fff;box-shadow:0 14px 35px #17282326}.kanban-column-menu header{display:flex;align-items:center;justify-content:space-between;padding:5px 5px 9px;border-bottom:1px solid #e5e9e8}.kanban-column-menu header strong{font-size:10px}.kanban-column-menu header button{border:0;color:#26705d;background:transparent;cursor:pointer;font-size:8px;font-weight:600}.kanban-column-menu label{display:flex;align-items:center;gap:9px;padding:8px 6px;cursor:pointer}.kanban-column-menu label:hover{background:#f4f7f6}.kanban-column-menu input{accent-color:#176d59}.kanban-column-menu label span{flex:1}.kanban-column-menu label strong,.kanban-column-menu label small{display:block}.kanban-column-menu label strong{font-size:9px}.kanban-column-menu label small{margin-top:2px;color:#84908c;font-size:8px}.new-task-button{display:flex;align-items:center;gap:7px;padding:10px 13px;border:0;border-radius:8px;color:#fff;background:#137c64;cursor:pointer;font-size:11px;font-weight:600}.type-editor-button{padding:9px 11px;border:1px solid #d7e1de;border-radius:8px;color:#51655f;background:#fff;cursor:pointer;font-size:10px;font-weight:600}.kanban-workspace{display:flex;flex:1;min-height:0;min-width:0}.kanban-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:10px;flex:1 1 0;width:0;min-width:0;min-height:0;padding:14px;overflow-x:auto}.kanban-column{display:flex;flex-direction:column;min-width:250px;min-height:0;border:1px solid #d3dbd8;border-radius:5px;background:#f6f7f7}.kanban-column>header{display:flex;align-items:center;justify-content:space-between;min-height:59px;padding:0 14px;border-bottom:1px solid #e1e7e5}.kanban-column>header strong,.kanban-column>header small{display:block}.kanban-column>header strong{font-size:12px}.kanban-column>header small{margin-top:3px;color:#8b9894;font-size:9px}.kanban-column>header>span{color:#64736f;font-size:10px;font-weight:600}.stage-awaiting_payment{border-top:2px solid #7f6a87}.stage-in_progress{border-top:2px solid #b2833c}.stage-review{border-top:2px solid #55758e}.stage-awaiting_confirmation{border-top:2px solid #8a7151}.stage-done{border-top:2px solid #287660}.kanban-stack{flex:1;min-height:0;padding:10px;overflow-y:auto}.kanban-card{margin-bottom:8px;padding:13px;border:1px solid #d5ddda;border-left:3px solid #97a6a1;border-radius:4px;background:#fff;cursor:grab;outline:none}.kanban-card:hover{border-color:#aebdb8}.kanban-card:focus-visible{box-shadow:0 0 0 2px #62aa97}.kanban-card.selected{border-color:#397f6d;background:#f8fcfb}.kanban-card:active{cursor:grabbing}.kanban-card.priority-high{border-left-color:#d18d33}.kanban-card.priority-critical{border-left-color:#c65349}.kanban-card.priority-low{border-left-color:#6f9c8f}.kanban-card.card-readonly{cursor:default}.card-top{display:flex;align-items:center;justify-content:space-between;color:#71807b;font-size:9px;font-weight:600}.priority-pill{color:#566660}.priority-critical .priority-pill{color:#a43d35}.priority-high .priority-pill{color:#93621a}.kanban-card h2{margin:11px 0 8px;font-size:13px;line-height:1.3}.card-meta{display:flex;flex-wrap:wrap;gap:5px}.card-meta span{color:#567168;font-size:8px}.card-meta span+span:before{content:"·";margin-right:5px;color:#9aa5a1}.card-meta .linked-pnr{color:#315f7b}.kanban-card>p{margin:9px 0;color:#697772;font-size:9px;line-height:1.45}.card-progress{display:flex;align-items:center;gap:8px;margin-top:12px}.card-progress>span{flex:1;height:4px;overflow:hidden;border-radius:5px;background:#e1e7e5}.card-progress i{display:block;height:100%;background:#168b70}.card-progress em{color:#63716d;font-size:8px;font-style:normal}.kanban-card footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:10px;border-top:1px solid #edf0ef}.card-owner{display:flex;align-items:center;gap:6px;color:#7b8884;font-size:8px}.card-owner .mini-avatar{width:21px;height:21px;flex-basis:21px;font-size:7px}.card-actions{display:flex;gap:4px}.card-actions button{display:grid;place-items:center;width:25px;height:25px;border:1px solid #dbe3e0;border-radius:6px;color:#557269;background:#fff;cursor:pointer}.column-empty{display:grid;place-items:center;min-height:90px;border:1px dashed #ccd7d3;border-radius:8px;color:#98a49f;font-size:9px}.task-detail-pane{display:flex;flex:0 0 390px;flex-direction:column;min-width:0;border-left:1px solid #cfd7d4;background:#fff}.task-detail-header{position:relative;padding:28px 28px 24px;border-bottom:1px solid #dce2e0}.task-detail-close{position:absolute;top:19px;right:19px;display:grid;place-items:center;border:0;color:#65736f;background:transparent;cursor:pointer}.task-kicker{color:#5c746d;font-size:10px;font-weight:600}.task-detail-header h1{margin:10px 32px 24px 0;color:#182a25;font-size:23px;line-height:1.24;letter-spacing:-.025em}.task-detail-owner{display:flex;align-items:center;gap:10px}.task-detail-owner>span:last-child{display:grid;gap:2px}.task-detail-owner small{color:#87928f;font-size:9px}.task-detail-owner strong{color:#34443f;font-size:11px}.task-detail-body{flex:1;min-height:0;padding:0 28px;overflow-y:auto}.task-facts{margin:0}.task-facts>div{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid #e5e9e7}.task-facts dt{color:#84908c;font-size:10px}.task-facts dd{margin:0;color:#34423e;font-size:11px;font-weight:600}.task-note{padding:23px 0}.task-note h2{margin:0 0 9px;font-size:12px}.task-note p{margin:0;color:#63716d;font-size:11px;line-height:1.55;white-space:pre-wrap}.attachments{padding:18px 0;border-top:1px solid #e2e7e5}.project-attachments{margin-bottom:14px;padding:9px 0 0;border-top:0}.attachments-title{display:flex;align-items:center;justify-content:space-between}.attachments-title>span{display:flex;align-items:center;gap:6px;color:#4d5f59;font-size:10px;font-weight:600}.attachment-upload{color:#176d59;cursor:pointer;font-size:9px;font-weight:600}.attachment-upload input{display:none}.attachment-list{display:grid;gap:5px;margin-top:10px}.attachment-item{display:flex;align-items:center;gap:7px;padding:8px 9px;border:1px solid #dce3e1;border-radius:4px;background:#f8faf9}.attachment-item>span{flex:1;min-width:0}.attachment-item strong,.attachment-item small{display:block}.attachment-item strong{overflow:hidden;color:#34433e;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.attachment-item small{margin-top:2px;color:#87938f;font-size:8px}.attachment-item a,.attachment-item button{display:grid;place-items:center;padding:2px;border:0;color:#55726a;background:transparent;cursor:pointer}.attachment-item button{color:#9b514a}.project-attachments .attachment-list{max-height:92px;overflow-y:auto}.task-messages{padding:20px 0;border-top:1px solid #e2e7e5}.task-messages h2{display:flex;align-items:center;gap:6px;margin:0 0 12px;color:#33443f;font-size:11px}.message-list{display:grid;gap:8px}.task-message{padding:10px 11px;border-left:2px solid #9ab9b0;background:#f5f8f7}.task-message header{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-message strong{color:#34443f;font-size:9px}.task-message time{color:#8b9692;font-size:8px}.task-message p{margin:6px 0 0;color:#52625d;font-size:10px;line-height:1.5;white-space:pre-wrap}.messages-empty{margin:0;color:#8b9692;font-size:9px}.message-form{display:grid;gap:7px;margin-top:12px}.message-form textarea{width:100%;padding:9px 10px;border:1px solid #d4ddda;border-radius:4px;outline:none;color:#2d3d38;resize:vertical;font-size:10px}.message-form textarea:focus{border-color:#5c9b8b}.message-form button{justify-self:end;padding:7px 11px;border:0;border-radius:4px;color:#fff;background:#176f5a;cursor:pointer;font-size:9px;font-weight:600}.message-form button:disabled{cursor:default;opacity:.5}.task-linked-project{padding:17px;border:1px solid #ccd9d5;border-radius:4px;background:#f7f9f8}.task-linked-project>span,.task-linked-project>strong{display:block}.task-linked-project>span{margin-bottom:6px;color:#7d8c87;font-size:9px}.task-linked-project>strong{color:#263b35;font-size:12px;line-height:1.4}.task-linked-progress{display:flex;align-items:center;gap:10px;margin:15px 0}.task-linked-progress>span{flex:1;height:4px;background:#dce4e1}.task-linked-progress i{display:block;height:100%;background:#287d66}.task-linked-progress em{color:#66736f;font-size:9px;font-style:normal}.task-linked-project button,.task-detail-footer button{border:0;color:#176d59;background:transparent;cursor:pointer;font-size:10px;font-weight:600}.task-linked-project button{padding:0}.task-detail-footer{padding:17px 28px;border-top:1px solid #dce2e0}.task-detail-footer button{display:flex;align-items:center;gap:7px}.kanban-edit{width:520px}.kanban-edit h2{margin:7px 0 18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{display:grid;gap:6px;color:#56645f;font-size:10px;font-weight:600}.form-grid .wide{grid-column:1 / -1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:10px 11px;border:1px solid #d5dfdc;border-radius:8px;outline:none;color:#263832;background:#fff;font-size:11px;resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#4eab94;box-shadow:0 0 0 3px #daf2eb}.task-form-actions{display:flex;align-items:center;gap:9px;margin-top:18px}.task-form-actions .primary-button{margin-top:0}.danger-button{display:flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;padding:11px 13px;border:1px solid #e1c1bd;border-radius:8px;color:#a33f36;background:#fff7f6;cursor:pointer;font-size:10px;font-weight:600}.danger-button.confirm{color:#fff;border-color:#b7463d;background:#b7463d}.type-list{display:grid;gap:6px;margin:17px 0}.type-list>div{display:flex;align-items:center;justify-content:space-between;padding:9px 11px;border-radius:8px;background:#f3f7f5;font-size:11px}.type-list button{display:grid;place-items:center;border:0;color:#9b5b55;background:transparent;cursor:pointer}.type-list button:disabled{opacity:.3;cursor:default}.type-add{display:flex;gap:8px}.type-add input{flex:1;padding:10px 11px;border:1px solid #d5dfdc;border-radius:8px;outline:none}.type-add button{display:flex;align-items:center;gap:5px;border:1px solid #bcd2cb;border-radius:8px;color:#176b58;background:#eff8f5;cursor:pointer;font-size:10px;font-weight:600}.role-layer{z-index:60}.role-editor{width:820px;max-height:88vh;overflow-y:auto}.role-layout{display:grid;grid-template-columns:210px 1fr;gap:22px;margin-top:18px}.role-layout>aside{display:grid;align-content:start;gap:4px;border-right:1px solid #e1e6e4;padding-right:14px}.role-layout>aside button{padding:9px 10px;border:0;border-radius:4px;color:#53635e;background:transparent;cursor:pointer;text-align:left;font-size:10px}.role-layout>aside button.active{color:#173c32;background:#e9f3f0;font-weight:600}.role-layout>aside .add-role{color:#176d59}.role-settings{display:grid;gap:18px}.role-settings>label{display:grid;gap:6px;color:#5c6b66;font-size:9px}.role-settings input[type=text],.role-settings>label input{padding:9px 10px;border:1px solid #d4ddda;border-radius:4px}.role-settings section{display:grid;gap:7px}.role-settings h3{margin:0 0 3px;font-size:11px}.role-check{display:flex;align-items:flex-start;gap:7px;color:#4e5d58;font-size:9px;line-height:1.35}.role-check input{margin:0;accent-color:#187b64}.role-column-section{padding-left:11px;border-left:2px solid #4c8b79}.role-column-section.waiting-columns{border-left-color:#a38a61}.role-column-section>p{margin:-1px 0 4px;color:#7a8883;font-size:8px;line-height:1.45}.role-column-section .role-check:has(input:disabled){opacity:.45}.pnr-draft-modal{width:560px;max-height:88vh;overflow-y:auto}.draft-list{margin-top:20px;padding-top:16px;border-top:1px solid #e1e6e4}.draft-list h3{font-size:11px}.draft-list article{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #edf0ef}.draft-list article>span{flex:1}.draft-list strong,.draft-list small{display:block}.draft-list strong{font-size:10px}.draft-list small{margin-top:4px;color:#87938f;font-size:8px}.draft-list article button{padding:7px 9px;border:1px solid #afc9c1;border-radius:4px;color:#176d59;background:#fff;cursor:pointer;font-size:8px;font-weight:600}.draft-actions{display:flex;align-items:center;gap:6px}.draft-list article .danger-link{border-color:#ecd2cf;color:#a23d35}@media(max-width:1320px){.app-shell{grid-template-columns:218px minmax(530px,1fr) 430px}.person{font-size:0}.list-head,.project-row{grid-template-columns:38px minmax(150px,1.5fr) 45px 100px 75px}}
