:root{--bg:#f5f7f9;--panel:#fff;--line:#e8edf0;--text:#18232d;--muted:#7d8b96;--accent:#0da8ab;--accent2:#0b8f96;--sidebar:#070b0e;--danger:#f2525b;--warn:#f3ae2b;--ok:#18ad69;--blue:#2494ee;--radius:16px;--shadow:0 8px 28px rgba(24,35,45,.06)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--text);background:var(--bg)}body{font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--sidebar);color:#fff;padding:22px 16px;display:flex;flex-direction:column;z-index:40}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 26px}.brand-mark{width:52px;height:52px;border:2px solid #fff;display:grid;place-items:center;font-weight:900;font-size:19px;transform:skew(-9deg);position:relative}.brand-mark:after{content:"";position:absolute;left:-8px;right:-8px;bottom:-7px;border-bottom:3px solid var(--accent);border-radius:50%}.brand strong{display:block;color:var(--accent);font-size:18px}.brand span{display:block;color:#8f9ba3;font-size:10px;margin-top:2px}.side-nav{display:flex;flex-direction:column;gap:8px}.side-nav a{height:46px;border-radius:11px;padding:0 14px;display:flex;align-items:center;gap:13px;color:#c6cdd2;transition:.2s}.side-nav a i{width:20px;text-align:center;font-size:16px}.side-nav a:hover{background:#111a1f;color:#fff}.side-nav a.active{background:linear-gradient(90deg,#0ca6a9,#0d9198);color:#fff;box-shadow:0 7px 18px rgba(13,168,171,.2)}.sidebar-bottom{margin-top:auto}.sidebar-user{background:#0d1418;border:1px solid #172027;border-radius:14px;padding:12px;display:flex;align-items:center;gap:10px}.sidebar-user>div{min-width:0;flex:1}.sidebar-user strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user span:not(.avatar){display:block;color:#85919a;font-size:10px;margin-top:3px}.sidebar-user a{color:#87939b}.app-main{margin-left:230px;width:calc(100% - 230px);min-width:0}.topbar{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;padding:0 28px;gap:26px;position:sticky;top:0;z-index:25}.top-search{width:min(390px,40vw);height:42px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;padding:0 14px;color:#9aa5ad;background:#fbfcfd}.top-search input{border:0;outline:0;background:transparent;width:100%;padding-left:10px;color:var(--text)}.top-actions{display:flex;align-items:center;gap:22px}.top-date,.top-user{display:flex;align-items:center;gap:10px}.top-date i{font-size:19px}.top-date span{font-weight:700;font-size:12px;line-height:1.15}.top-date small{display:block;color:var(--muted);font-weight:500;margin-top:3px}.top-user-name{font-size:12px;font-weight:700}.mobile-menu{display:none;border:0;background:none;font-size:20px}.content{padding:28px 30px 50px;max-width:1500px;margin:0 auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head h1{font-size:30px;line-height:1.1;margin:0 0 6px;font-weight:800;letter-spacing:-.4px}.page-head p{margin:0;color:var(--muted)}.head-actions{display:flex;gap:10px;align-items:center}.btn{height:40px;padding:0 16px;border-radius:10px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:var(--text);font-weight:700;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 15px rgba(0,0,0,.06)}.btn-primary{border-color:var(--accent);background:var(--accent);color:#fff}.btn-danger{border-color:#ffd8da;background:#fff3f4;color:var(--danger)}.btn-soft{background:#f6f9fa}.btn-icon{width:40px;padding:0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:19px 20px;display:flex;align-items:center;gap:15px;min-height:102px;box-shadow:0 4px 18px rgba(24,35,45,.03)}.stat-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:19px;background:#ecf9f8;color:var(--accent)}.stat-card.blue .stat-icon{background:#edf6ff;color:var(--blue)}.stat-card.red .stat-icon{background:#fff0f1;color:var(--danger)}.stat-card.purple .stat-icon{background:#f4efff;color:#7758df}.stat-value{font-size:28px;font-weight:800;line-height:1}.stat-label{color:var(--muted);font-size:12px;margin-top:5px}.dashboard-grid{display:grid;grid-template-columns:1.05fr 1.05fr 1.3fr;gap:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 20px rgba(24,35,45,.035)}.panel-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-head h2,.panel-head h3{font-size:14px;margin:0;font-weight:800}.panel-head a{font-size:11px;color:var(--blue);font-weight:700}.panel-body{padding:8px 18px 16px}.load-row{display:grid;grid-template-columns:minmax(110px,1fr) 80px 62px;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #f1f4f5}.load-row:last-child{border-bottom:0}.person-mini{display:flex;align-items:center;gap:8px;min-width:0}.person-mini strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress{height:5px;background:#edf1f3;border-radius:10px;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent);border-radius:10px}.load-meta{font-size:10px;text-align:right}.load-meta b{color:var(--blue)}.load-meta em{font-style:normal;color:var(--danger);margin-left:4px}.task-list{display:flex;flex-direction:column}.task-list-row{display:grid;grid-template-columns:minmax(180px,1fr) 105px 90px 28px;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #f1f4f5}.task-list-row:last-child{border-bottom:0}.task-list-row strong{font-size:11px;display:block}.task-list-row small{display:block;color:var(--muted);margin-top:4px;font-size:10px}.table-panel{overflow:hidden}.filters{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px;margin-bottom:16px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.filters .field{margin:0}.field label{display:block;color:var(--muted);font-size:10px;font-weight:700;margin:0 0 5px}.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text);outline:none}.input,.select{height:39px;padding:0 11px}.textarea{padding:11px;min-height:100px;resize:vertical}.input:focus,.select:focus,.textarea:focus{border-color:#9fdadd;box-shadow:0 0 0 3px rgba(13,168,171,.08)}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:920px}.data-table th{height:46px;padding:0 15px;background:#fbfcfd;color:#8b98a2;font-size:10px;text-transform:none;text-align:left;border-bottom:1px solid var(--line);font-weight:700}.data-table td{padding:14px 15px;border-bottom:1px solid #f0f3f4;vertical-align:middle;font-size:11px}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover td{background:#fcfefe}.title-cell strong{display:block;font-size:12px}.title-cell small{display:block;color:var(--muted);margin-top:4px}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:7px;font-size:10px;font-weight:700;white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-new{background:#f2f4f6;color:#6f7c86}.status-progress{background:#edf6ff;color:#288fe2}.status-review{background:#fff6e3;color:#e9a017}.status-done{background:#eaf9f1;color:#18a767}.status-overdue{background:#fff0f1;color:#eb4c56}.priority-critical,.priority-highest,.priority-high{background:#fff0f1;color:#e9535c}.priority-medium{background:#f2efff;color:#7662be}.priority-low,.priority-lowest{background:#eaf9f1;color:#2b9e65}.priority-planned{background:#edf6ff;color:#4589c8}.avatar{width:32px;height:32px;border-radius:50%;display:inline-grid;place-items:center;background:linear-gradient(135deg,#d7f2f1,#bfe4e5);color:#126c70;font-size:10px;font-weight:800;flex:0 0 auto}.avatar.sm{width:28px;height:28px;font-size:9px}.assignee{display:flex;align-items:center;gap:8px;white-space:nowrap}.assignee span:last-child{overflow:hidden;text-overflow:ellipsis}.category-dot{display:inline-flex;align-items:center;gap:7px}.category-dot i{width:8px;height:8px;border-radius:50%;display:inline-block}.tabs{display:flex;align-items:center;gap:4px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:4px;width:max-content;margin-bottom:16px}.tabs a,.tabs button{border:0;background:none;padding:8px 12px;border-radius:7px;color:var(--muted);font-weight:700;font-size:11px;cursor:pointer}.tabs .active{background:#eaf8f8;color:var(--accent2)}.kanban{display:grid;grid-template-columns:repeat(4,minmax(240px,1fr));gap:12px;overflow:auto;padding-bottom:7px}.kanban-col{background:#f5f7f8;border:1px solid #edf0f2;border-radius:14px;padding:10px;min-height:560px}.kanban-head{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 7px 8px;font-weight:800;font-size:11px}.kanban-head span:last-child{font-weight:600;color:var(--muted)}.kanban-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px;margin-bottom:9px;box-shadow:0 3px 10px rgba(24,35,45,.035)}.kanban-card:hover{border-color:#cfe7e8}.kanban-card h4{font-size:11px;line-height:1.4;margin:0 0 7px}.kanban-card .project{font-size:9px;color:var(--muted);margin-bottom:11px}.kanban-card .meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font-size:9px;color:var(--muted)}.kanban-card .meta .over{color:var(--danger);font-weight:800}.k-footer{display:flex;justify-content:space-between;align-items:center;gap:7px}.manager-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.manager-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.manager-top{display:flex;align-items:center;gap:11px;margin-bottom:16px}.manager-top .avatar{width:42px;height:42px;font-size:12px}.manager-top h3{font-size:13px;margin:0}.manager-top p{font-size:10px;color:var(--muted);margin:4px 0 0}.manager-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid var(--line);padding-top:14px}.manager-kpis div{text-align:center}.manager-kpis b{display:block;font-size:18px}.manager-kpis span{font-size:9px;color:var(--muted)}.manager-kpis .danger b{color:var(--danger)}.detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) 340px;gap:16px}.detail-main,.detail-side{display:flex;flex-direction:column;gap:16px}.detail-section{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.detail-section h2{font-size:14px;margin:0 0 14px}.detail-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.detail-title h1{font-size:27px;margin:0 0 8px}.detail-title p{margin:0;color:var(--muted)}.kv-list{display:grid;grid-template-columns:1fr;gap:0}.kv{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #f0f3f4}.kv:last-child{border-bottom:0}.kv span{color:var(--muted);font-size:11px}.kv strong{font-size:11px;text-align:right}.check-item{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #f2f4f5}.check-item:last-child{border-bottom:0}.check-item.done span{text-decoration:line-through;color:#9ba6ad}.comment{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid #f1f3f4}.comment:last-child{border-bottom:0}.comment-body{flex:1}.comment-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:5px}.comment-head strong{font-size:11px}.comment-head span{font-size:9px;color:var(--muted)}.comment p{margin:0;font-size:11px;line-height:1.5;white-space:pre-wrap}.file-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #f1f3f4}.file-row:last-child{border-bottom:0}.file-row i{width:30px;height:30px;border-radius:8px;background:#f1f6f8;display:grid;place-items:center;color:var(--accent2)}.file-row div{flex:1;min-width:0}.file-row strong{font-size:10px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-row small{font-size:9px;color:var(--muted)}.empty{padding:24px;text-align:center;color:var(--muted);font-size:11px}.modal{position:fixed;inset:0;background:rgba(7,11,14,.48);z-index:100;display:none;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-card{width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.modal-head{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);padding:17px 20px;display:flex;align-items:center;justify-content:space-between;z-index:2}.modal-head h2{font-size:16px;margin:0}.modal-close{border:0;background:#f2f5f6;width:32px;height:32px;border-radius:8px;cursor:pointer}.modal-body{padding:20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:16px;margin-top:4px;border-top:1px solid var(--line)}.checklist-builder{display:flex;flex-direction:column;gap:7px}.checklist-row{display:flex;gap:7px}.login-page{min-height:100vh;background:#fff;display:grid;grid-template-columns:46% 54%}.login-brand{background:#050708;color:#fff;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.login-brand:after{content:"";position:absolute;width:500px;height:140px;border:5px solid var(--accent);border-radius:50%;bottom:14%;left:8%;transform:rotate(-8deg);opacity:.75}.login-logo{position:relative;z-index:1;text-align:center}.login-logo .brand-mark{width:190px;height:150px;margin:0 auto 22px;font-size:57px;border-width:5px}.login-logo h1{margin:0;color:var(--accent);font-size:37px}.login-logo p{color:#fff;margin:5px 0 0;font-size:16px}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:50px}.login-box{width:min(450px,100%)}.login-box h2{text-align:center;color:var(--accent);font-size:34px;margin:0 0 8px}.login-box .subtitle{text-align:center;color:var(--muted);margin-bottom:36px}.login-box .field{margin-bottom:15px}.login-box .input{height:54px;font-size:14px;border-radius:10px}.login-box .btn{width:100%;height:54px;font-size:16px;margin-top:8px}.alert{padding:12px 14px;border-radius:10px;background:#fff0f1;color:#cc3843;margin-bottom:15px;font-size:12px}.sidebar-overlay{display:none}
@media(max-width:1150px){.dashboard-grid{grid-template-columns:1fr 1fr}.dashboard-grid .panel:last-child{grid-column:1/-1}.manager-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:translateX(0)}.sidebar-overlay.open{display:block;position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:35}.app-main{margin-left:0;width:100%}.mobile-menu{display:block}.topbar{padding:0 16px;justify-content:space-between}.top-search{width:55%}.top-user-name{display:none}.content{padding:20px 16px 40px}.detail-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-brand{display:none}}
@media(max-width:620px){.stats-grid,.manager-grid,.dashboard-grid,.form-grid{grid-template-columns:1fr}.dashboard-grid .panel:last-child{grid-column:auto}.filters{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.head-actions{width:100%}.head-actions .btn{flex:1}.top-search{display:none}.topbar{height:64px}.content{padding-top:18px}.page-head h1{font-size:25px}.stat-card{min-height:88px}.kanban{grid-template-columns:repeat(4,82vw)}.task-list-row{grid-template-columns:1fr 90px}.task-list-row>:nth-child(3),.task-list-row>:nth-child(4){display:none}}

/* v4 interaction and detail enhancements */
.back-link{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;margin-bottom:10px}.manager-hero{display:flex;align-items:center;gap:14px}.avatar.xl{width:54px;height:54px;border-radius:15px;font-size:16px}.manager-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.manager-actions .btn{width:100%}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.section-title-row h2{margin:0}.section-meta{font-size:10px;color:var(--muted);font-weight:600}.progress-line{height:6px;background:#edf2f4;border-radius:999px;overflow:hidden;margin-bottom:12px}.progress-line span{display:block;height:100%;background:var(--accent);border-radius:inherit;transition:width .25s}.progress-line.lg{height:9px;margin:14px 0 10px}.progress-caption{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px}.check-item{cursor:pointer}.check-item input{position:absolute;opacity:0;pointer-events:none}.fake-check{width:19px;height:19px;border:1px solid #cbd5da;border-radius:5px;display:grid;place-items:center;flex:0 0 auto;background:#fff;color:#fff;transition:.18s}.fake-check i{font-size:10px;opacity:0}.check-item input:checked+.fake-check{background:var(--accent);border-color:var(--accent)}.check-item input:checked+.fake-check i{opacity:1}.check-item input:focus-visible+.fake-check{outline:3px solid rgba(0,170,174,.16)}.timeline{position:relative}.timeline-item{display:grid;grid-template-columns:32px 1fr;gap:10px;padding:9px 0;position:relative}.timeline-item:not(:last-child):before{content:"";position:absolute;left:15px;top:34px;bottom:-7px;width:1px;background:#e8edef}.timeline-icon{width:30px;height:30px;border-radius:9px;background:#eef8f8;color:var(--accent2);display:grid;place-items:center;z-index:1}.timeline-item strong{font-size:11px;display:block;padding-top:2px}.timeline-item p{margin:3px 0 0;color:var(--muted);font-size:9px}.timeline-item small{display:block;margin-top:5px;color:#68757d;font-size:10px;line-height:1.45}.person-link{display:grid;grid-template-columns:34px 1fr auto;align-items:center;text-decoration:none;border-bottom:1px solid #f0f3f4}.person-link:last-child{border-bottom:0}.person-link span:nth-child(2){display:flex;flex-direction:column;gap:2px}.person-link small{font-size:9px;color:var(--muted)}.person-link>i{color:#b8c2c7;font-size:9px}.project-mini{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f0f3f4}.project-mini:last-child{border-bottom:0}.project-mini>span:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}.project-mini strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-mini small{font-size:9px;color:var(--muted)}.project-progress{margin-bottom:14px}.kanban-card{transition:transform .16s,opacity .16s,box-shadow .16s}.kanban-card[draggable="true"]{cursor:grab}.kanban-card.is-dragging{opacity:.45;transform:rotate(1deg) scale(.98)}.kanban-card.is-saving{opacity:.55;pointer-events:none}.kanban-col{transition:background .16s,outline-color .16s}.kanban-col.is-drop-target{background:#eefafa;outline:2px dashed rgba(0,165,169,.32);outline-offset:-4px}.toast{position:fixed;right:24px;bottom:24px;padding:12px 15px;border-radius:10px;background:#172126;color:#fff;font-size:11px;box-shadow:0 15px 40px rgba(0,0,0,.18);z-index:200}
@media(max-width:620px){.manager-actions{grid-template-columns:1fr}.manager-hero{align-items:flex-start}.progress-caption{flex-direction:column;gap:4px}}

/* v5 planning, notifications, quick edit and analytics */
.top-icon-btn{position:relative;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;background:#fff;color:#5f6d76}.top-icon-btn:hover{border-color:#cbd5da;color:var(--accent2)}.top-icon-btn>span{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--danger);color:#fff;font-size:9px;font-weight:800;display:grid;place-items:center;border:2px solid #fff}.row-actions{display:flex;gap:6px;justify-content:flex-end}.kanban-card{position:relative}.kanban-edit{position:absolute;right:9px;top:9px;width:27px;height:27px;border:1px solid var(--line);background:#fff;border-radius:7px;color:#8b99a2;display:grid;place-items:center;opacity:0;transition:.15s;z-index:3;cursor:pointer}.kanban-card:hover .kanban-edit{opacity:1}.kanban-edit:hover{color:var(--accent2);border-color:#b9dddd}.modal-card-sm{width:min(600px,100%)}.quick-edit-note{padding:10px 12px;border-radius:9px;background:#f5fafb;color:#65747c;font-size:10px;display:flex;align-items:flex-start;gap:8px}.quick-edit-note i{color:var(--accent2);margin-top:1px}.pulse-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.pulse-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:11px}.pulse-icon{width:36px;height:36px;border-radius:10px;background:#eef9f9;color:var(--accent2);display:grid;place-items:center}.pulse-card strong{display:block;font-size:19px;line-height:1}.pulse-card span:not(.pulse-icon){display:block;color:var(--muted);font-size:9px;margin-top:4px}.pulse-card a{color:var(--accent2);font-size:9px;font-weight:800}.status-overview{margin-bottom:18px}.status-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.status-bar-row>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:10px}.status-bar-row strong{font-size:14px}.status-bar-track{height:7px;border-radius:999px;background:#edf2f4;overflow:hidden}.status-bar-track span{display:block;height:100%;border-radius:inherit}.status-bar-track .status-new{background:#9aa7b0}.status-bar-track .status-progress{background:var(--blue)}.status-bar-track .status-review{background:var(--warn)}
.calendar-filters{grid-template-columns:repeat(4,1fr)}.calendar-panel{overflow:hidden}.calendar-toolbar{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.calendar-toolbar strong{display:block;font-size:16px}.calendar-toolbar>div:first-child span{display:block;color:var(--muted);font-size:9px;margin-top:4px}.calendar-legend{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:9px}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend .dot{width:7px;height:7px;border-radius:50%;display:block}.calendar-legend .new{background:#9aa7b0}.calendar-legend .progress{background:var(--blue)}.calendar-legend .review{background:var(--warn)}.calendar-legend .done{background:var(--ok)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--line);background:#fafcfc}.calendar-weekdays div{padding:9px 11px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;border-right:1px solid var(--line)}.calendar-weekdays div:last-child{border-right:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));overflow:auto}.calendar-day{min-height:150px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px;background:#fff}.calendar-day:nth-child(7n){border-right:0}.calendar-day.is-empty{background:#fafbfc}.calendar-day.is-today{background:#f1fbfb;box-shadow:inset 0 0 0 1px rgba(13,168,171,.18)}.calendar-day-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.calendar-day-head>span{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;font-size:10px;font-weight:800}.calendar-day.is-today .calendar-day-head>span{background:var(--accent);color:#fff}.calendar-day-head b{font-size:9px;color:var(--muted)}.calendar-items{display:flex;flex-direction:column;gap:5px}.calendar-task{border:1px solid var(--line);border-left-width:3px;border-radius:7px;padding:6px 7px;min-width:0;background:#fff}.calendar-task span{display:block;font-size:9px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-task small{display:block;color:var(--muted);font-size:8px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-task.status-new{border-left-color:#9aa7b0}.calendar-task.status-progress{border-left-color:var(--blue)}.calendar-task.status-review{border-left-color:var(--warn)}.calendar-task.status-done{border-left-color:var(--ok)}.calendar-task.is-overdue{background:#fff7f7}.calendar-more{font-size:8px;color:var(--accent2);font-weight:800;padding:3px 2px}.notification-list{display:flex;flex-direction:column}.notification-row{display:grid;grid-template-columns:40px 1fr auto 20px;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);transition:.15s}.notification-row:hover{background:#fafcfc}.notification-row:last-child{border-bottom:0}.notification-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#eef8f8;color:var(--accent2)}.notification-icon.message{background:#f5f1ff;color:#7864d7}.notification-body{min-width:0}.notification-body strong{display:block;font-size:11px}.notification-body span{display:block;color:var(--muted);font-size:9px;margin-top:4px}.notification-row time{color:var(--muted);font-size:9px}.notification-row>i{color:#bbc4c9;font-size:9px}.empty-state{padding:60px 20px;text-align:center;color:var(--muted)}.empty-state>i{font-size:32px;margin-bottom:12px}.empty-state strong{display:block;color:var(--text);font-size:13px}.empty-state p{font-size:10px}.search-hero{height:58px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 9px 0 18px;display:flex;align-items:center;gap:12px;margin-bottom:18px}.search-hero i{color:#9aa7af}.search-hero input{border:0;outline:0;flex:1;min-width:0;font-size:14px}.search-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.search-result{display:grid;grid-template-columns:36px 1fr 16px;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0f3f4}.search-result:last-child{border-bottom:0}.search-result-icon{width:34px;height:34px;border-radius:9px;background:#f0f6f7;color:var(--accent2);display:grid;place-items:center}.search-result strong{display:block;font-size:11px}.search-result small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.search-result>i{color:#bcc5ca;font-size:9px}
@media(max-width:1150px){.pulse-grid{grid-template-columns:repeat(2,1fr)}.status-bars{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(7,minmax(150px,1fr))}.calendar-panel{overflow:auto}.search-grid{grid-template-columns:1fr}}
@media(max-width:700px){.pulse-grid{grid-template-columns:1fr}.calendar-filters{grid-template-columns:1fr}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-legend{flex-wrap:wrap}.notification-row{grid-template-columns:38px 1fr 16px}.notification-row time{display:none}.kanban-edit{opacity:1}.top-actions{gap:9px}.top-date{display:none}}

/* =========================================================
   V6 — readable density for 100% / 125% desktop zoom
   ========================================================= */
:root{
  --radius:12px;
  --ui-font:15px;
  --ui-line:1.42;
}
html{font-size:15px;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{font-size:var(--ui-font);line-height:var(--ui-line);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
body,button,input,select,textarea{font-size:15px}
button,input,select,textarea{line-height:1.3}
.app-main,.content,.panel,.panel-body,.panel-head,.filters,.data-table,.kanban-card,.modal-card{min-width:0}
.app-main{margin-left:214px;width:calc(100% - 214px)}
.sidebar{width:214px;padding:16px 12px}
.brand{gap:10px;padding:0 6px 18px}.brand-mark{width:46px;height:46px;font-size:18px}.brand strong{font-size:17px}.brand span{font-size:12px;line-height:1.2}
.side-nav{gap:4px}.side-nav a{min-height:42px;height:auto;padding:10px 12px;border-radius:9px;gap:11px;font-size:14px;line-height:1.25}.side-nav a i{font-size:15px}
.sidebar-user{padding:10px;border-radius:11px}.sidebar-user strong{font-size:13px}.sidebar-user span:not(.avatar){font-size:12px}
.topbar{height:66px;padding:0 20px;gap:16px}.top-search{height:38px;width:min(460px,42vw);border-radius:9px}.top-search input{font-size:14px}.top-actions{gap:12px}.top-user-name,.top-date span{font-size:13px}.top-date small{font-size:11px}.top-icon-btn{width:38px;height:38px;border-radius:9px}
.content{padding:18px 20px 30px;max-width:1720px;width:100%}.page-head{margin-bottom:14px;gap:14px;align-items:center}.page-head h1{font-size:27px;line-height:1.16;margin-bottom:3px;letter-spacing:-.25px}.page-head p{font-size:14px;line-height:1.35}
.head-actions{gap:8px;flex-wrap:wrap}.btn{height:38px;padding:0 13px;border-radius:9px;font-size:14px;line-height:1.2;white-space:nowrap}.btn-icon{width:38px;padding:0}
.stats-grid{gap:10px;margin-bottom:12px}.stat-card{min-height:82px;padding:13px 14px;border-radius:12px;gap:12px}.stat-icon{width:42px;height:42px;border-radius:11px;font-size:18px}.stat-value{font-size:24px}.stat-label{font-size:13px;margin-top:3px;line-height:1.25}
.pulse-grid{gap:10px;margin-bottom:12px}.pulse-card{padding:11px 12px;border-radius:11px;grid-template-columns:34px minmax(0,1fr) auto;gap:9px}.pulse-icon{width:34px;height:34px}.pulse-card strong{font-size:18px}.pulse-card span:not(.pulse-icon),.pulse-card a{font-size:12px;line-height:1.25}
.panel{border-radius:12px}.panel-head{padding:12px 14px;gap:10px}.panel-head h2,.panel-head h3{font-size:15px;line-height:1.25}.panel-head a{font-size:13px}.panel-body{padding:7px 14px 12px}
.dashboard-grid{gap:10px;grid-template-columns:1fr 1fr 1.25fr}.status-overview{margin-bottom:12px}.status-bars{gap:14px}.status-bar-row>div:first-child{font-size:13px;margin-bottom:5px}.status-bar-row strong{font-size:14px}
.load-row{grid-template-columns:minmax(130px,1fr) minmax(70px,.65fr) 72px;gap:9px;padding:9px 0}.person-mini{gap:7px}.person-mini strong{font-size:13px;line-height:1.3;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.load-meta{font-size:12px}.progress{height:6px}
.task-list-row{grid-template-columns:minmax(210px,1fr) 94px 100px 24px;gap:9px;padding:10px 0;font-size:13px}.task-list-row strong{font-size:14px;line-height:1.28;overflow-wrap:anywhere}.task-list-row small{font-size:12px;line-height:1.25}.task-list-row>div{min-width:0}
.filters{gap:8px;margin-bottom:12px;padding:11px 12px;border-radius:11px}.field{min-width:0}.field label{font-size:12px;line-height:1.2;margin-bottom:5px;font-weight:700}.input,.select,.textarea{min-height:38px;height:38px;padding:7px 10px;border-radius:8px;font-size:14px;line-height:1.3}.textarea{height:auto;min-height:92px;resize:vertical}.select{padding-right:28px}.form-grid{gap:10px}.form-actions{gap:8px}
.tabs{margin-bottom:10px;gap:4px}.tabs button,.tabs a{min-height:38px;height:auto;padding:8px 13px;font-size:13px;border-radius:8px;line-height:1.25}
.table-panel{overflow:hidden}.table-wrap{overflow:auto;max-width:100%}.data-table{width:100%;font-size:13px;line-height:1.35}.data-table th{font-size:12px;padding:9px 10px;white-space:nowrap}.data-table td{padding:9px 10px;vertical-align:middle;min-width:0}.data-table td,.data-table th{overflow-wrap:anywhere}.data-table .title-cell{min-width:200px;max-width:380px}.title-cell strong{font-size:14px;line-height:1.3;white-space:normal}.title-cell small{font-size:12px;line-height:1.25;margin-top:2px}.assignee{gap:7px;min-width:130px}.assignee>span:last-child{white-space:normal;overflow-wrap:anywhere}.category-dot{font-size:13px;white-space:normal}
.avatar.sm{width:30px;height:30px;min-width:30px;font-size:11px}.badge{font-size:12px;line-height:1.2;padding:5px 8px;border-radius:7px;white-space:nowrap}
.kanban{gap:10px;grid-template-columns:repeat(4,minmax(245px,1fr));align-items:start}.kanban-col{padding:9px;border-radius:11px;min-width:0}.kanban-head{padding:2px 2px 8px;font-size:13px}.kanban-head span:first-child{font-size:14px;font-weight:800}.kanban-card{padding:11px;border-radius:10px;margin-bottom:8px}.kanban-card h4{font-size:14px;line-height:1.3;margin:0 52px 6px 0;white-space:normal;overflow-wrap:anywhere}.kanban-card .project{font-size:12px;line-height:1.3;white-space:normal;overflow-wrap:anywhere}.kanban-card .meta{font-size:12px;gap:7px;flex-wrap:wrap}.kanban-edit{opacity:1;width:28px;height:28px;border-radius:7px}.quick-edit-note{font-size:13px;line-height:1.35}
.modal{padding:16px}.modal-card{border-radius:13px;max-height:calc(100vh - 32px);overflow:auto}.modal-head{padding:13px 15px}.modal-head h2{font-size:18px}.modal-body{padding:14px 15px}.modal-close{width:34px;height:34px}
.calendar-toolbar{padding:11px 13px}.calendar-toolbar strong{font-size:16px}.calendar-toolbar>div:first-child span,.calendar-legend{font-size:12px}.calendar-weekdays div{padding:8px 9px;font-size:12px}.calendar-grid{grid-template-columns:repeat(7,minmax(128px,1fr))}.calendar-day{min-height:128px;padding:7px}.calendar-day-head>span{font-size:12px}.calendar-day-head b{font-size:11px}.calendar-task{padding:5px 6px}.calendar-task span{font-size:12px}.calendar-task small{font-size:11px}.calendar-more{font-size:11px}
.notification-row{padding:11px 14px;gap:10px}.notification-body strong{font-size:14px;line-height:1.3}.notification-body span,.notification-row time{font-size:12px}.search-result strong{font-size:14px}.search-result small{font-size:12px}.search-hero{height:50px;margin-bottom:12px;border-radius:11px}.search-hero input{font-size:15px}
.timeline-item strong,.project-mini strong,.person-link strong{font-size:13px}.timeline-item p,.timeline-item small,.project-mini small,.person-link small{font-size:12px;line-height:1.35}
.empty,.empty-state p{font-size:13px}.empty-state{padding:32px 16px}.empty-state strong{font-size:15px}
/* Long Russian names and browser zoom must never push neighboring columns out. */
.page-head>div,.panel-head>* ,.pulse-card>*,.task-list-row>*,.search-result>*,.notification-row>*,.calendar-task,.kanban-card a{min-width:0}
h1,h2,h3,h4,strong,p,span,a,td,th,label{overflow-wrap:anywhere;word-break:normal}
/* Keep short UI controls intact while text content wraps. */
.btn,.badge,.top-date,.calendar-day-head{overflow-wrap:normal}

@media(max-width:1380px){
  .dashboard-grid{grid-template-columns:1fr 1fr}.dashboard-grid .panel:last-child{grid-column:1/-1}
  .kanban{grid-template-columns:repeat(2,minmax(280px,1fr))}
  .filters{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pulse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1050px){
  .sidebar{width:204px}.app-main{margin-left:204px;width:calc(100% - 204px)}
  .content{padding:16px}.topbar{padding:0 16px}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-grid{grid-template-columns:1fr}.dashboard-grid .panel:last-child{grid-column:auto}
  .filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .status-bars{grid-template-columns:1fr}
}
@media(max-width:850px){
  .app-main{margin-left:0;width:100%}.sidebar{width:228px}.content{padding:14px 13px 24px}
  .topbar{height:60px;padding:0 12px}.top-search{width:min(460px,58vw)}
  .page-head{align-items:flex-start}.kanban{grid-template-columns:repeat(2,minmax(260px,1fr));overflow:auto}
}
@media(max-width:650px){
  html,body{font-size:15px}.page-head{flex-direction:column}.page-head h1{font-size:24px}.head-actions{width:100%}.head-actions .btn{flex:1}
  .stats-grid,.pulse-grid,.dashboard-grid,.filters,.form-grid,.status-bars{grid-template-columns:1fr}
  .kanban{grid-template-columns:86vw 86vw;overflow-x:auto;padding-bottom:4px}.top-search{display:none}.top-user-name,.top-date{display:none}
  .data-table{min-width:760px}.notification-row{grid-template-columns:38px minmax(0,1fr) 16px}.notification-row time{display:none}
}

/* =========================================================
   V7 — task-first UX, compact readable density at 100%/125%
   ========================================================= */
:root{--ui-font:15px;--ui-line:1.38;--sidebar-w:218px}
body{font-size:15px;line-height:1.38}.app-main{margin-left:var(--sidebar-w);width:calc(100% - var(--sidebar-w))}.sidebar{width:var(--sidebar-w);padding:14px 12px}.content{padding:16px 18px 28px;max-width:1760px}.topbar{height:64px}.page-head{margin-bottom:12px}.page-head h1{font-size:26px}.page-head p{font-size:13.5px}.panel-head{padding:11px 13px}.panel-body{padding:7px 13px 11px}.stat-card{min-height:76px;padding:11px 13px}.stat-value{font-size:23px}.stat-label{font-size:12.5px}.compact-stats{margin-bottom:12px}.btn{height:37px;font-size:13.5px}.input,.select{height:37px;min-height:37px}.textarea{font-size:14px;min-height:86px}.data-table td{font-size:13px;padding:8px 10px}.data-table th{font-size:11.5px;height:39px;padding:7px 10px}.badge{font-size:11.5px;padding:4px 7px}
.brand{display:block;padding:0 7px 14px}.brand-logo-link{display:flex;align-items:center;min-height:43px}.brand-logo{display:block;max-width:154px;max-height:42px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.brand-fallback{display:none;align-items:baseline;gap:6px}.brand-fallback b{font-size:20px}.brand-fallback span{font-size:17px;color:var(--accent)}.brand>small{display:block;color:#71808a;font-size:10.5px;margin-top:4px;letter-spacing:.02em}.nav-group{margin-top:7px}.nav-group:first-child{margin-top:0}.nav-group-title{display:block;padding:7px 12px 5px;color:#61717b;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.side-nav{gap:0}.side-nav a{min-height:39px;padding:8px 11px;font-size:13.5px;border-radius:8px}.side-nav a.active{box-shadow:none;background:#0b8f93}.sidebar-user{margin-top:8px}
.scope-switch{display:flex;width:max-content;max-width:100%;gap:3px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:3px;margin-bottom:10px}.scope-switch a{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:6px;color:var(--muted);font-size:12.5px;font-weight:700}.scope-switch a.active{background:#e9f8f7;color:var(--accent2)}
.compact-filters{grid-template-columns:1.5fr repeat(3,minmax(135px,.8fr)) auto;padding:9px 10px}.compact-filters .filter-action .btn{width:100%}.filter-search{min-width:190px}.task-tabs{margin-bottom:9px}
.kanban-v7{grid-template-columns:repeat(3,minmax(285px,1fr));gap:9px}.kanban-v7 .kanban-col{min-height:420px;padding:8px}.kanban-stack{display:flex;flex-direction:column;gap:7px}.kanban-stack .kanban-card{margin:0}.kanban-empty{padding:20px 8px;text-align:center;color:var(--muted);font-size:12px}.task-card-v7{position:relative;padding:10px 10px 9px}.task-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.task-id{font-size:10.5px;color:#99a4ab;font-weight:700}.task-card-link{display:block}.task-card-v7 h4{font-size:14px;line-height:1.3;margin:0 0 5px;padding-right:0}.task-card-desc{font-size:12px;line-height:1.4;color:#677680;margin:0 0 8px}.task-card-project{display:grid;grid-template-columns:16px minmax(0,1fr);gap:2px 5px;align-items:center;border-top:1px solid #f0f3f4;padding-top:7px;font-size:12px}.task-card-project i{grid-row:1/3;color:#8ea0a8}.task-card-project small{grid-column:2;color:#97a4ac;font-size:10.5px}.task-card-people{display:flex;align-items:center;gap:7px;margin-top:7px}.task-card-people strong{display:block;font-size:12.5px}.task-card-people small{display:block;color:var(--muted);font-size:10.5px;margin-top:1px}.task-card-progress{margin-top:8px}.task-card-progress>div:first-child{display:flex;justify-content:space-between;font-size:10.5px;color:var(--muted);margin-bottom:4px}.task-card-progress .progress-line{height:4px}.task-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;font-size:11px}.task-deadline{display:flex;align-items:center;gap:5px;color:#6e7c85;font-weight:700}.task-deadline.over{color:var(--danger)}.task-mini-metrics{display:flex;gap:7px;color:#84929b}.task-mini-metrics span{display:inline-flex;align-items:center;gap:3px}.task-card-actions{position:absolute;right:7px;bottom:7px;display:flex;gap:3px;opacity:0;transition:.15s}.task-card-v7:hover .task-card-actions{opacity:1}.task-card-actions a,.task-card-actions button{width:28px;height:28px;border:1px solid var(--line);border-radius:7px;background:#fff;display:grid;place-items:center;color:#66757e;cursor:pointer}.task-table-v7 .title-cell{min-width:260px}.list-progress{font-size:12px;font-weight:700}.text-danger{color:var(--danger)!important}
.breadcrumbs{display:flex;align-items:center;gap:7px;color:#7f8d96;font-size:12px;margin-bottom:8px}.breadcrumbs a:hover{color:var(--accent2)}.breadcrumbs i{font-size:8px}.task-head-v7{align-items:flex-start}.task-head-v7 h1{margin-top:6px}.task-head-badges{display:flex;gap:6px}.btn-count{background:rgba(255,255,255,.2);border-radius:10px;padding:1px 6px;font-size:10px}.task-subnav{display:flex;gap:3px;border-bottom:1px solid var(--line);margin-bottom:10px}.task-subnav a{display:flex;align-items:center;gap:7px;padding:9px 11px;font-size:12.5px;font-weight:700;color:#74828b;border-bottom:2px solid transparent}.task-subnav a.active{color:var(--accent2);border-bottom-color:var(--accent)}.task-subnav a span{font-size:10px;background:#edf2f4;border-radius:10px;padding:1px 5px}.task-description{font-size:14px;line-height:1.55;color:#31404a}.sticky-task-side{position:sticky;top:78px}.task-status-form{border-top:1px solid var(--line);padding-top:10px;margin-top:10px}.task-status-form label{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.files-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.file-row{margin:0}
.task-chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:10px;align-items:start}.task-chat-panel{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.chat-context{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-bottom:1px solid var(--line);background:#fbfcfd}.chat-context strong{display:block;font-size:14px}.chat-context span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.chat-context a{font-size:12px;color:var(--accent2);font-weight:700}.task-chat-messages{height:calc(100vh - 330px);min-height:360px;max-height:650px;overflow:auto;padding:14px;background:#f7f9fa}.task-message{display:flex;gap:8px;align-items:flex-end;margin-bottom:10px;max-width:82%}.task-message.own{margin-left:auto;flex-direction:row-reverse}.message-bubble{background:#fff;border:1px solid #e6ecef;border-radius:11px 11px 11px 3px;padding:8px 10px;min-width:120px}.task-message.own .message-bubble{background:#e9f8f7;border-color:#ccebea;border-radius:11px 11px 3px 11px}.message-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:3px}.message-meta strong{font-size:11.5px}.message-meta span{font-size:9.5px;color:#89969f}.message-text{font-size:13px;line-height:1.45}.task-chat-compose{padding:9px 10px;border-top:1px solid var(--line);background:#fff}.task-chat-compose .textarea{min-height:66px}.chat-compose-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:7px}.chat-compose-actions>span{font-size:10.5px;color:var(--muted)}.chat-task-summary{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;position:sticky;top:76px}.chat-task-summary h3{font-size:14px;margin:0 0 4px}.chat-task-summary>p{font-size:11px;color:var(--muted);margin:0 0 10px}.chat-empty{text-align:center;color:var(--muted);font-size:12px;padding:40px 10px}
.admin-divider{display:flex;align-items:center;gap:10px;margin:16px 0 10px;color:#7d8b94;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.admin-divider:before,.admin-divider:after{content:"";height:1px;background:var(--line);flex:1}.v7-grid{grid-template-columns:1.4fr .8fr}.dashboard-task-list{padding-top:2px}.dash-task-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #f0f3f4}.dash-task-row:last-child{border-bottom:0}.dash-task-main{min-width:0;flex:1}.dash-task-title{display:flex;align-items:center;gap:7px}.dash-task-title strong,.dash-task-main>strong{font-size:13px;line-height:1.3}.dash-task-meta{display:flex;gap:10px;flex-wrap:wrap;color:#85929a;font-size:10.5px;margin-top:4px}.dash-task-meta span{display:inline-flex;align-items:center;gap:4px}.panel-subtitle{margin:2px 0 0;color:var(--muted);font-size:10.5px}.manager-load-row{grid-template-columns:minmax(0,1fr) auto}.manager-load-row .load-meta{display:flex;gap:7px;align-items:center}.reminder-list{padding-top:2px}.reminder-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #f0f3f4}.reminder-time{border-right:1px solid var(--line)}.reminder-time strong{font-size:14px;display:block}.reminder-time span{font-size:11px;color:var(--muted)}.reminder-main strong{font-size:13px;display:block}.reminder-main span{font-size:11px;color:var(--muted)}.reminder-row.past{opacity:.65}
@media(max-width:1380px){.kanban-v7{grid-template-columns:repeat(3,minmax(260px,1fr))}.compact-filters{grid-template-columns:1.4fr repeat(2,minmax(140px,.8fr)) auto}.task-chat-layout{grid-template-columns:minmax(0,1fr) 245px}}
@media(max-width:1120px){.kanban-v7{grid-template-columns:repeat(3,minmax(280px,1fr));overflow:auto}.compact-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-action{align-self:end}.v7-grid,.task-chat-layout{grid-template-columns:1fr}.chat-task-summary{position:static}.task-chat-messages{height:500px}}
@media(max-width:850px){:root{--sidebar-w:228px}.brand-logo{max-width:165px}.task-card-actions{opacity:1}.files-grid{grid-template-columns:1fr}}
@media(max-width:650px){.content{padding:12px}.scope-switch{width:100%}.scope-switch a{flex:1;justify-content:center}.compact-filters{grid-template-columns:1fr}.task-subnav{overflow:auto}.task-subnav a{white-space:nowrap}.task-chat-messages{height:55vh}.chat-compose-actions>span{display:none}.dash-task-row{align-items:flex-start}.reminder-row{grid-template-columns:46px minmax(0,1fr)}.reminder-row>.badge{display:none}}
.login-company-logo{display:block;width:min(290px,70%);max-height:100px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1);margin-bottom:18px}.login-logo h1{font-size:22px;margin:0 0 4px}.login-logo p{font-size:13px}.inline-check{display:flex!important;align-items:center;gap:7px;color:var(--text)!important;font-size:13px!important}.inline-check input{width:16px;height:16px}
.report-grid-v7{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-card-v7{margin:0}.report-period{font-size:11px;color:var(--muted);margin-bottom:8px}.report-preview{font-size:13px;line-height:1.5;color:#42515a}@media(max-width:900px){.report-grid-v7{grid-template-columns:1fr}}
/* V8 API settings */
.api-settings-grid{align-items:start}.api-secret-row{display:flex;gap:10px;align-items:center;padding:14px 16px}.api-secret-row code{flex:1;min-width:0;padding:12px 14px;border:1px solid var(--line,#e5e7eb);border-radius:8px;background:#f7f8fa;overflow-wrap:anywhere;font-size:14px}.api-doc pre{margin:8px 0 16px;padding:14px;border-radius:8px;background:#111827;color:#e5e7eb;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.5}.api-doc h3{margin:18px 0 6px;font-size:15px}.api-doc p{margin:6px 0 10px;line-height:1.5}.notice{margin:0 0 14px;padding:11px 14px;border-radius:8px;font-size:14px}.notice-success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.notice-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.sidebar-api-link{display:flex!important;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;color:#94a3b8;text-decoration:none}.sidebar-api-link:hover,.sidebar-api-link.active{background:rgba(255,255,255,.08);color:#fff}

/* =========================================================
   V9 UI POLISH — complete visual system, 100% / 125% friendly
   ========================================================= */
:root{
  --bg:#f4f7f8;--surface:#fff;--surface-2:#f8fafb;--surface-3:#eef3f4;
  --text:#1c2a31;--text-2:#42545d;--muted:#72828a;--line:#dfe7ea;
  --accent:#22b8ad;--accent2:#11877f;--accent-soft:#e8f8f6;
  --danger:#dc4c5a;--danger-soft:#fff0f2;--warning:#d18b1f;--warning-soft:#fff8e8;
  --success:#238b61;--success-soft:#ebf8f1;--info:#3777c7;--info-soft:#edf4ff;
  --shadow-xs:0 1px 2px rgba(24,39,46,.04);--shadow-sm:0 4px 14px rgba(24,39,46,.06);
  --radius:10px;--radius-sm:7px;--sidebar-w:216px;
}
*{box-sizing:border-box}html{font-size:16px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.45;letter-spacing:.002em}
a{color:inherit;text-decoration:none}a:hover{color:var(--accent2)}button,input,select,textarea{font:inherit;color:inherit}button{line-height:1.2}img{max-width:100%}strong{font-weight:700}small{font-size:12.5px}.content{padding:17px 18px 22px;max-width:100%;overflow-x:hidden}
.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 12px}.page-head h1{font-size:26px;line-height:1.15;letter-spacing:-.02em;margin:0 0 4px;font-weight:780}.page-head p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.42}.head-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.section-title,.panel-head h2{font-size:15.5px;line-height:1.25;margin:0;font-weight:760}.panel-subtitle{font-size:12.5px!important;line-height:1.35}.admin-divider{margin:13px 0 9px;font-size:11px}
.panel,.card,.stat-card,.task-card,.project-card,.manager-card,.chat-task-summary,.task-chat-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-xs)}.panel{border-radius:var(--radius);overflow:hidden;margin-bottom:10px}.panel-head{min-height:44px;padding:9px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);background:linear-gradient(#fff,#fbfcfc)}.panel-head a{font-size:12.5px;color:var(--accent2);font-weight:700}.panel-body{padding:10px 12px}.empty,.empty-state{padding:22px 12px;text-align:center;color:var(--muted);font-size:13px;background:var(--surface-2);border:1px dashed #d7e0e3;border-radius:8px}.empty i,.empty-state i{font-size:22px;display:block;margin-bottom:7px;color:#a9b6bc}
.btn{min-height:36px;padding:8px 12px;border-radius:8px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:13.5px;font-weight:720;cursor:pointer;transition:.15s ease;white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(29,51,59,.08)}.btn:active{transform:none}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:var(--accent2);color:#fff}.btn-secondary,.btn-light{background:#fff;color:var(--text-2);border-color:var(--line)}.btn-danger{background:var(--danger);color:#fff}.btn-sm{min-height:31px;padding:6px 9px;font-size:12.5px}.icon-btn,.top-icon-btn{display:inline-grid;place-items:center;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer;transition:.15s}.icon-btn:hover,.top-icon-btn:hover{border-color:#cbd7db;background:var(--surface-2);color:var(--accent2)}
.form-group{margin:0 0 10px}.form-group label,.field-label,.filter-group label{display:block;margin:0 0 5px;color:var(--text-2);font-size:12.5px;font-weight:700}.input,.select,.textarea,input[type=text],input[type=search],input[type=date],input[type=datetime-local],input[type=password],input[type=email],select,textarea{width:100%;min-height:38px;border:1px solid #d8e1e4;border-radius:8px;background:#fff;padding:8px 10px;font-size:14px;outline:none;transition:.15s}.textarea,textarea{min-height:86px;resize:vertical}.input:focus,.select:focus,.textarea:focus,input:focus,select:focus,textarea:focus{border-color:#70cbc5;box-shadow:0 0 0 3px rgba(34,184,173,.11)}input::placeholder,textarea::placeholder{color:#9aa8ae}.filters,.filter-bar,.compact-filters{background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px;gap:8px;margin-bottom:10px;box-shadow:var(--shadow-xs)}
.table-wrap{width:100%;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}thead th{position:sticky;top:0;z-index:1;background:#f6f9fa;color:#60727b;text-align:left;font-size:11.5px;text-transform:none;letter-spacing:.01em;font-weight:760;padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap}tbody td{padding:9px 10px;border-bottom:1px solid #edf1f2;vertical-align:middle;color:#33454d}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#fbfdfd}.title-cell strong{font-size:13.5px;line-height:1.32}.muted,.text-muted{color:var(--muted)}
.badge,.status-badge,.priority-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:24px;padding:3px 7px;border-radius:999px;font-size:11px;line-height:1.1;font-weight:760;white-space:nowrap;border:1px solid transparent}.status-new{background:#edf4ff;color:#356ea9;border-color:#d7e6f8}.status-in_progress{background:#fff7e8;color:#9a6817;border-color:#f4dfb0}.status-review{background:#f3edff;color:#7451a6;border-color:#e3d7f7}.status-archived{background:#ebf8f1;color:#237354;border-color:#cfeadf}.status-overdue{background:#fff0f2;color:#b53f4d;border-color:#f5cfd4}.priority-critical,.priority-highest{background:#fff0f2;color:#b53f4d;border-color:#f5cfd4}.priority-high{background:#fff6e7;color:#a56a10;border-color:#f1ddb6}.priority-medium{background:#eef5ff;color:#3e6eaa;border-color:#d5e4f8}.priority-low,.priority-lowest,.priority-planned{background:#f1f4f5;color:#66777f;border-color:#e0e6e8}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px;margin-bottom:10px}.stat-card{border-radius:10px;padding:11px 12px;display:flex;align-items:center;gap:10px;min-height:78px}.stat-icon{width:36px;height:36px;border-radius:9px;background:var(--accent-soft);color:var(--accent2);display:grid;place-items:center;flex:0 0 auto}.stat-card.red .stat-icon{background:var(--danger-soft);color:var(--danger)}.stat-card.blue .stat-icon{background:var(--info-soft);color:var(--info)}.stat-card.purple .stat-icon{background:#f4efff;color:#7857a7}.stat-value{font-size:23px;line-height:1;font-weight:790;letter-spacing:-.02em}.stat-label{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.2}
.sidebar{width:var(--sidebar-w);background:#111719;color:#d8e0e3;box-shadow:6px 0 22px rgba(5,14,18,.07)}.brand{padding:16px 14px 12px;border-bottom:1px solid rgba(255,255,255,.07)}.brand-logo-link{display:flex;align-items:center;min-height:38px}.brand-logo{max-width:154px;max-height:36px;filter:brightness(0) invert(1)}.brand small{display:block;margin-top:5px;color:#78878d;font-size:10.5px;letter-spacing:.04em}.side-nav{padding:9px 8px}.nav-group{margin-bottom:10px}.nav-group-title{display:block;padding:5px 9px;color:#68787e;font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.side-nav a{min-height:38px;padding:8px 9px;border-radius:8px;display:flex;align-items:center;gap:9px;color:#b8c4c8;font-size:13px;font-weight:650;margin:2px 0}.side-nav a i{width:17px;text-align:center;color:#829399}.side-nav a:hover{background:rgba(255,255,255,.055);color:#fff}.side-nav a.active{background:#173b3a;color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.side-nav a.active i{color:#63d6cd}.sidebar-bottom{padding:9px;border-top:1px solid rgba(255,255,255,.07)}.sidebar-user{padding:8px;border-radius:9px;background:rgba(255,255,255,.04);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}.sidebar-user strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user span{font-size:10.5px;color:#829096}.sidebar-user>a{color:#78888e}
.topbar{height:64px;padding:0 18px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(8px);display:flex;align-items:center;gap:12px}.top-search{height:38px;max-width:560px;flex:1;background:#f6f8f9;border:1px solid #e1e7e9;border-radius:9px;display:flex;align-items:center;padding:0 10px;gap:8px}.top-search input{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;min-height:auto!important;font-size:13.5px}.top-search i{color:#91a0a7}.top-actions{margin-left:auto;display:flex;align-items:center;gap:7px}.top-icon-btn{width:37px;height:37px;position:relative}.top-icon-btn>span{position:absolute;right:-4px;top:-5px;background:var(--danger);color:#fff;min-width:18px;height:18px;border-radius:9px;padding:0 5px;font-size:9px;display:flex;align-items:center;justify-content:center;border:2px solid #fff}.top-date{display:flex;align-items:center;gap:7px;color:#62737c;font-size:12px;padding:0 7px}.top-date small{display:block;font-size:9.5px;color:#97a4aa}.top-user{display:flex;align-items:center;gap:7px;padding-left:8px;border-left:1px solid var(--line)}.top-user-name{font-size:12.5px;font-weight:700;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avatar{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#dff4f2;color:var(--accent2);font-size:11px;font-weight:800;flex:0 0 auto}.avatar.sm{width:29px;height:29px;font-size:10px}
.dashboard-grid,.grid-2,.content-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:10px}.dash-task-row{min-height:52px;padding:8px 0}.dash-task-title strong,.dash-task-main>strong{font-size:13.5px}.dash-task-meta{font-size:11px;gap:9px;margin-top:4px}.load-row{padding:8px 0;border-bottom:1px solid #edf1f2}.person-mini strong{font-size:12.5px}.load-meta b,.load-meta em{font-size:11px}
.kanban-v7,.kanban{display:grid;grid-template-columns:repeat(3,minmax(280px,1fr));gap:8px;align-items:start}.kanban-col{background:#edf2f3;border:1px solid #dfe7e9;border-radius:10px;padding:7px;min-height:360px}.kanban-col-head,.kanban-header{display:flex;align-items:center;justify-content:space-between;padding:5px 4px 8px;font-size:12px;font-weight:760}.kanban-stack{gap:6px}.task-card-v7,.kanban-card{border-radius:9px;padding:9px 9px 8px;background:#fff;border:1px solid #dde5e8;box-shadow:0 1px 3px rgba(23,43,51,.04);transition:.15s}.task-card-v7:hover,.kanban-card:hover{border-color:#c9d9dc;box-shadow:0 5px 14px rgba(23,43,51,.07);transform:translateY(-1px)}.task-card-v7 h4{font-size:13.5px;line-height:1.32;margin-bottom:4px}.task-card-desc{font-size:11.7px;line-height:1.38;margin-bottom:7px}.task-card-project{font-size:11.5px;padding-top:6px}.task-card-project small,.task-card-people small{font-size:10.5px}.task-card-people strong{font-size:12px}.task-card-footer{font-size:10.8px;margin-top:7px}.task-card-actions a,.task-card-actions button{width:27px;height:27px;border-radius:7px}.progress-line{height:5px;border-radius:99px;background:#e9eef0;overflow:hidden}.progress-line>span,.progress-fill{display:block;height:100%;background:var(--accent);border-radius:inherit}
.breadcrumbs{font-size:11.5px;margin-bottom:7px}.task-subnav{margin-bottom:9px}.task-subnav a{padding:8px 10px;font-size:12.5px}.task-description{font-size:13.5px;line-height:1.58}.details-list,.meta-list{display:grid;gap:0}.details-row,.meta-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid #edf1f2;font-size:12.5px}.details-row:last-child,.meta-row:last-child{border-bottom:0}.details-row>span:first-child,.meta-row>span:first-child{color:var(--muted)}.file-row{border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff}.files-grid{gap:6px}.activity-item,.timeline-item{padding:9px 0;border-bottom:1px solid #edf1f2;font-size:12.5px}.activity-item:last-child,.timeline-item:last-child{border-bottom:0}
.task-chat-panel,.chat-task-summary{border-radius:10px}.chat-context{padding:9px 11px}.task-chat-messages{background:#f5f8f9;padding:11px}.task-message{margin-bottom:8px}.message-bubble{padding:7px 9px;border-radius:10px}.message-text{font-size:13px}.task-chat-compose{padding:8px 9px}.task-chat-compose .textarea{min-height:62px}.chat-task-summary{padding:10px}.chat-task-summary h3{font-size:13.5px}
.modal,.modal-card,.dialog{border-radius:12px!important;border:1px solid var(--line)!important;box-shadow:0 24px 70px rgba(19,37,44,.22)!important;background:#fff}.modal-header,.modal-head{padding:12px 14px;border-bottom:1px solid var(--line)}.modal-header h2,.modal-head h2{font-size:17px;margin:0}.modal-body{padding:12px 14px}.modal-footer{padding:10px 14px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:7px}
.notice,.alert{border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.4}.notice-success,.alert-success{background:var(--success-soft);color:#176746;border:1px solid #c9e9db}.notice-error,.alert-error{background:var(--danger-soft);color:#a53846;border:1px solid #f1cbd1}.notice-warning,.alert-warning{background:var(--warning-soft);color:#8f6017;border:1px solid #efdcae}.pagination{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.pagination a,.pagination span{min-width:32px;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:7px;background:#fff;display:grid;place-items:center;font-size:12px}.pagination .active{background:var(--accent);border-color:var(--accent);color:#fff}
.api-settings-grid,.report-grid-v7{gap:9px}.api-secret-row{padding:10px 12px}.api-secret-row code{padding:9px 10px;font-size:12.5px}.api-doc pre{padding:11px;font-size:12px;border-radius:8px}.api-doc h3{font-size:14px;margin:14px 0 5px}.report-preview{font-size:12.5px}.calendar-grid,.calendar{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.calendar-day{min-height:112px;padding:7px;border-right:1px solid #edf1f2;border-bottom:1px solid #edf1f2}.calendar-task{padding:5px 6px;border-radius:6px;font-size:10.8px;line-height:1.25;margin-top:4px;background:var(--accent-soft);color:#205f5b;border-left:3px solid var(--accent)}
.login-shell,.login-page{background:#f2f6f7}.login-card{border-radius:14px;border:1px solid var(--line);box-shadow:0 18px 50px rgba(24,39,46,.1)}
@media(max-width:1380px){body{font-size:14.5px}.content{padding:15px}.stats-grid{grid-template-columns:repeat(4,minmax(130px,1fr))}.stat-card{padding:10px;min-height:74px}.top-user-name{max-width:115px}.kanban-v7,.kanban{grid-template-columns:repeat(3,minmax(255px,1fr));overflow:auto}.dashboard-grid,.grid-2,.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(250px,.75fr)}}
@media(max-width:1120px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.grid-2,.content-grid,.task-chat-layout{grid-template-columns:1fr}.kanban-v7,.kanban{grid-template-columns:repeat(3,minmax(280px,1fr));overflow-x:auto}.top-date{display:none}.page-head h1{font-size:24px}}
@media(max-width:850px){:root{--sidebar-w:228px}.content{padding:13px}.topbar{padding:0 12px}.top-user-name{display:none}.page-head{flex-direction:column;align-items:stretch}.head-actions{width:100%}.head-actions .btn{flex:0 0 auto}.task-card-actions{opacity:1}.table-wrap{border-radius:8px}}
@media(max-width:650px){body{font-size:14px}.content{padding:10px}.top-search{max-width:none}.topbar{height:58px}.stats-grid{grid-template-columns:1fr 1fr;gap:6px}.stat-card{min-height:70px}.stat-value{font-size:21px}.panel-head,.panel-body{padding-left:10px;padding-right:10px}.page-head h1{font-size:22px}.btn{min-height:35px}.kanban-v7,.kanban{display:flex;overflow-x:auto;scroll-snap-type:x proximity}.kanban-col{min-width:86vw;scroll-snap-align:start}.details-row,.meta-row{grid-template-columns:1fr;gap:2px}.top-actions{gap:4px}.top-date{display:none}.top-user{padding-left:4px}.modal-body{padding:10px}}
/* V10 dashboard: daily work first, management second */
.dashboard-modules{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 9px}.dashboard-module{min-width:0;height:46px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:720;color:#26343c;box-shadow:var(--shadow-xs);transition:border-color .16s ease,background .16s ease,transform .16s ease}.dashboard-module>i:first-child{width:25px;height:25px;border-radius:7px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent2);font-size:12px;flex:0 0 auto}.dashboard-module span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-module .module-arrow{margin-left:auto;color:#9aa7ae;font-size:10px}.dashboard-module[href]:hover{border-color:#b9dfe0;background:#fbfefe;transform:translateY(-1px)}.dashboard-module.is-disabled{background:#f6f8f9;color:#9aa5ab;box-shadow:none;cursor:not-allowed}.dashboard-module.is-disabled>i:first-child{background:#edf0f2;color:#a1abb1}.dashboard-module.is-disabled .module-arrow{color:#b4bdc2}.stat-card[href]{position:relative;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.stat-card[href]:hover{border-color:#c7dddf;box-shadow:0 5px 14px rgba(24,35,45,.07);transform:translateY(-1px)}.stat-open{position:absolute;right:10px;top:10px;color:#a9b4ba;font-size:9px}.dashboard-primary-stats{margin-bottom:8px}.dashboard-inline-tasks{background:#fff;border:1px solid var(--line);border-radius:11px;padding:2px 12px 3px;box-shadow:var(--shadow-xs);margin-bottom:10px}.dashboard-inline-tasks .dash-task-row{min-height:49px}.dashboard-inline-empty{min-height:50px;border:1px dashed #d6e0e3;border-radius:10px;background:#f9fbfb;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;margin-bottom:10px}.dashboard-inline-empty i{color:var(--accent2);font-size:16px}.team-summary{margin-bottom:0}.module-placeholder{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;display:flex;align-items:flex-start;gap:13px;box-shadow:var(--shadow-xs)}.module-placeholder-icon{width:42px;height:42px;border-radius:10px;background:var(--accent-soft);color:var(--accent2);display:grid;place-items:center;flex:0 0 auto}.module-placeholder strong{font-size:15px}.module-placeholder p{font-size:13px;line-height:1.45;color:var(--muted);margin:4px 0 0;max-width:720px}
@media(max-width:1180px){.dashboard-modules{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.dashboard-modules{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-module{height:43px;padding:0 10px}.dashboard-inline-tasks{padding-left:10px;padding-right:10px}}
@media(max-width:460px){.dashboard-modules{grid-template-columns:1fr}.dashboard-module{height:42px}}

/* V11: dashboard inline task feed removed by design */
.dashboard-inline-tasks,.dashboard-inline-empty{display:none!important}

/* V12 — personal task workspace */
.personal-task-tabs{display:flex;gap:6px;margin:0 0 10px}.personal-task-tabs a{display:flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:13px;font-weight:750;color:#65747c}.personal-task-tabs a.active{background:#eaf8f8;border-color:#bfe2e2;color:var(--accent2)}
.my-task-filters{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(190px,.8fr) auto auto;align-items:end;gap:8px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:10px}.view-switch-v12{display:flex;gap:4px;margin-bottom:10px}.view-switch-v12 a{padding:8px 11px;border-radius:8px;font-size:12.5px;font-weight:750;color:#66757d}.view-switch-v12 a.active{background:#eaf8f8;color:var(--accent2)}
.notice{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:9px;margin-bottom:10px;font-size:12.5px}.notice strong,.notice span{display:block}.notice span{margin-top:2px}.notice-warn{background:#fff8e9;border:1px solid #f3dfac;color:#8a6818}
.personal-kanban{display:grid;grid-template-columns:repeat(7,minmax(230px,1fr));gap:8px;overflow-x:auto;padding-bottom:8px}.personal-kanban-col{background:#eef2f3;border:1px solid #dfe6e8;border-radius:10px;padding:7px;min-height:330px}.personal-kanban-col>header{display:flex;justify-content:space-between;gap:8px;padding:5px 4px 9px}.personal-kanban-col>header strong{font-size:12.5px;white-space:nowrap}.personal-kanban-col>header span{font-size:11px;background:#fff;border:1px solid #dce4e6;border-radius:99px;min-width:23px;height:23px;display:grid;place-items:center}.personal-kanban-stack{display:flex;flex-direction:column;gap:6px}.personal-kanban-empty{padding:18px 6px;text-align:center;color:#9aa6ad;font-size:12px}
.my-task-card{background:#fff;border:1px solid #dce4e6;border-radius:9px;padding:9px;box-shadow:0 1px 3px rgba(20,40,50,.035);transition:.15s}.my-task-card:hover{border-color:#bdd4d7;box-shadow:0 4px 12px rgba(20,40,50,.06)}.my-task-project{font-size:10.5px;color:#7d8b93;font-weight:750;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-task-card h3{font-size:13.5px;line-height:1.3;margin:0 0 4px;overflow-wrap:anywhere}.my-task-card p{font-size:11.5px;line-height:1.38;color:#718089;margin:0 0 7px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.my-task-assignee{display:flex;align-items:center;gap:6px;border-top:1px solid #f0f3f4;padding-top:7px;margin-top:6px;font-size:11.5px;font-weight:700}.my-task-assignee small{color:#8c989f;font-weight:600}.my-task-bottom{display:flex;justify-content:space-between;align-items:center;gap:7px;border-top:1px solid #f0f3f4;margin-top:7px;padding-top:7px;font-size:10.8px}.task-kind{display:inline-flex;align-items:center;gap:5px;font-weight:800}.task-kind.fire{color:#e45b45}.task-kind.planned{color:#547f9e}.task-kind i{font-size:11px}
.status-clarification{background:#fff3db;color:#a46b00}.status-postponed{background:#f0f1f3;color:#727b82}.status-completed{background:#eaf9f1;color:#168b58}
.my-task-list{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.my-task-list-row{display:grid;grid-template-columns:minmax(280px,1fr) 150px 90px 110px 115px;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #edf1f2;font-size:12px}.my-task-list-row:last-child{border-bottom:0}.my-task-list-row>div small{display:block;color:#829098;font-size:10.5px;margin-bottom:2px}.my-task-list-row>div strong{display:block;font-size:13px}.my-task-list-row p{margin:3px 0 0;color:#77858d;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-assignee{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state-v12{padding:28px;text-align:center;color:#89969d;font-size:13px}
.gantt-v12{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:auto;min-width:760px}.gantt-scale,.gantt-row{display:grid;grid-template-columns:260px minmax(600px,1fr);border-bottom:1px solid #edf1f2}.gantt-scale{position:sticky;top:0;background:#fafcfc;z-index:2;height:42px}.gantt-scale>span{padding:12px;font-size:11px;font-weight:800}.gantt-scale>div{position:relative;border-left:1px solid #e7edef}.gantt-scale b{position:absolute;top:12px;font-size:9.5px;color:#829098;transform:translateX(-50%)}.gantt-row>div:first-child{padding:8px 12px}.gantt-row small{display:block;color:#89969d;font-size:9.5px}.gantt-row strong{display:block;font-size:11.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gantt-track{position:relative;border-left:1px solid #edf1f2;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(12.5% - 1px),#f0f3f4 calc(12.5% - 1px),#f0f3f4 12.5%)}.gantt-track>span{position:absolute;top:12px;height:17px;border-radius:5px;min-width:5px}.gantt-track>.status-new{background:#9ba7ae}.gantt-track>.status-clarification{background:#d8a438}.gantt-track>.status-progress{background:#3b91d3}.gantt-track>.status-postponed{background:#8a9298}.gantt-track>.status-review{background:#e4a529}.gantt-track>.status-completed{background:#2fa66c}.gantt-track>.status-done{background:#65747c}
.task-create-v12{width:min(820px,calc(100vw - 24px));max-height:92vh}.task-create-v12 .modal-head p{margin:3px 0 0;color:var(--muted);font-size:12px}.task-form-section{padding:12px 0;border-bottom:1px solid #edf1f2}.task-form-section:first-child{padding-top:0}.task-description{min-height:115px}.section-title{display:flex;align-items:flex-start;gap:9px;margin-bottom:9px}.section-title>i{width:30px;height:30px;border-radius:8px;background:#eef8f8;color:var(--accent2);display:grid;place-items:center}.section-title strong,.section-title span{display:block}.section-title strong{font-size:13.5px}.section-title span{font-size:11.5px;color:#7b8991;margin-top:2px}.section-title.with-action{justify-content:space-between;align-items:center}.multi-select-v12{height:94px!important;padding:4px!important}.field-help{display:block;color:#8b989f;font-size:10.5px;margin-top:4px}.priority-choice{display:flex;gap:6px}.priority-choice input{position:absolute;opacity:0}.priority-choice span{height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:750;cursor:pointer}.priority-choice input:checked+span{border-color:#8fcfd0;background:#eaf8f8;color:#176f72}.priority-choice label:first-child i{color:#e45b45}.check-builder{display:flex;flex-direction:column;gap:6px}.check-builder-row{display:grid;grid-template-columns:12px minmax(220px,1fr) minmax(170px,.55fr) 38px;gap:6px;align-items:center}.check-dot{width:8px;height:8px;border:2px solid #aab6bc;border-radius:2px}.check-remove{height:38px}.file-drop-v12{min-height:92px;border:1px dashed #b9cbd0;border-radius:10px;background:#fafcfc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;color:#6f7e86}.file-drop-v12:hover{border-color:#78bfc1;background:#f5fbfb}.file-drop-v12>i{font-size:20px;color:var(--accent2)}.file-drop-v12 strong{font-size:12.5px}.file-drop-v12 span{font-size:10.5px}.file-drop-v12 input{position:absolute;width:1px;height:1px;opacity:0}.sticky-actions{position:sticky;bottom:-10px;background:#fff;padding:10px 0 0;border-top:1px solid #edf1f2;margin-top:0}
@media(max-width:1100px){.personal-kanban{grid-template-columns:repeat(7,minmax(245px,1fr))}.my-task-list-row{grid-template-columns:minmax(250px,1fr) 130px 90px 100px}.my-task-list-row .badge{display:none}}
@media(max-width:700px){.my-task-filters{grid-template-columns:1fr}.personal-task-tabs{display:grid;grid-template-columns:1fr 1fr}.personal-task-tabs a{justify-content:center}.my-task-list-row{grid-template-columns:1fr auto;align-items:start}.my-task-list-row>span:not(.badge){font-size:11px}.my-task-list-row .list-assignee{grid-column:1/-1}.check-builder-row{grid-template-columns:12px 1fr 38px}.check-builder-row select{grid-column:2/3}.task-create-v12 .form-grid{grid-template-columns:1fr}.section-title.with-action{align-items:flex-start;gap:8px}.section-title.with-action .btn{flex:0 0 auto}}
.check-content-v12{display:flex!important;flex:1;min-width:0;align-items:center;justify-content:space-between;gap:8px}.check-content-v12>span{min-width:0;overflow-wrap:anywhere}.check-content-v12 small{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;padding:3px 6px;border-radius:6px;background:#f1f5f6;color:#6e7c84;font-size:10px}.participants-v12{padding:11px!important}.participants-v12 .section-title-row{margin-bottom:8px}.participant-card{display:flex;align-items:center;gap:8px;padding:7px;border-radius:8px}.participant-card.primary{background:#f0f9f9;border:1px solid #d8ecec;margin-bottom:5px}.participant-card>div{min-width:0;flex:1}.participant-card strong,.participant-card span{display:block}.participant-card strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.participant-card span{font-size:10.5px;color:#7d8b93;margin-top:1px}.participant-card>i{color:#d8a038;font-size:11px}.participant-list{display:flex;flex-direction:column}.participant-list .participant-card{border-bottom:1px solid #f0f3f4;border-radius:0}.participant-list .participant-card:last-child{border-bottom:0}.participant-creator{display:grid;grid-template-columns:18px 1fr;gap:2px 5px;padding:8px 7px 2px;border-top:1px solid #edf1f2;margin-top:4px}.participant-creator i{grid-row:1/3;color:#8b989f}.participant-creator span{font-size:9.5px;color:#8b989f}.participant-creator strong{font-size:11px}
/* V13 — chat attachments, automatic links, detailed history, team filters */
.auto-link{color:#087f73;text-decoration:underline;text-decoration-color:rgba(8,127,115,.3);text-underline-offset:2px;overflow-wrap:anywhere}.auto-link:hover{color:#05665d;text-decoration-color:currentColor}
.chat-file-button{position:relative;overflow:hidden;cursor:pointer}.chat-file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.chat-attachments-preview{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.chat-attachments-preview:empty{display:none}.chat-attachments-preview span{display:inline-flex;align-items:center;gap:6px;max-width:260px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;background:#f7faf9;color:#52636b;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-text .auto-link{color:#087f73}.task-message.own .message-text .auto-link{color:#075f58}
.history-v13 .timeline-item{align-items:flex-start}.history-event{min-width:0;flex:1}.history-diff{display:grid;gap:6px;margin-top:8px}.history-diff>div{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1fr) minmax(0,1fr);gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fafcfc;font-size:12px}.history-diff b{color:#34464e}.history-diff .was{color:#8a5555;text-decoration:none}.history-diff .became{color:#167262}.notification-body small{display:block;margin-top:4px;color:#64757d;line-height:1.35}.notification-task-state{display:flex!important;align-items:center;gap:8px;margin-top:6px}.notification-task-state em{font-style:normal;color:#7b8a91;font-size:11.5px}.manager-period-filter{display:grid;grid-template-columns:180px minmax(220px,360px) auto;gap:10px;align-items:end;margin:0 0 8px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.manager-period-filter .field{margin:0}.manager-filter-caption{margin:0 0 12px;color:var(--muted);font-size:12px}.personal-task-tabs .active-danger{background:#fff1f0;color:#b5443b;border-color:#f0c5c1}.personal-task-tabs .active-danger i{color:#c94d42}
@media(max-width:850px){.history-diff>div{grid-template-columns:1fr}.manager-period-filter{grid-template-columns:1fr 1fr}.manager-period-filter .btn{grid-column:1/-1}.notification-task-state{flex-wrap:wrap}}

/* V14 — private idea notebook, minimal rich editor, task relations */
.notes-app{display:grid;grid-template-columns:190px 300px minmax(420px,1fr);min-height:calc(100vh - 155px);border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.notes-categories{padding:10px;border-right:1px solid var(--line);background:#fafbfb;display:flex;flex-direction:column;gap:3px}.notes-categories>a{display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:7px;color:#52626a;font-size:12px;font-weight:700}.notes-categories>a.active,.notes-categories>a:hover{background:#eaf5f4;color:#126e6b}.note-cat-dot{width:7px;height:7px;border-radius:50%;background:#8ab8b6}.note-cat-add{display:flex;margin-top:8px;border-top:1px solid var(--line);padding-top:9px}.note-cat-add input{min-width:0;width:100%;border:0;background:transparent;padding:6px;font-size:11px;outline:0}.note-cat-add button{border:0;background:transparent;color:#5f7779;cursor:pointer}.notes-list{border-right:1px solid var(--line);overflow:auto;background:#fff}.note-list-item{display:block;padding:11px 12px;border-bottom:1px solid #edf1f2;color:inherit}.note-list-item:hover,.note-list-item.active{background:#f3f9f8}.note-list-item>div{display:flex;align-items:center;gap:6px}.note-list-item strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-list-item p{font-size:11px;line-height:1.4;color:#74828a;margin:4px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.note-list-item small{font-size:9.5px;color:#94a0a6}.note-fire{color:#e45b45;font-size:10px}.notes-empty{padding:25px 12px;text-align:center;color:#89969d;font-size:12px}.note-editor-panel{position:relative;padding:18px;min-width:0}.note-form{height:100%;display:flex;flex-direction:column}.note-editor-top{display:flex;gap:10px;align-items:center}.note-title{border:0;outline:0;min-width:0;flex:1;font-size:21px;font-weight:800;color:#23343b;padding:4px 0;background:transparent}.note-fire-toggle input{position:absolute;opacity:0}.note-fire-toggle span{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:7px;padding:6px 8px;font-size:11px;font-weight:750;cursor:pointer}.note-fire-toggle input:checked+span{background:#fff2ef;border-color:#f0c8c1;color:#c44f3f}.note-meta-row{display:flex;gap:7px;margin:10px 0}.note-meta-row select{border:1px solid var(--line);background:#f8faf9;border-radius:7px;padding:6px 8px;font-size:11px;color:#53636a;max-width:230px}.mini-editor-toolbar{display:flex;gap:3px;padding:5px;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;background:#fafcfc}.mini-editor-toolbar button{width:30px;height:27px;border:0;border-radius:5px;background:transparent;color:#586970;cursor:pointer}.mini-editor-toolbar button:hover{background:#eaf4f3;color:#126e6b}.note-content{width:100%;flex:1;min-height:320px;resize:none;border:1px solid var(--line);border-radius:0 0 8px 8px;padding:13px;font:13.5px/1.6 inherit;outline:0;color:#35474f}.note-content:focus{border-color:#8ac7c5;box-shadow:0 0 0 3px rgba(47,150,145,.08)}.note-actions{display:flex;gap:7px;padding-top:10px}.note-archive-form{position:absolute;right:18px;bottom:18px}.note-placeholder{height:100%;display:grid;place-content:center;text-align:center;color:#8b989f}.note-placeholder i{font-size:28px;margin-bottom:8px}.note-placeholder strong,.note-placeholder span{display:block}.note-placeholder strong{font-size:13px}.note-placeholder span{font-size:11px;margin-top:3px}.task-description blockquote{margin:8px 0;padding:8px 11px;border-left:3px solid #7fb9b6;background:#f5f9f9;color:#52636a;border-radius:0 6px 6px 0}.task-description strong{font-weight:800}.task-description em{font-style:italic}.task-relations-v14{display:flex;flex-direction:column;gap:6px}.task-relation{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 9px;border:1px solid var(--line);border-radius:8px;color:inherit}.task-relation:hover{border-color:#a8cecc;background:#f7fbfb}.task-relation>i{color:#6f9695}.task-relation span small,.task-relation span strong{display:block}.task-relation span small{font-size:9.5px;color:#8a989f}.task-relation span strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-sm{height:30px!important;padding:0 9px!important;font-size:10.5px!important}
@media(max-width:1100px){.notes-app{grid-template-columns:160px 260px minmax(360px,1fr)}}@media(max-width:800px){.notes-app{grid-template-columns:120px 1fr}.note-editor-panel{grid-column:1/-1;border-top:1px solid var(--line)}.notes-categories{font-size:10px}.notes-head p{display:none}}@media(max-width:560px){.notes-app{display:block}.notes-categories{flex-direction:row;overflow:auto;border-right:0;border-bottom:1px solid var(--line)}.notes-categories>a{white-space:nowrap}.note-cat-add{display:none}.notes-list{max-height:220px;border-right:0}.note-editor-panel{min-height:460px}.note-meta-row{flex-direction:column}.note-meta-row select{max-width:none}}
/* V15 — calmer task typography, wider task composer */
.task-page-head h1,.personal-kanban-col>header strong,.my-task-card h3,.my-task-project,.my-task-assignee,.task-kind,.my-task-list-row strong,.view-switch-v12 a,.personal-task-tabs a{font-weight:500!important}
.my-task-card h3{font-size:13.5px;letter-spacing:0}.my-task-project{font-weight:400!important;color:#78868d}.my-task-card p{font-weight:400}.personal-kanban-col>header strong{font-size:12.5px}.task-kind{font-weight:500!important}
.icon-fire,.icon-plan{width:15px;height:15px;display:inline-block;flex:0 0 15px;vertical-align:-2px}.task-kind.fire{color:#df5a43}.task-kind.fire .icon-fire{width:16px;height:16px}.priority-choice .fire-only{min-width:44px;justify-content:center}.priority-choice .fire-only .icon-fire{width:18px;height:18px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.task-create-v12{width:min(1180px,calc(100vw - 36px));max-height:94vh}.task-create-v12 .modal-body{padding:18px 22px}.task-create-v12 .task-form-section{padding:14px 0}.task-create-v12 .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.task-create-v12 .task-form-section:nth-of-type(2) .form-grid{grid-template-columns:1fr 1fr}.task-create-v12 .task-description{min-height:125px}.task-create-v12 .multi-select-v12{height:108px!important}.task-create-v12 .check-builder-row{grid-template-columns:12px minmax(300px,1.5fr) minmax(220px,.7fr) 38px}.task-create-v12 .file-drop-v12{min-height:80px}.task-create-v12 .modal-head h2{font-weight:550}.task-create-v12 .section-title strong,.task-create-v12 label{font-weight:500}
.note-autosave-state{margin-left:auto;font-size:10.5px;color:#89969d;min-width:92px;text-align:right}.note-autosave-state.saving{color:#8b6a25}.note-autosave-state.saved{color:#2d7d67}.note-fire-toggle span{font-weight:500}.note-fire-toggle .icon-fire{width:16px;height:16px}
@media(max-width:900px){.task-create-v12 .form-grid,.task-create-v12 .task-form-section:nth-of-type(2) .form-grid{grid-template-columns:1fr 1fr}.task-create-v12 .check-builder-row{grid-template-columns:12px 1fr 38px}.task-create-v12 .check-builder-row select{grid-column:2/3}}
@media(max-width:620px){.task-create-v12{width:calc(100vw - 12px)}.task-create-v12 .form-grid,.task-create-v12 .task-form-section:nth-of-type(2) .form-grid{grid-template-columns:1fr}.task-create-v12 .modal-body{padding:14px}}
/* V16: standalone task creation, dashboard notes and richer Gantt */
.task-create-page{max-width:1180px;margin:0 auto 40px;display:grid;gap:14px}.task-create-page .task-form-section{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.task-create-page .task-form-main{padding:24px}.task-create-page .input-lg{font-size:16px;min-height:48px}.task-create-page .task-description{min-height:180px}.task-create-page .task-create-meta{grid-template-columns:1.5fr 1fr 1fr 1fr}.task-create-actions{position:sticky;bottom:12px;z-index:8;display:flex;justify-content:flex-end;gap:10px;padding:12px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 28px rgba(20,32,29,.08);backdrop-filter:blur(8px)}.back-link{display:inline-flex;gap:7px;align-items:center;color:var(--muted);font-size:12px;margin-bottom:8px}
.dashboard-fire-notes{margin:14px 0 18px}.dashboard-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.dashboard-section-head>div{display:flex;align-items:center;gap:10px}.dashboard-section-head>div:last-child{gap:8px}.dashboard-section-head .icon-fire{width:20px;height:20px}.dashboard-section-head strong{display:block;font-size:14px;font-weight:600}.dashboard-section-head span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.fire-notes-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.fire-note-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;min-width:0;transition:.15s ease}.fire-note-card:hover{border-color:#b9c9c5;box-shadow:0 5px 16px rgba(20,32,29,.06);transform:translateY(-1px)}.fire-note-card>div{display:flex;gap:7px;align-items:center}.fire-note-card .icon-fire{width:14px;height:14px;flex:none}.fire-note-card strong{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fire-note-card p{font-size:11px;line-height:1.45;color:#65747c;margin:7px 0;height:32px;overflow:hidden}.fire-note-card small{font-size:9.5px;color:#929da2}.fire-notes-empty{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px dashed #cbd5d2;border-radius:10px;padding:16px}.fire-notes-empty strong{display:block;font-size:13px;font-weight:600}.fire-notes-empty span{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.gantt-v12{overflow:auto;max-height:calc(100vh - 230px);position:relative}.gantt-scale{position:sticky!important;top:0;z-index:20!important;box-shadow:0 1px 0 var(--line)}.gantt-scale>span{position:sticky;left:0;z-index:22;background:#fafcfc}.gantt-task-name{display:block;padding:8px 12px;position:sticky;left:0;z-index:5;background:#fff;border-right:1px solid #edf1f2}.gantt-row:hover .gantt-task-name{background:#fafcfc}.gantt-bar{position:absolute;top:12px;height:17px;border-radius:5px;min-width:7px;display:block}.gantt-track>.gantt-bar.status-new{background:#9ba7ae}.gantt-track>.gantt-bar.status-clarification{background:#d8a438}.gantt-track>.gantt-bar.status-progress{background:#3b91d3}.gantt-track>.gantt-bar.status-postponed{background:#8a9298}.gantt-track>.gantt-bar.status-review{background:#e4a529}.gantt-track>.gantt-bar.status-completed{background:#2fa66c}.gantt-track>.gantt-bar.status-done{background:#65747c}.gantt-tooltip{display:none;position:absolute;left:50%;bottom:26px;transform:translateX(-50%);width:290px;background:#17211f;color:#fff;border-radius:9px;padding:12px;z-index:60;box-shadow:0 12px 32px rgba(0,0,0,.2);font-size:11px;line-height:1.4;pointer-events:none}.gantt-bar:hover{z-index:50}.gantt-bar:hover .gantt-tooltip{display:block}.gantt-tooltip b{display:block;font-size:12.5px;font-weight:600;margin-bottom:2px}.gantt-tooltip em{display:block;color:#aebbb7;font-style:normal;margin-bottom:8px}.gantt-tooltip span{display:block;margin:3px 0}.gantt-tooltip span strong{font-weight:600;color:#cbd7d3}.gantt-tooltip small{display:block;border-top:1px solid rgba(255,255,255,.12);margin-top:8px;padding-top:7px;color:#9ed7c8}
@media(max-width:1100px){.fire-notes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.task-create-page .task-create-meta{grid-template-columns:1fr 1fr}}@media(max-width:700px){.fire-notes-grid{grid-template-columns:1fr}.dashboard-section-head,.fire-notes-empty{align-items:flex-start;flex-direction:column}.task-create-page .task-create-meta{grid-template-columns:1fr}.task-create-page .task-form-section{padding:14px}}

/* V18 — compact task chat and real attachment previews */
.task-chat-panel{display:flex;flex-direction:column;max-height:calc(100dvh - 132px)}
.task-chat-messages{height:auto;min-height:240px;max-height:none;flex:1 1 auto;overflow:auto}
.task-chat-compose{flex:0 0 auto}
.task-chat-compose .textarea{min-height:48px;max-height:96px;resize:vertical}
.chat-attachments-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;max-height:126px;overflow:auto}
.chat-preview-item{display:flex;align-items:center;gap:8px;min-width:0;padding:6px;border:1px solid var(--line);border-radius:8px;background:#f7faf9}
.chat-preview-item img{width:52px;height:52px;object-fit:cover;border-radius:6px;flex:0 0 52px}
.chat-preview-item>span{min-width:0}.chat-preview-item strong{display:block;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-preview-item small{display:block;margin-top:2px;color:var(--muted);font-size:10px}
.chat-preview-file,.message-file-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:6px;background:#e9efef;color:#607077;font-size:9px;letter-spacing:.04em;flex:0 0 52px}
.message-files{display:grid;gap:6px;margin-top:7px}
.message-file{display:flex;align-items:center;gap:8px;min-width:210px;max-width:360px;padding:6px;border:1px solid #dfe8e9;border-radius:8px;background:rgba(255,255,255,.7);color:inherit;text-decoration:none}
.message-file img{width:112px;height:82px;object-fit:cover;border-radius:6px;background:#eef2f2}
.message-file.is-image{display:block}.message-file.is-image>span{display:block;margin-top:5px}
.message-file strong{display:block;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-file small{display:block;color:var(--muted);font-size:10px;margin-top:2px}
.file-source-chat{display:inline-flex;padding:1px 5px;border-radius:5px;background:#e7f5f3;color:#08766c;font-size:9.5px}
@media(max-width:1120px){.task-chat-panel{max-height:calc(100dvh - 112px)}.task-chat-messages{height:auto;min-height:220px}}
@media(max-width:650px){.task-chat-panel{max-height:calc(100dvh - 82px)}.task-chat-messages{height:auto;min-height:180px}.chat-attachments-preview{grid-template-columns:1fr}.message-file{min-width:0;max-width:100%}}
/* V19 — task navigation, autosave status, full-width create page */
.task-create-page{max-width:none;width:100%;margin:0 0 40px}.task-create-page .task-form-main{width:100%}
.task-context-nav{display:flex;align-items:center;gap:14px;margin:0 0 14px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fff}.task-back-main{display:flex;align-items:center;gap:9px;flex:0 0 auto;padding:6px 10px 6px 7px;border-radius:7px;color:#30454c}.task-back-main:hover{background:#f1f7f6;color:#126e6b}.task-back-main>i{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;background:#eaf5f4;color:#126e6b}.task-back-main small,.task-back-main strong{display:block;line-height:1.15}.task-back-main small{font-size:9px;color:#8a989f;font-weight:400}.task-back-main strong{font-size:12px;font-weight:550}.task-context-path{min-width:0;display:flex;align-items:center;gap:8px;padding-left:14px;border-left:1px solid var(--line);font-size:11px;color:#7b898f}.task-context-path a{display:inline-flex;align-items:center;gap:6px;color:#596c73;white-space:nowrap}.task-context-path a:hover,.task-context-path a.active{color:#126e6b}.task-context-path strong{font-weight:550;color:#33474e}.task-status-form.is-saving .select{opacity:.65;pointer-events:none}
.app-toast-stack{position:fixed;right:18px;bottom:18px;z-index:9999;display:grid;gap:8px}.app-toast{display:flex;align-items:center;gap:9px;min-width:260px;max-width:390px;padding:11px 13px;border:1px solid #cfe3df;border-radius:9px;background:#fff;box-shadow:0 12px 34px rgba(26,47,45,.14);font-size:12px;color:#33474e;animation:toastIn .18s ease}.app-toast i{color:#16847c}.app-toast.error{border-color:#edcfca}.app-toast.error i{color:#c95343}@keyframes toastIn{from{transform:translateY(7px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:700px){.task-context-nav{align-items:flex-start;flex-direction:column}.task-context-path{padding-left:0;padding-top:8px;border-left:0;border-top:1px solid var(--line);width:100%;overflow:auto}.app-toast-stack{left:10px;right:10px;bottom:10px}.app-toast{min-width:0;max-width:none}}
/* V20 — collapsible management navigation and user device information */
.nav-group-toggle{width:100%;border:0;background:transparent;color:#68787e;padding:5px 9px;display:flex;align-items:center;justify-content:space-between;font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-align:left}.nav-group-toggle:hover{color:#aebbc0}.nav-group-toggle svg{width:18px;height:18px;transition:transform .18s ease}.nav-collapsible.open .nav-group-toggle svg{transform:rotate(180deg)}.nav-group-items{display:none}.nav-collapsible.open .nav-group-items{display:block}.user-device-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.user-device-card{display:flex;flex-direction:column;gap:13px}.device-info{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:7px 0;display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.device-info>div{padding:7px 0;min-width:0}.device-info span,.device-details span{display:block;color:var(--muted);font-size:10.5px;margin-bottom:2px}.device-info strong{display:block;font-size:12.5px;overflow-wrap:anywhere}.device-info .mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:600}.device-details{font-size:12px}.device-details summary{cursor:pointer;font-weight:700;color:var(--accent2);user-select:none}.device-details>div{margin-top:8px}.device-details code{display:block;background:#f6f8f9;border:1px solid var(--line);border-radius:7px;padding:8px;font-size:10.5px;line-height:1.45;overflow-wrap:anywhere;white-space:normal}.user-device-card .manager-actions{margin-top:auto}
@media(max-width:560px){.user-device-grid{grid-template-columns:1fr}.device-info{grid-template-columns:1fr}}

/* V22 — manager profile styles and clickable current-user profile */
.avatar{overflow:hidden;flex:0 0 auto}.avatar.has-photo{background:#eef3f2}.avatar.has-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.top-user-link{padding:5px 8px;border-radius:9px;transition:background .16s ease,box-shadow .16s ease}.top-user-link:hover{background:#f2f7f7;box-shadow:inset 0 0 0 1px #e1e9e9}.top-user-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sidebar-user-profile{display:flex;align-items:center;gap:10px;min-width:0;flex:1;border-radius:8px;padding:3px;margin:-3px}.sidebar-user-profile:hover{background:#142027}.sidebar-user-profile>div{min-width:0;flex:1}.sidebar-user-profile strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-profile span{display:block;color:#85919a;font-size:10px;margin-top:3px}
.profile-photo-editor{display:flex;align-items:center;gap:20px;padding:18px 20px;margin:0 0 14px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-xs)}.profile-photo-preview .avatar{width:88px;height:88px;border-radius:18px}.profile-photo-editor h2{margin:0 0 5px;font-size:16px}.profile-photo-editor p{margin:0 0 11px;color:var(--muted);font-size:12px}.profile-photo-editor form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-photo-editor form small{width:100%;color:var(--muted);font-size:10.5px}.profile-photo-file{position:relative;overflow:hidden}.profile-photo-file input{position:absolute;inset:0;opacity:0;cursor:pointer}
.manager-hero h1{margin:0 0 4px;font-size:27px}.manager-hero p{margin:0;color:var(--muted);font-size:12px}.manager-hero .avatar.xl{width:64px;height:64px;border-radius:16px}.manager-period-filter{margin-top:0}.detail-grid{align-items:start}
@media(max-width:700px){.profile-photo-editor{align-items:flex-start;flex-direction:column}.profile-photo-editor>div:last-child{width:100%}.profile-photo-editor form{align-items:stretch}.profile-photo-editor .btn{width:100%;justify-content:center}.manager-hero .avatar.xl{width:56px;height:56px}}

/* V23: employee photos in task list */
.list-assignee-with-avatars{display:flex;align-items:center;gap:8px;min-width:0;overflow:visible}.list-avatar-stack{display:flex;align-items:center;flex:0 0 auto;padding-left:5px}.list-avatar-stack .avatar{width:27px;height:27px;min-width:27px;font-size:9px;border:2px solid #fff;margin-left:-6px;box-shadow:0 0 0 1px rgba(15,34,42,.06)}.list-avatar-stack .avatar:first-child{margin-left:0}.list-avatar-stack .avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.list-avatar-more{width:27px;height:27px;min-width:27px;margin-left:-6px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;background:#eef3f4;color:#53636b;font-size:9px;font-weight:600}.list-assignee-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-assignee-name small{color:#819097;font-size:10px}

/* V25 — mobile-first shell for Capacitor / Android */
.mobile-bottom-nav{display:none}
@media(max-width:850px){
 html,body{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%}
 body{background:#f5f7f9;padding-bottom:calc(70px + env(safe-area-inset-bottom))}
 .app-shell,.app-main{width:100%;min-width:0}
 .sidebar{width:min(86vw,320px);padding-top:calc(18px + env(safe-area-inset-top));padding-bottom:calc(16px + env(safe-area-inset-bottom));box-shadow:18px 0 50px rgba(0,0,0,.24)}
 .topbar{height:calc(58px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 12px 0;position:sticky;top:0;gap:8px}
 .mobile-menu{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#f3f6f7;color:#25363c;flex:0 0 auto}
 .top-actions{margin-left:auto;gap:6px}.top-icon-btn{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#f7f9fa;position:relative}.top-user-link{padding:4px}.top-user .avatar.sm{width:34px;height:34px}.top-date,.top-user-name{display:none}
 .content{width:100%;max-width:none;margin:0;padding:14px 12px 22px}
 .page-head{margin-bottom:14px;gap:10px}.page-head h1{font-size:23px;letter-spacing:-.25px}.page-head p{font-size:12px;line-height:1.45}
 .head-actions{display:flex;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.head-actions::-webkit-scrollbar{display:none}.head-actions .btn{white-space:nowrap;flex:0 0 auto}
 .btn{min-height:42px;height:auto;padding:9px 13px}.input,.select{height:44px}.textarea{font-size:16px}.input,.select{font-size:16px}
 .stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{min-height:82px;padding:11px;border-radius:12px;gap:9px}.stat-icon{width:38px;height:38px;border-radius:10px}.stat-value{font-size:22px}.stat-label{font-size:10px}
 .panel,.detail-section,.filters,.table-panel{border-radius:12px}.panel-head{padding:13px 12px}.panel-body{padding:7px 12px 13px}
 .filters,.compact-filters,.my-task-filters,.manager-period-filter{grid-template-columns:1fr!important;padding:10px;gap:8px}
 .tabs,.scope-switch,.personal-task-tabs,.task-subnav{width:100%;max-width:100%;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar,.scope-switch::-webkit-scrollbar,.personal-task-tabs::-webkit-scrollbar,.task-subnav::-webkit-scrollbar{display:none}.tabs a,.tabs button,.scope-switch a,.task-subnav a{white-space:nowrap;min-height:40px;display:inline-flex;align-items:center}
 .kanban,.kanban-v7,.personal-kanban{display:flex!important;gap:10px;overflow-x:auto!important;overflow-y:visible;padding:0 2px 12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.kanban-col,.kanban-v7 .kanban-col,.personal-kanban .kanban-col{flex:0 0 calc(100vw - 34px);min-width:calc(100vw - 34px)!important;max-width:calc(100vw - 34px);min-height:calc(100dvh - 250px);scroll-snap-align:center}.kanban-card{padding:14px}.kanban-card h4{font-size:13px}.kanban-card .project,.kanban-card .meta{font-size:10px}
 .table-wrap{margin:0 -12px;border-left:0;border-right:0;border-radius:0;-webkit-overflow-scrolling:touch}.data-table{min-width:760px}.data-table th,.data-table td{padding-left:10px;padding-right:10px}
 .detail-grid,.task-chat-layout,.dashboard-grid,.manager-grid,.grid-2,.content-grid{grid-template-columns:1fr!important}.detail-title{flex-direction:column}.detail-title h1{font-size:22px}.detail-section{padding:14px}.kv{gap:10px}.kv strong{max-width:62%}
 .task-context-nav{margin:0 0 10px;padding:8px;gap:8px}.task-back-main{width:100%}.task-context-path{font-size:10px}
 .task-chat-panel{height:calc(100dvh - 142px);max-height:none;min-height:0}.task-chat-messages{min-height:0!important;height:auto!important;flex:1;overscroll-behavior:contain}.task-chat-compose{padding-bottom:env(safe-area-inset-bottom)}.task-chat-compose .textarea{font-size:16px;max-height:82px}.message-file img{max-width:100%}
 .task-create-page{margin:0}.task-create-page .task-form-section{padding:12px!important}.task-create-page .task-create-meta,.task-create-v12 .form-grid{grid-template-columns:1fr!important}.form-actions{position:sticky;bottom:calc(66px + env(safe-area-inset-bottom));z-index:8;background:#fff;margin-left:-12px;margin-right:-12px;padding:10px 12px;border-top:1px solid var(--line);box-shadow:0 -8px 22px rgba(24,35,45,.06)}
 .notes-app{display:block!important;border-radius:12px}.notes-categories{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.notes-list{max-height:210px;border-right:0}.note-editor-panel{min-height:calc(100dvh - 330px)}
 .profile-photo-editor{align-items:flex-start;gap:12px;padding:13px}.profile-photo-preview .avatar{width:64px;height:64px;border-radius:14px}
 .mobile-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;height:calc(62px + env(safe-area-inset-bottom));padding:5px 5px env(safe-area-inset-bottom);background:rgba(255,255,255,.97);border-top:1px solid #dfe7e9;z-index:90;box-shadow:0 -8px 28px rgba(24,35,45,.08);backdrop-filter:blur(14px)}
 .mobile-bottom-nav a{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#77868c;font-size:9px;font-weight:650;border-radius:10px}.mobile-bottom-nav a i{font-size:17px}.mobile-bottom-nav a.active{color:var(--accent2)}.mobile-bottom-nav a.mobile-create{width:46px;height:46px;align-self:center;justify-self:center;margin-top:-15px;border-radius:15px;background:var(--accent);color:#fff;box-shadow:0 8px 20px rgba(13,168,171,.28)}.mobile-bottom-nav a.mobile-create i{font-size:19px}.mobile-bottom-nav a.mobile-create span{display:none}
 .app-toast-stack{bottom:calc(72px + env(safe-area-inset-bottom))}
}
@media(max-width:390px){.content{padding-left:9px;padding-right:9px}.stats-grid{grid-template-columns:1fr}.kanban-col,.kanban-v7 .kanban-col,.personal-kanban .kanban-col{flex-basis:calc(100vw - 26px);min-width:calc(100vw - 26px)!important;max-width:calc(100vw - 26px)}}

/* V26 — Android viewport/orientation hardening */
:root{--mobile-nav-h:62px}
@media (max-width:850px), ((max-height:600px) and (pointer:coarse)){
 html{min-width:0;overflow-x:hidden}
 html,body{width:100%;max-width:100%;min-height:100%;overscroll-behavior-x:none}
 body{overflow-x:hidden;padding-bottom:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom))}
 .app-shell{display:block;width:100%;min-width:0;min-height:100svh}
 .app-main{margin-left:0!important;width:100%!important;max-width:100%;min-width:0;overflow-x:clip}
 .sidebar{transform:translateX(-105%);transition:transform .22s ease;width:min(86vw,320px);max-width:320px}
 .sidebar.open{transform:translateX(0)}
 .mobile-menu{display:grid!important;place-items:center}
 .topbar{width:100%;max-width:100%;min-width:0}
 .top-search{min-width:0;flex:1;max-width:360px}
 .content{box-sizing:border-box;width:100%!important;max-width:100%!important;min-width:0;margin:0!important;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right));padding-bottom:22px}
 .page-head,.head-actions,.panel,.panel-body,.filters,.compact-filters,.table-panel,.detail-section,.task-chat-layout,.task-create-page,.task-form-section{min-width:0;max-width:100%}
 img,video,canvas,svg{max-width:100%}
 pre,code,.message-text,.report-preview,.title-cell,.task-description{overflow-wrap:anywhere;word-break:break-word}
 .mobile-bottom-nav{display:grid;left:0;right:0;width:100%;max-width:100vw}
 .kanban,.kanban-v7,.personal-kanban{max-width:100%;min-width:0}
 .kanban-col,.kanban-v7 .kanban-col,.personal-kanban .kanban-col{box-sizing:border-box}
 .task-chat-panel{max-width:100%;min-width:0;overflow:hidden}
 .task-chat-compose,.chat-compose-row{min-width:0;max-width:100%}
 .message,.chat-message,.message-body{max-width:100%;min-width:0}
 .message-file{max-width:100%;min-width:0;overflow:hidden}
 .message-file img{height:auto;object-fit:contain}
 .task-create-page input,.task-create-page select,.task-create-page textarea{max-width:100%}
}

/* Portrait phones: keep controls compact and leave usable vertical workspace. */
@media (max-width:600px) and (orientation:portrait){
 :root{--mobile-nav-h:58px}
 .topbar{height:calc(52px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}
 .mobile-menu,.top-icon-btn{width:36px;height:36px}
 .top-user .avatar.sm{width:31px;height:31px}
 .content{padding-top:9px;padding-bottom:14px}
 .page-head{margin-bottom:9px}.page-head h1{font-size:20px}.page-head p{display:none}
 .btn{min-height:38px;padding:7px 11px}
 .input,.select{height:41px}
 .stats-grid{gap:6px}.stat-card{min-height:66px;padding:8px}.stat-icon{width:34px;height:34px}.stat-value{font-size:19px}
 .tabs,.scope-switch,.personal-task-tabs,.task-subnav{margin-bottom:9px}
 .tabs a,.tabs button,.scope-switch a,.task-subnav a{min-height:36px;padding-top:6px;padding-bottom:6px}
 .kanban-col,.kanban-v7 .kanban-col,.personal-kanban .kanban-col{min-height:0!important;max-height:none;flex-basis:calc(100vw - 24px);min-width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)}
 .kanban-head{height:36px}.kanban-card{padding:11px;margin-bottom:7px}
 .task-chat-panel{height:calc(100svh - 118px - var(--mobile-nav-h) - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:300px}
 .task-chat-compose{padding:8px}.task-chat-compose .textarea{max-height:68px;min-height:42px}
 .task-context-nav{padding:6px;margin-bottom:6px}
 .task-context-path{padding-top:5px}
 .mobile-bottom-nav{height:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom));padding-top:3px}
 .mobile-bottom-nav a.mobile-create{width:43px;height:43px;margin-top:-13px}
}

/* Landscape phones: do not fall back to desktop layout just because viewport is wide. */
@media (orientation:landscape) and (max-height:600px) and (pointer:coarse){
 :root{--mobile-nav-h:48px}
 body{padding-bottom:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom))}
 .topbar{height:calc(44px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));gap:5px}
 .mobile-menu,.top-icon-btn{width:32px;height:32px;border-radius:8px}
 .top-user .avatar.sm{width:29px;height:29px}
 .top-search{height:34px;max-width:280px}
 .content{padding-top:6px;padding-bottom:8px}
 .page-head{margin-bottom:6px;align-items:center;flex-direction:row}.page-head h1{font-size:18px;margin-bottom:0}.page-head p{display:none}.head-actions{width:auto;max-width:58vw}
 .btn{min-height:34px;padding:5px 9px;border-radius:8px}.input,.select{height:36px;font-size:14px}.textarea{font-size:14px}
 .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-bottom:8px}.stat-card{min-height:54px;padding:6px 8px}.stat-icon{width:31px;height:31px}.stat-value{font-size:18px}.stat-label{font-size:9px}
 .filters,.compact-filters,.my-task-filters,.manager-period-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:7px;gap:5px}
 .tabs,.scope-switch,.personal-task-tabs,.task-subnav{margin-bottom:6px}.tabs a,.tabs button,.scope-switch a,.task-subnav a{min-height:32px;padding:5px 9px}
 .kanban,.kanban-v7,.personal-kanban{gap:7px;padding-bottom:6px}.kanban-col,.kanban-v7 .kanban-col,.personal-kanban .kanban-col{flex:0 0 min(54vw,430px);min-width:min(54vw,430px)!important;max-width:min(54vw,430px);min-height:0!important;padding:7px}.kanban-head{height:31px;padding-bottom:4px}.kanban-card{padding:9px;margin-bottom:6px}.kanban-card h4{font-size:11px;margin-bottom:4px}.kanban-card .project{margin-bottom:6px}.kanban-card .meta{margin-top:6px}
 .task-chat-layout{display:block!important}.chat-task-summary{display:none!important}.task-chat-panel{height:calc(100svh - 92px - var(--mobile-nav-h) - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:190px}.task-chat-compose{padding:6px}.task-chat-compose .textarea{min-height:36px;max-height:48px}.task-context-nav{padding:5px;margin-bottom:4px;flex-direction:row}.task-context-path{width:auto;border-top:0;padding-top:0;border-left:1px solid var(--line);padding-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .task-create-page .task-form-section{padding:8px!important;margin-bottom:7px}.task-create-page .task-create-meta,.task-create-v12 .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.form-actions{bottom:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom));padding:6px 10px}
 .mobile-bottom-nav{height:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom));padding:2px max(6px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(6px,env(safe-area-inset-left))}.mobile-bottom-nav a{font-size:8px;gap:1px}.mobile-bottom-nav a i{font-size:14px}.mobile-bottom-nav a.mobile-create{width:38px;height:38px;margin-top:-8px;border-radius:12px}
}

/* V27 mobile UX */
.mobile-nav-badge{position:absolute;top:3px;right:calc(50% - 20px);min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:#e44848;color:#fff;font-size:9px;line-height:16px;text-align:center}.mobile-bottom-nav a{position:relative}.mobile-page-title{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.mobile-page-title h1{margin:0;font-size:28px}.mobile-page-title p{margin:5px 0 0;color:var(--muted)}.inbox-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.inbox-summary a{display:flex;flex-direction:column;gap:3px;padding:13px;background:#fff;border:1px solid var(--line);border-radius:14px;color:inherit}.inbox-summary strong{font-size:23px}.inbox-summary span{font-size:12px;color:var(--muted)}.inbox-summary .danger{color:#d74848}.mobile-more-profile>a,.mobile-more-grid>a{display:flex;align-items:center;gap:12px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:15px;color:inherit}.mobile-more-profile>a span,.mobile-more-grid>a span{display:flex;flex-direction:column;min-width:0;flex:1}.mobile-more-profile small,.mobile-more-grid small{color:var(--muted);margin-top:3px}.mobile-more-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px}.mobile-more-grid>a>i{width:20px;text-align:center;color:var(--accent2)}.mobile-more-grid .danger-link>i,.mobile-more-grid .danger-link strong{color:#c83f3f}
@media(max-width:760px){.top-search,.top-date,.top-user-name{display:none}.content{padding:12px 10px calc(var(--mobile-nav-h) + 18px)!important}.task-head-v7 h1{font-size:22px;line-height:1.15}.task-head-v7 .head-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:6px}.task-head-v7 .head-actions .btn{justify-content:center}.task-head-v7 .head-actions .btn-soft{display:none}.task-subnav{position:sticky;top:0;z-index:20;background:var(--bg);padding:4px 0 7px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.task-subnav a{justify-content:center;padding:9px 4px;font-size:11px}.task-create-page .task-description{min-height:120px}.task-create-actions{position:sticky;bottom:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom));z-index:30;background:rgba(247,249,250,.96);margin:8px -10px -12px;padding:8px 10px;border-top:1px solid var(--line)}.task-create-actions .btn-primary{flex:1;justify-content:center;min-height:44px}.mobile-optional-section.mobile-collapsed>:not(.section-title){display:none!important}.mobile-optional-section .section-title{cursor:pointer}.mobile-optional-section .section-title:after{content:'−';margin-left:auto;font-size:20px;color:var(--muted)}.mobile-optional-section.mobile-collapsed .section-title:after{content:'+'}.inbox-summary{grid-template-columns:repeat(2,1fr);gap:7px}.mobile-inbox-row time,.mobile-inbox-row>.fa-chevron-right{display:none}.mobile-more-grid{grid-template-columns:1fr}.mobile-page-title h1{font-size:24px}}
@media(max-height:520px) and (orientation:landscape){.task-subnav{position:static}.mobile-more-grid{grid-template-columns:repeat(2,1fr)}.inbox-summary{grid-template-columns:repeat(4,1fr)}}

/* V31 — mobile density, touch ergonomics and task readability */
@media(max-width:760px){
 body{background:#f4f6f7}
 .topbar{border-bottom-color:#e8edef;box-shadow:0 2px 12px rgba(18,32,38,.035)}
 .content{padding-left:8px!important;padding-right:8px!important}
 .panel,.detail-section,.filters,.table-panel,.kanban-card{border-radius:11px;box-shadow:none}
 .page-head{align-items:center}.page-head h1{font-size:21px!important;font-weight:750;letter-spacing:-.35px}
 .personal-task-tabs,.task-subnav{background:#eef2f3;border-radius:10px;padding:3px;gap:2px}
 .personal-task-tabs a,.task-subnav a{border:0!important;border-radius:8px;min-height:34px!important;font-size:10.5px!important}
 .personal-task-tabs a.active,.task-subnav a.active{background:#fff;box-shadow:0 1px 5px rgba(20,35,40,.08)}
 .kanban,.kanban-v7,.personal-kanban{scroll-padding-left:8px;gap:8px!important;padding-left:0!important;padding-right:0!important}
 .kanban-col,.kanban-v7 .kanban-col,.personal-kanban .kanban-col{flex-basis:calc(100vw - 22px)!important;min-width:calc(100vw - 22px)!important;max-width:calc(100vw - 22px)!important;border-radius:12px;padding:7px!important;background:#eef2f3}
 .kanban-head{position:sticky;left:0;height:34px!important;padding:0 5px 5px!important}
 .kanban-card{padding:11px 12px!important;margin-bottom:6px!important;background:#fff}
 .kanban-card h4{font-size:13px!important;line-height:1.32;margin-bottom:5px!important}
 .kanban-card .project{font-size:10px!important;margin-bottom:7px!important}.kanban-card .meta{font-size:10px!important;margin-top:7px!important}
 .detail-section{padding:12px!important}.detail-title h1{font-size:20px!important;line-height:1.22}.kv{padding:9px 0}.kv span,.kv strong{font-size:11px}
 .task-context-nav{border-radius:9px}.task-context-path{display:none}
 .task-chat-panel{border-radius:10px}.task-chat-messages{padding:8px!important}.chat-message,.message{margin-bottom:7px}.message-body{border-radius:12px!important}.message-text{font-size:13px!important;line-height:1.42}
 .task-chat-compose{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line)}
 .mobile-bottom-nav{box-shadow:0 -3px 16px rgba(18,32,38,.08);border-top-color:#e3e9eb}.mobile-bottom-nav a{font-size:9.5px!important}.mobile-bottom-nav a i{font-size:16px!important}
 .mobile-bottom-nav a.mobile-create{border-radius:14px;box-shadow:0 6px 16px rgba(13,168,171,.24)}
 .mobile-page-title{margin-bottom:9px}.mobile-page-title h1{font-size:22px!important}
 .inbox-summary{gap:6px}.inbox-summary a{padding:10px;border-radius:11px}.inbox-summary strong{font-size:20px}
 .btn,.input,.select{border-radius:9px}.btn{font-size:12px}
}
@media(max-width:390px){
 .content{padding-left:7px!important;padding-right:7px!important}
 .kanban-col,.kanban-v7 .kanban-col,.personal-kanban .kanban-col{flex-basis:calc(100vw - 18px)!important;min-width:calc(100vw - 18px)!important;max-width:calc(100vw - 18px)!important}
}


/* V33 — mobile app interaction pass */
@media(max-width:760px){
 body.mobile-task-chat-page{overflow:hidden;padding-bottom:0!important}
 body.mobile-task-chat-page .content{height:calc(100dvh - 52px - env(safe-area-inset-top) - var(--mobile-nav-h) - env(safe-area-inset-bottom));padding:5px 6px 0!important;overflow:hidden}
 body.mobile-task-chat-page .task-context-nav{display:none!important}
 body.mobile-task-chat-page .page-head.task-head-v7{display:none!important}
 body.mobile-task-chat-page .task-subnav{height:38px;margin:0 0 5px!important;padding:2px!important;position:static!important}
 body.mobile-task-chat-page .task-subnav a{min-height:32px!important;padding:5px 3px!important}
 body.mobile-task-chat-page .task-chat-layout{height:calc(100% - 43px);min-height:0;display:block!important}
 body.mobile-task-chat-page .task-chat-panel{height:100%!important;min-height:0!important;max-height:none!important;border-radius:10px 10px 0 0;display:flex;overflow:hidden}
 body.mobile-task-chat-page .chat-context{min-height:38px;padding:6px 9px;flex:0 0 auto}
 body.mobile-task-chat-page .chat-context span{display:none}
 body.mobile-task-chat-page .chat-context a{padding:6px 8px;border-radius:8px;background:#eef4f4}
 body.mobile-task-chat-page .task-chat-messages{flex:1 1 0!important;min-height:0!important;height:0!important;padding:8px 6px 10px!important;overflow-y:auto;-webkit-overflow-scrolling:touch}
 body.mobile-task-chat-page .task-message{max-width:94%;gap:5px;margin-bottom:7px}
 body.mobile-task-chat-page .task-message>.avatar{width:27px;height:27px;font-size:9px}
 body.mobile-task-chat-page .message-bubble{min-width:0;max-width:100%;padding:7px 9px}
 body.mobile-task-chat-page .message-meta{gap:8px}.message-meta strong{max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 body.mobile-task-chat-page .message-text{overflow-wrap:anywhere;word-break:break-word}
 body.mobile-task-chat-page .task-chat-compose{position:static!important;flex:0 0 auto;padding:6px 6px calc(6px + env(safe-area-inset-bottom))!important}
 body.mobile-task-chat-page .task-chat-compose .textarea{width:100%;min-height:40px!important;max-height:74px!important;padding:9px 10px;font-size:16px!important;resize:none}
 body.mobile-task-chat-page .chat-compose-actions{display:grid;grid-template-columns:auto 1fr;gap:6px;margin-top:5px}
 body.mobile-task-chat-page .chat-compose-actions>span{display:none!important}
 body.mobile-task-chat-page .chat-file-button{width:42px;min-width:42px;height:40px;padding:0;justify-content:center;font-size:0}
 body.mobile-task-chat-page .chat-file-button i{font-size:15px;margin:0}
 body.mobile-task-chat-page .chat-compose-actions .btn-primary{height:40px;justify-content:center}
 body.mobile-task-chat-page .chat-attachments-preview{max-height:92px;overflow:auto;margin-top:4px}
 body.mobile-task-chat-page .mobile-bottom-nav{z-index:100}
}
@media(max-width:390px){
 body.mobile-task-chat-page .content{padding-left:4px!important;padding-right:4px!important}
 body.mobile-task-chat-page .task-message{max-width:96%}
 body.mobile-task-chat-page .task-subnav a{font-size:10px!important}
}
@media(orientation:landscape) and (max-height:600px) and (pointer:coarse){
 body.mobile-task-chat-page .content{height:calc(100dvh - 44px - env(safe-area-inset-top) - var(--mobile-nav-h) - env(safe-area-inset-bottom));padding-top:3px!important}
 body.mobile-task-chat-page .task-subnav{height:32px;margin-bottom:3px!important}
 body.mobile-task-chat-page .task-subnav a{min-height:28px!important;padding:3px!important}
 body.mobile-task-chat-page .task-chat-layout{height:calc(100% - 35px)}
 body.mobile-task-chat-page .chat-context{display:none}
 body.mobile-task-chat-page .task-chat-compose .textarea{min-height:34px!important;max-height:44px!important}
 body.mobile-task-chat-page .chat-compose-actions .btn-primary,body.mobile-task-chat-page .chat-file-button{height:34px}
}
/* V34 mobile usability */
@media (max-width: 768px){
  body.mobile-task-chat-page{overflow:hidden;height:100dvh}
  body.mobile-task-chat-page .main{height:100dvh;min-height:0;overflow:hidden;padding-bottom:0}
  body.mobile-task-chat-page .content{height:calc(100dvh - 56px - env(safe-area-inset-top));min-height:0;overflow:hidden;padding:6px 8px calc(62px + env(safe-area-inset-bottom))!important}
  body.mobile-task-chat-page [data-task-chat]{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}
  body.mobile-task-chat-page [data-chat-messages]{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:8px 4px 12px;scrollbar-width:thin}
  body.mobile-task-chat-page [data-chat-form]{flex:0 0 auto;position:sticky;bottom:0;margin:0;padding:7px 0 4px;background:var(--surface,#fff);z-index:8}
  body.mobile-task-chat-page [data-chat-input]{min-height:42px!important;max-height:112px!important;font-size:16px!important;line-height:1.35;resize:none}
  body.mobile-task-chat-page .task-tabs{overflow-x:auto;white-space:nowrap;scrollbar-width:none;margin-bottom:4px}
  body.mobile-task-chat-page .task-tabs::-webkit-scrollbar{display:none}
  body.mobile-task-chat-page .chat-message,.mobile-task-chat-page .message{max-width:94%;overflow-wrap:anywhere;word-break:break-word}
  body.mobile-task-chat-page img{max-width:100%;height:auto}
}

/* V36 — final mobile task-chat viewport/layout override */
@media (max-width:760px){
  body.mobile-task-chat-page{height:100dvh!important;overflow:hidden!important;padding:0!important}
  body.mobile-task-chat-page .main{height:100dvh!important;min-height:0!important;overflow:hidden!important;padding-bottom:0!important}
  body.mobile-task-chat-page .content{display:flex!important;flex-direction:column!important;height:calc(100dvh - 52px - env(safe-area-inset-top))!important;min-height:0!important;overflow:hidden!important;padding:4px 6px calc(var(--mobile-nav-h,56px) + env(safe-area-inset-bottom))!important}
  body.mobile-task-chat-page .task-subnav{flex:0 0 36px!important;height:36px!important;margin:0 0 4px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important}
  body.mobile-task-chat-page .task-subnav::-webkit-scrollbar{display:none}
  body.mobile-task-chat-page .task-chat-layout{flex:1 1 auto!important;height:auto!important;min-height:0!important;overflow:hidden!important}
  body.mobile-task-chat-page .task-chat-panel{height:100%!important;max-height:none!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;border-radius:10px!important}
  body.mobile-task-chat-page .chat-context{flex:0 0 auto!important;min-height:36px!important;padding:5px 8px!important}
  body.mobile-task-chat-page .task-chat-messages{flex:1 1 0!important;height:0!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;padding:8px 6px 12px!important;overscroll-behavior-y:contain}
  body.mobile-task-chat-page .task-message{width:auto!important;max-width:96%!important;min-width:0!important}
  body.mobile-task-chat-page .message-bubble{min-width:0!important;max-width:calc(100vw - 52px)!important;overflow:hidden!important}
  body.mobile-task-chat-page .message-text,body.mobile-task-chat-page .message-file strong{overflow-wrap:anywhere!important;word-break:break-word!important}
  body.mobile-task-chat-page .task-chat-compose{position:relative!important;inset:auto!important;flex:0 0 auto!important;margin:0!important;padding:6px!important;background:#fff!important;z-index:5!important}
  body.mobile-task-chat-page .task-chat-compose .textarea{display:block!important;width:100%!important;min-height:40px!important;max-height:76px!important;margin:0!important;font-size:16px!important;line-height:1.35!important;resize:none!important}
  body.mobile-task-chat-page .chat-compose-actions{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:6px!important;margin-top:5px!important}
  body.mobile-task-chat-page .chat-file-button{width:42px!important;min-width:42px!important;height:40px!important;padding:0!important}
  body.mobile-task-chat-page .chat-compose-actions .btn-primary{width:100%!important;height:40px!important}
  body.mobile-task-chat-page .chat-attachments-preview{max-height:84px!important;overflow:auto!important}
}
@media (max-width:760px) and (orientation:landscape){
  body.mobile-task-chat-page .content{height:calc(100dvh - 44px - env(safe-area-inset-top))!important}
  body.mobile-task-chat-page .task-subnav{flex-basis:30px!important;height:30px!important}
  body.mobile-task-chat-page .chat-context{display:none!important}
  body.mobile-task-chat-page .task-chat-compose .textarea{min-height:34px!important;max-height:48px!important}
}

/* V43 — unified welcome/login */
.auth-body{margin:0;background:#f5f8f9;min-height:100dvh}.auth-page{min-height:100dvh;width:100%;display:grid;grid-template-columns:minmax(380px,44%) 1fr;background:#fff}.auth-intro{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(145deg,#06131f 0%,#07354a 58%,#079c99 135%);padding:56px}.auth-intro:before{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(46,229,207,.13);border-radius:50%;right:-270px;top:-210px}.auth-intro:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(255,255,255,.07);border-radius:50%;left:-250px;bottom:-220px}.auth-intro-inner{position:relative;z-index:1;width:min(420px,100%);display:flex;align-items:center;gap:24px}.auth-app-logo{width:112px;height:112px;display:block;border-radius:27px;object-fit:cover;box-shadow:0 22px 54px rgba(0,0,0,.3)}.auth-brand-copy strong{display:block;color:#fff;font-size:32px;letter-spacing:-.8px}.auth-brand-copy span{display:block;color:#a9c6ce;font-size:14px;line-height:1.55;margin-top:7px;max-width:250px}.auth-form-side{display:flex;align-items:center;justify-content:center;padding:56px clamp(32px,7vw,110px)}.auth-form{width:min(430px,100%)}.auth-mobile-brand{display:none}.auth-heading{margin-bottom:30px}.auth-kicker{display:block;color:#079b9b;font-size:11px;font-weight:800;letter-spacing:.16em;margin-bottom:11px}.auth-heading h1{margin:0;color:#11232c;font-size:36px;line-height:1.08;letter-spacing:-1px}.auth-heading p{margin:11px 0 0;color:#74838b;font-size:14px;line-height:1.55}.auth-field{margin-bottom:17px}.auth-field label{font-size:12px;color:#42545d;margin-bottom:7px}.auth-field .input{height:52px;border-radius:12px;font-size:15px;padding:0 15px;background:#fff}.password-wrap{position:relative}.password-wrap .input{padding-right:48px}.password-toggle{position:absolute;right:8px;top:7px;width:38px;height:38px;border:0;background:transparent;border-radius:9px;cursor:pointer}.password-toggle:before{content:"";position:absolute;width:17px;height:11px;border:2px solid #8a989f;border-radius:50%;left:9px;top:12px}.password-toggle:after{content:"";position:absolute;width:4px;height:4px;background:#8a989f;border-radius:50%;left:16px;top:17px}.password-toggle.active{background:#eef8f8}.auth-remember{display:flex;align-items:flex-start;gap:11px;margin:4px 0 22px;cursor:pointer}.auth-remember input{width:18px;height:18px;margin:2px 0 0;accent-color:#079b9b;flex:0 0 auto}.auth-remember b{display:block;font-size:13px;color:#263a43}.auth-remember small{display:block;color:#8a989f;font-size:11px;line-height:1.4;margin-top:3px}.auth-submit{width:100%;height:52px;border-radius:12px;font-size:15px;background:linear-gradient(135deg,#079b9b,#08b9ae);border:0;box-shadow:0 12px 26px rgba(7,155,155,.18)}.auth-security{text-align:center;color:#9aa6ac;font-size:10px;margin-top:18px}.auth-alert{border:1px solid #ffdadd;background:#fff5f6}.login-page{display:none!important}
@media(max-width:850px){.auth-page{display:block;min-height:100dvh;background:linear-gradient(180deg,#071826 0,#0a3041 25%,#f6f9fa 25%,#f6f9fa 100%)}.auth-intro{display:none}.auth-form-side{min-height:100dvh;width:100%;padding:max(24px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));align-items:flex-start}.auth-form{width:100%;max-width:none;background:#fff;border-radius:24px;padding:24px 20px 22px;margin-top:11vh;box-shadow:0 18px 55px rgba(3,19,28,.18)}.auth-mobile-brand{display:flex;align-items:center;gap:13px;margin:-67px 0 32px 4px;color:#fff}.auth-mobile-brand img{width:74px;height:74px;border-radius:19px;box-shadow:0 14px 32px rgba(0,0,0,.28)}.auth-mobile-brand strong{display:block;font-size:21px;letter-spacing:-.4px}.auth-mobile-brand span{display:block;color:#a9c6ce;font-size:11px;margin-top:3px}.auth-heading{margin-bottom:25px}.auth-kicker{font-size:10px}.auth-heading h1{font-size:30px}.auth-heading p{font-size:13px}.auth-field .input{height:54px;font-size:16px}.auth-submit{height:54px}.auth-security{padding-bottom:2px}}
@media(max-width:390px){.auth-form-side{padding-left:12px;padding-right:12px}.auth-form{padding-left:16px;padding-right:16px;border-radius:20px}.auth-mobile-brand{margin-left:2px}.auth-heading h1{font-size:28px}}
@media(max-height:700px) and (max-width:850px){.auth-form{margin-top:62px}.auth-mobile-brand{margin-bottom:20px}.auth-heading{margin-bottom:18px}.auth-heading p{display:none}.auth-field{margin-bottom:12px}.auth-remember{margin-bottom:15px}.auth-security{display:none}}

/* V45 Android mobile workflow */
.mobile-task-groups,.mobile-project-list{display:none}
@media(max-width:760px){
  .sidebar{z-index:140!important}
  .sidebar-overlay{z-index:130!important}
  .sidebar-overlay.open{display:block!important;position:fixed;inset:0;background:rgba(4,12,17,.58);backdrop-filter:blur(2px)}
  .mobile-bottom-nav{z-index:90!important}
  .page-head .btn.btn-primary[href="task_create.php"],.notes-head>.btn.btn-primary{display:none!important}
  .view-switch-v12{display:none!important}
  .personal-kanban,.my-task-list,.gantt-v12{display:none!important}
  .mobile-task-groups{display:flex;flex-direction:column;gap:14px;margin-top:10px}
  .mobile-task-group{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 3px 14px rgba(24,35,45,.035)}
  .mobile-task-group-head{height:43px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;background:#f8fafb;border-bottom:1px solid var(--line)}
  .mobile-task-group-head strong{font-size:13px;font-weight:800}.mobile-task-group-head span{min-width:25px;height:24px;padding:0 7px;border-radius:12px;background:#e7f5f4;color:var(--accent2);display:grid;place-items:center;font-size:11px;font-weight:800}
  .mobile-task-row{display:block;padding:12px 13px;border-bottom:1px solid #edf1f2}.mobile-task-row:last-child{border-bottom:0}.mobile-task-row:active{background:#f5faf9}
  .mobile-task-row-main{min-width:0}.mobile-task-row-main small{display:block;color:#839199;font-size:10px;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-task-row-main strong{display:block;font-size:13px;line-height:1.35;font-weight:700;overflow-wrap:anywhere}
  .mobile-task-row-meta{display:flex;align-items:center;gap:9px;margin-top:8px;color:#7c8a91;font-size:10px}.mobile-task-row-meta>span:nth-child(2){margin-left:auto}.mobile-task-row-meta>.fa-chevron-right{font-size:9px;color:#a4afb4}.mobile-task-row-meta .task-kind{padding:0;background:none!important}.mobile-task-row-meta .icon-fire{width:14px;height:14px}
  .mobile-task-group-empty{padding:14px;color:#9aa5aa;font-size:11px;text-align:center}
  .personal-task-tabs{display:flex!important;overflow-x:auto;grid-template-columns:none!important;scrollbar-width:none;padding-bottom:2px}.personal-task-tabs::-webkit-scrollbar{display:none}.personal-task-tabs a{flex:0 0 auto;white-space:nowrap;padding-left:11px;padding-right:11px}
  .my-task-filters{grid-template-columns:1fr 1fr!important;gap:8px}.my-task-filters .field:first-of-type{grid-column:1/-1}.my-task-filters .btn{min-width:0;padding:0 10px}
  .mobile-project-list{display:flex;flex-direction:column;gap:10px}.table-panel{display:none!important}
  .mobile-project-card{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;box-shadow:0 3px 14px rgba(24,35,45,.035)}
  .mobile-project-card-head{display:flex;align-items:flex-start;gap:10px}.mobile-project-card-head>div{min-width:0;flex:1}.mobile-project-card-head strong{display:block;font-size:14px;line-height:1.3;overflow-wrap:anywhere}.mobile-project-card-head small{display:block;color:var(--muted);font-size:10px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-project-card-head>i{color:#9aa7ad;font-size:10px;margin-top:5px}
  .mobile-project-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px}.mobile-project-card-meta .category-dot{font-size:11px;min-width:0}.mobile-project-owner{display:flex;align-items:center;gap:7px;margin-top:10px;color:#56666e;font-size:11px}.mobile-project-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:11px;padding-top:10px;border-top:1px solid #edf1f2}.mobile-project-stats span{text-align:center;color:#849198;font-size:9px;line-height:1.25}.mobile-project-stats b{display:block;color:#26363e;font-size:14px;margin-bottom:2px}.mobile-project-stats .danger b{color:var(--danger)}
  body:has(.mobile-project-list) .filters{grid-template-columns:1fr 1fr!important}.filters .field{min-width:0}
  .notes-app{border-radius:12px!important}.notes-list{max-height:170px!important}.note-editor-panel{padding:13px!important;min-height:calc(100dvh - 290px)!important}.note-title{font-size:18px!important}.note-content{min-height:230px!important;font-size:14px!important}.note-actions{position:sticky;bottom:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom));background:#fff;padding:8px 0 4px;z-index:3;align-items:center;flex-wrap:wrap}.note-actions .note-autosave-state{margin-left:auto;font-size:10px;color:#77868c}.note-meta-row{display:grid!important;grid-template-columns:1fr 1fr;gap:6px!important}.note-meta-row select{min-width:0!important;width:100%;font-size:10px!important}.note-archive-form{position:static!important;margin-top:8px}.mini-editor-toolbar{overflow-x:auto}
  .mobile-bottom-nav a.mobile-create{border-radius:13px}.mobile-bottom-nav a.mobile-create:active{transform:scale(.94)}
  .app-foreground-notice{position:fixed;left:12px;right:12px;top:calc(10px + env(safe-area-inset-top));z-index:220;background:#10232b;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:13px;padding:12px 13px;box-shadow:0 14px 36px rgba(0,0,0,.28);display:flex;gap:10px;align-items:flex-start;animation:amNoticeIn .2s ease-out}.app-foreground-notice i{color:#42c8c4;margin-top:2px}.app-foreground-notice div{min-width:0}.app-foreground-notice strong{display:block;font-size:12px}.app-foreground-notice span{display:block;color:#c5d2d6;font-size:10.5px;line-height:1.35;margin-top:3px;overflow-wrap:anywhere}
  @keyframes amNoticeIn{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
}
@media(max-width:390px){.my-task-filters{grid-template-columns:1fr!important}.my-task-filters .field:first-of-type{grid-column:auto}.mobile-project-stats span{font-size:8.5px}}


/* V55 Android inbox/chat/profile/media */
.inbox-summary-v55{grid-template-columns:repeat(3,1fr)}
.inbox-dialogs{padding:0;overflow:hidden}.inbox-dialogs .section-title-row,.inbox-task-events .section-title-row{padding:14px 16px;margin:0;border-bottom:1px solid var(--line)}
.dialog-list{display:flex;flex-direction:column}.dialog-row{display:flex;align-items:center;gap:11px;padding:12px 14px;border-bottom:1px solid #edf1f2;color:inherit;min-width:0}.dialog-row:last-child{border-bottom:0}.dialog-row.has-unread{background:#f3fbfa}.dialog-row>.avatar{flex:0 0 auto}.dialog-body{min-width:0;flex:1}.dialog-title{display:flex;align-items:center;gap:8px}.dialog-title strong{min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.dialog-title time{font-size:9.5px;color:var(--muted);white-space:nowrap}.dialog-body>small{display:block;color:var(--muted);font-size:9.5px;margin:2px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dialog-preview{display:block;font-size:11px;color:#58676e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dialog-unread{min-width:22px;height:22px;padding:0 6px;border-radius:12px;display:grid;place-items:center;background:var(--accent2);color:#fff;font-size:10px}.dialog-chevron{font-size:9px;color:#a7b0b5}
.am-image-viewer{position:fixed;inset:0;z-index:1000;background:rgba(2,10,15,.94);display:none;align-items:center;justify-content:center;padding:max(48px,env(safe-area-inset-top)) 8px max(20px,env(safe-area-inset-bottom))}.am-image-viewer.open{display:flex}.am-image-viewer-stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pinch-zoom}.am-image-viewer img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.am-image-viewer-close{position:absolute;right:12px;top:max(10px,env(safe-area-inset-top));z-index:2;width:38px;height:38px;border:0;border-radius:19px;background:rgba(255,255,255,.14);color:#fff;font-size:28px;line-height:36px}
@media(max-width:760px){.profile-photo-preview{width:82px;height:82px;flex:0 0 82px}.profile-photo-preview .avatar,.profile-photo-preview .avatar.xl{width:82px!important;height:82px!important;border-radius:18px!important;overflow:hidden!important}.profile-photo-preview .avatar img,.manager-hero .avatar img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}.manager-hero .avatar.xl{width:64px!important;height:64px!important;flex:0 0 64px}.inbox-dialogs,.inbox-task-events{border-radius:13px;margin-bottom:12px}.dialog-row{padding:11px 10px}.dialog-row>.avatar{width:40px;height:40px}.inbox-summary-v55 a{padding:10px}.inbox-summary-v55 strong{font-size:19px}.inbox-summary-v55 span{font-size:10px}}


/* V56 mobile fixes */
.dialog-message-count{display:block;margin-top:4px;color:#8a989f;font-size:9.5px}
.mobile-more-profile>a>.avatar,.mobile-more-profile>a>.avatar.lg{width:58px!important;height:58px!important;min-width:58px!important;flex:0 0 58px!important;border-radius:15px!important;overflow:hidden!important;padding:0!important}
.mobile-more-profile>a>.avatar img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important;border-radius:inherit!important}
.am-image-viewer-stage{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.am-image-viewer-stage img{user-select:none;-webkit-user-select:none}
.android-smart-editor{width:100%;min-height:42px;max-height:112px;overflow-y:auto;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text);padding:10px 11px;font:inherit;font-size:16px;line-height:1.35;outline:none;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}
.android-smart-editor:focus{border-color:#9fdadd;box-shadow:0 0 0 3px rgba(13,168,171,.08)}
.android-smart-editor:empty:before{content:attr(data-placeholder);color:#98a5ab;pointer-events:none}
body.mobile-task-chat-page .android-smart-editor{min-height:40px;max-height:76px}
@media(max-height:520px) and (orientation:landscape){body.mobile-task-chat-page .android-smart-editor{min-height:34px;max-height:48px}}

/* V58.1 rebuilt mobile chat */
.chat-back-v581,.chat-history-v581{display:none}
@media(max-width:760px){
body.mobile-task-chat-page .topbar,body.mobile-task-chat-page .task-context-nav,body.mobile-task-chat-page .page-head,body.mobile-task-chat-page .task-subnav,body.mobile-task-chat-page .mobile-bottom-nav{display:none!important}
body.mobile-task-chat-page,body.mobile-task-chat-page .main{height:100dvh!important;min-height:0!important;overflow:hidden!important}
body.mobile-task-chat-page .main{padding:0!important}
body.mobile-task-chat-page .content{height:100dvh!important;min-height:0!important;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)!important;margin:0!important;overflow:hidden!important}
body.mobile-task-chat-page .task-chat-layout.task-chat-v581{display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important}
body.mobile-task-chat-page .task-chat-v581 .chat-task-summary{display:none!important}
body.mobile-task-chat-page .task-chat-v581 .task-chat-panel{height:100%!important;min-height:0!important;max-height:none!important;display:flex!important;flex-direction:column!important;border:0!important;border-radius:0!important;overflow:hidden!important;background:#f4f7f8!important}
body.mobile-task-chat-page .chat-context-v581{flex:0 0 44px!important;display:grid!important;grid-template-columns:100px 1fr 44px!important;align-items:center!important;padding:0 6px!important;background:#fff!important;border-bottom:1px solid #e3eaed!important}
body.mobile-task-chat-page .chat-back-v581{display:flex!important;align-items:center!important;gap:7px!important;height:40px!important;padding:0 8px!important;color:#087f82!important;font-size:13px!important;font-weight:750!important;text-decoration:none!important}
body.mobile-task-chat-page .chat-title-v581{text-align:center!important;line-height:1.05!important}.mobile-task-chat-page .chat-title-v581 strong{display:block!important;font-size:14px!important}.mobile-task-chat-page .chat-title-v581 small{display:block!important;margin-top:2px!important;font-size:9px!important;color:#9aa7ad!important}
body.mobile-task-chat-page .chat-history-v581{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;color:#71838b!important}
body.mobile-task-chat-page .task-chat-v581 .task-chat-messages{flex:1 1 0!important;height:0!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;padding:7px 7px 8px!important;margin:0!important;-webkit-overflow-scrolling:touch!important}
body.mobile-task-chat-page .task-chat-v581 .task-message{max-width:95%!important;margin-bottom:5px!important;gap:5px!important}
body.mobile-task-chat-page .task-chat-v581 .task-message>.avatar{width:25px!important;height:25px!important;min-width:25px!important}
body.mobile-task-chat-page .task-chat-v581 .message-bubble{max-width:calc(100vw - 50px)!important;padding:6px 8px!important;border-radius:11px!important}
body.mobile-task-chat-page .task-chat-v581 .message-meta{margin-bottom:2px!important}.mobile-task-chat-page .task-chat-v581 .message-meta strong{font-size:10.5px!important}.mobile-task-chat-page .task-chat-v581 .message-meta span{font-size:8.5px!important}.mobile-task-chat-page .task-chat-v581 .message-text{font-size:13px!important;line-height:1.3!important}
body.mobile-task-chat-page .chat-compose-v581{position:relative!important;flex:0 0 auto!important;inset:auto!important;margin:0!important;padding:5px 6px!important;background:#fff!important;border-top:1px solid #e3eaed!important}
body.mobile-task-chat-page .chat-compose-row-v581{display:grid!important;grid-template-columns:40px minmax(0,1fr) 42px!important;gap:5px!important;align-items:end!important}
body.mobile-task-chat-page .chat-attach-v581,body.mobile-task-chat-page .chat-send-v581{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;margin:0!important;border:0!important;border-radius:12px!important;font-size:15px!important}
body.mobile-task-chat-page .chat-attach-v581{background:#eef3f4!important;color:#5e727a!important}.mobile-task-chat-page .chat-attach-v581 input{display:none!important}
body.mobile-task-chat-page .chat-send-v581{width:42px!important;background:#18b7ae!important;color:#fff!important}
body.mobile-task-chat-page .chat-input-v581{width:100%!important;height:40px!important;min-height:40px!important;max-height:76px!important;margin:0!important;padding:9px 11px!important;box-sizing:border-box!important;border:1px solid #dbe4e7!important;border-radius:13px!important;background:#f9fbfb!important;font-size:16px!important;line-height:20px!important;resize:none!important;overflow-y:auto!important}
body.mobile-task-chat-page .task-chat-v581 .chat-attachments-preview{max-height:56px!important;overflow:auto!important;margin:0 0 4px!important}
}

/* V58.3 — explicit back-to-task label */
@media(max-width:760px){
  body.mobile-task-chat-page .chat-context-v581{
    grid-template-columns:132px minmax(0,1fr) 44px!important;
  }
  body.mobile-task-chat-page .chat-back-v581{
    width:auto!important;
    min-width:0!important;
    padding:0 8px!important;
    gap:6px!important;
    white-space:nowrap!important;
  }
  body.mobile-task-chat-page .chat-back-v581 .chat-back-text-v583{
    display:block!important;
    line-height:1!important;
  }
  body.mobile-task-chat-page .chat-back-v581 .chat-back-text-v583 small{
    display:block!important;
    color:#fff!important;
    font-size:10px!important;
    line-height:1.1!important;
    font-weight:700!important;
  }
}


/* V58.4 — restore solid back button fill */
@media(max-width:760px){
  body.mobile-task-chat-page .chat-back-v581,
  body.mobile-task-chat-page .chat-back-v581:link,
  body.mobile-task-chat-page .chat-back-v581:visited{
    display:flex!important;
    align-items:center!important;
    background:#18b7ae!important;
    background-color:#18b7ae!important;
    color:#fff!important;
    border:1px solid #18b7ae!important;
    border-radius:12px!important;
    box-shadow:0 2px 8px rgba(0,0,0,.10)!important;
    text-decoration:none!important;
  }
  body.mobile-task-chat-page .chat-back-v581 i,
  body.mobile-task-chat-page .chat-back-v581 span,
  body.mobile-task-chat-page .chat-back-v581 small{
    color:#fff!important;
  }
}

/* V58.5 — composer follows wrapped text/caret */
@media(max-width:760px){
  body.mobile-task-chat-page .chat-input-v581{
    min-height:40px!important;
    max-height:84px!important;
    overflow-y:hidden;
    overscroll-behavior:contain;
    scrollbar-width:thin;
  }
}

/* V59 server UX */
.task-create-section-label{display:flex;align-items:center;gap:12px;margin:22px 0 10px}
.task-create-section-label>span{width:30px;height:30px;border-radius:9px;background:var(--accent2);color:#fff;display:grid;place-items:center;font-weight:800}
.task-create-section-label strong,.task-create-section-label small{display:block}
.task-create-section-label strong{font-size:16px}.task-create-section-label small{margin-top:2px;color:var(--muted);font-size:12px}
.task-create-inline-block{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.file-drop-v12.file-drop-compact{min-height:64px;padding:10px 14px;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;text-align:left}
.file-drop-v12.file-drop-compact>i{font-size:18px}.file-drop-v12.file-drop-compact>span{margin-left:auto}
.task-form-params .form-grid{align-items:start}
.top-message-btn{color:var(--accent2)}
@media(max-width:760px){
 .task-create-section-label{margin:14px 0 8px}
 .task-create-section-label small{font-size:11px}
 .file-drop-v12.file-drop-compact{min-height:56px;padding:9px 11px;flex-wrap:wrap}
 .file-drop-v12.file-drop-compact>span{width:100%;margin:0 0 0 28px;font-size:10px}
}

/* V59.1 projects, task search and empty description */
.project-row-actions,.mobile-project-actions{display:flex;align-items:center;gap:6px}.project-row-actions form,.mobile-project-actions form,.head-actions form{margin:0}
.mobile-project-card-head strong a{color:inherit;text-decoration:none}
.mobile-project-actions{margin-top:10px;padding-top:9px;border-top:1px solid var(--line)}
.task-project-search{min-width:220px}
.task-description-toggle{width:100%;border:0;background:transparent;padding:0;display:flex;align-items:center;justify-content:space-between;color:var(--text);font:inherit;font-weight:800;cursor:pointer}
.task-description-toggle>span{display:flex;align-items:center;gap:8px}
.task-description-toggle>i{transition:transform .18s ease}
.task-description-toggle[aria-expanded="true"]>i{transform:rotate(180deg)}
.task-description-collapse{padding-top:14px}
.task-description-empty{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted)}
.task-description-empty strong{color:var(--text)}
@media(max-width:760px){.task-project-search{min-width:0}.task-description-empty .btn{width:100%;justify-content:center}}


/* V59.2 — inbox/dialogs polish */
.inbox-panel{border-radius:12px}
.inbox-dialogs{max-width:980px}
.inbox-dialogs .section-title-row{background:#fbfcfc}
.dialog-row{transition:background .15s ease,border-color .15s ease}
.dialog-row:hover{background:#f7fbfb}
.dialog-row.has-unread{box-shadow:inset 3px 0 0 var(--accent2)}
.dialog-row>.avatar{width:44px;height:44px}
.dialog-title strong{font-size:14px}
.dialog-preview{font-size:12px;line-height:1.4}
.dialog-message-count{display:inline-flex;align-items:center;gap:5px;margin-top:6px}
.inbox-summary-v55{max-width:980px}
.inbox-summary-v55 a{transition:transform .15s ease,border-color .15s ease}
.inbox-summary-v55 a:hover{transform:translateY(-1px);border-color:#b9d9d7}

/* V59.2 — desktop task chat composer and context */
@media(min-width:761px){
 .task-chat-v581 .chat-context-v581{min-height:52px;padding:10px 14px}
 .task-chat-v581 .chat-title-v581 strong{font-size:15px}
 .task-chat-v581 .chat-title-v581 small{display:block;margin-top:2px;color:var(--muted);font-size:10px}
 .task-chat-v581 .chat-compose-row-v581{display:grid;grid-template-columns:44px minmax(0,1fr) 46px;gap:8px;align-items:end}
 .task-chat-v581 .chat-attach-v581,.task-chat-v581 .chat-send-v581{height:44px;border:0;border-radius:10px;display:grid;place-items:center;cursor:pointer}
 .task-chat-v581 .chat-attach-v581{background:#eef4f4;color:#60757c}.task-chat-v581 .chat-attach-v581:hover{background:#e3efee;color:var(--accent2)}
 .task-chat-v581 .chat-attach-v581 input{display:none}
 .task-chat-v581 .chat-send-v581{background:var(--accent2);color:#fff;font-size:15px}.task-chat-v581 .chat-send-v581:hover{filter:brightness(.95)}
 .task-chat-v581 .chat-input-v581{min-height:44px!important;max-height:100px!important;padding:11px 12px!important;resize:none!important;border-radius:10px!important}
}

/* Native mobile app: comments glyph is redundant in compact navigation/list UI. */
html.is-capacitor-native .top-message-btn .fa-regular.fa-comments{display:none!important}

/* V59.2 — searchable project on task creation */
.project-picker-control{position:relative}
.project-picker-control>i{position:absolute;left:12px;top:50%;transform:translateY(-50%);z-index:2;color:#8b9aa0;font-size:12px;pointer-events:none}
.project-picker-control .input{padding-left:34px}

/* V59.2 — mobile notes become a notebook, not a window inside a window */
.mobile-note-editor-bar{display:none}
@media(max-width:760px){
 body:has(.note-editor-panel .note-form) .notes-head,
 body:has(.note-editor-panel .note-form) .notes-categories,
 body:has(.note-editor-panel .note-form) .notes-list{display:none!important}
 body:has(.note-editor-panel .note-form) .notes-app{border:0!important;border-radius:0!important;background:#fff!important;margin:-12px -10px 0!important;min-height:calc(100dvh - var(--mobile-nav-h))!important}
 body:has(.note-editor-panel .note-form) .note-editor-panel{padding:0 14px 14px!important;border:0!important;min-height:calc(100dvh - var(--mobile-nav-h))!important}
 .mobile-note-editor-bar{height:46px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:6px;margin:0 -14px 10px;padding:0 12px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:5}
 .mobile-note-editor-bar>a{width:34px;height:34px;display:grid;place-items:center;color:var(--accent2);border-radius:9px}
 .mobile-note-editor-bar>span{text-align:center;font-size:13px;font-weight:800}
 .mobile-note-editor-bar>small{font-size:9px;color:#829096;white-space:nowrap}
 .note-editor-top{gap:7px}.note-title{font-size:22px!important;line-height:1.25;padding:8px 0!important}
 .note-fire-toggle span{border:0!important;background:transparent!important;padding:8px!important}
 .note-meta-v592{display:flex!important;gap:5px!important;margin:4px 0 8px!important;overflow-x:auto}
 .note-meta-v592 select{width:auto!important;max-width:48%!important;flex:1 0 46%;border:0!important;background:#f2f5f5!important;border-radius:9px!important;padding:8px 9px!important;font-size:11px!important}
 .note-form .mini-editor-toolbar{display:none!important}
 .note-content{border:0!important;border-radius:0!important;box-shadow:none!important;padding:8px 0 100px!important;min-height:calc(100dvh - 220px)!important;font-size:16px!important;line-height:1.6!important;resize:none!important;background:#fff!important}
 .note-content:focus{box-shadow:none!important}
 .note-actions{position:fixed!important;left:10px;right:10px;bottom:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom) + 8px);z-index:20;padding:6px!important;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.96)!important;box-shadow:0 8px 26px rgba(20,40,48,.12)}
 .note-actions>.btn-primary{display:none!important}
 .note-actions .btn-soft{flex:1;justify-content:center}
 .note-actions .note-autosave-state{margin:0 6px 0 auto!important}
 .note-archive-form{margin:70px 0 0!important;text-align:center}
 .note-archive-form .btn{border:0;background:transparent;color:#8c999e;font-size:10px}
}


/* V59.4 — desktop custom project autocomplete (no native datalist) */
@media(min-width:761px){
 .task-create-project-picker{position:relative;z-index:20}
 .project-picker-control{position:relative}
 .project-picker-control .input{
   height:44px!important;padding:0 42px 0 38px!important;border:1px solid #d8e0e2!important;
   border-radius:10px!important;background:#fff!important;box-shadow:none!important;
 }
 .project-picker-control .input:focus{border-color:var(--accent2)!important;box-shadow:0 0 0 3px rgba(24,183,174,.09)!important}
 .project-picker-control>i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#829399;font-size:13px;z-index:2;pointer-events:none}
 .project-picker-clear{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#8a999e;cursor:pointer}
 .project-picker-clear:hover{background:#eef4f4;color:#52666c}
 .project-picker-dropdown{position:absolute;left:0;right:0;top:calc(100% - 20px);z-index:100;background:#fff;border:1px solid #dce4e5;border-radius:11px;box-shadow:0 14px 36px rgba(30,50,58,.16);padding:5px;max-height:300px;overflow-y:auto}
 .project-picker-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:#fff;border-radius:8px;padding:9px 10px;text-align:left;cursor:pointer;color:var(--text)}
 .project-picker-option:hover,.project-picker-option:focus{background:#eef8f7;outline:0}
 .project-picker-option span{min-width:0}.project-picker-option strong,.project-picker-option small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .project-picker-option strong{font-size:13px}.project-picker-option small{margin-top:2px;color:#829096;font-size:10px}
 .project-picker-option>i{font-size:9px;color:#b0babc}
 .project-picker-empty{padding:18px;text-align:center;color:var(--muted);font-size:12px}
}


/* V59.5 — custom project search filtering fix */
@media(min-width:761px){
  .task-create-project-picker .project-picker-option[hidden],
  .task-create-project-picker .project-picker-empty[hidden],
  .task-create-project-picker .project-picker-dropdown[hidden]{
    display:none!important;
  }
}


/* V59.6 — compact ergonomic task creation on desktop */
@media(min-width:1000px) and (min-height:700px){
  body:has(.task-create-v59) .content{padding-top:12px!important;padding-bottom:12px!important}
  body:has(.task-create-v59) .page-head{margin-bottom:8px!important}
  body:has(.task-create-v59) .page-head h1{font-size:20px!important;line-height:1.15!important;margin:0!important}
  body:has(.task-create-v59) .page-head p{margin-top:3px!important;font-size:11px!important}
  .task-create-v59{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(330px,.75fr)!important;grid-template-rows:auto 1fr auto!important;gap:7px 10px!important;align-items:start!important}
  .task-create-v59>.task-create-section-label{margin:0!important;min-height:32px!important}
  .task-create-v59>.task-create-section-label:nth-of-type(1){grid-column:1;grid-row:1}
  .task-create-v59>.task-create-section-label:nth-of-type(2){grid-column:2;grid-row:1}
  .task-create-v59>.task-form-main-v596{grid-column:1;grid-row:2}
  .task-create-v59>.task-form-params-v596{grid-column:2;grid-row:2}
  .task-create-v59>.task-create-actions{grid-column:1 / -1;grid-row:3;margin-top:0!important;padding-top:7px!important}

  .task-create-v59 .task-create-section-label>span{width:25px!important;height:25px!important;border-radius:7px!important;font-size:11px!important}
  .task-create-v59 .task-create-section-label{gap:8px!important}
  .task-create-v59 .task-create-section-label strong{font-size:13px!important}
  .task-create-v59 .task-create-section-label small{font-size:9px!important;margin-top:0!important}

  .task-create-v59 .task-form-section{padding:11px 12px!important;border-radius:10px!important}
  .task-create-v59 .field{gap:3px!important;margin:0!important}
  .task-create-v59 .field>label{font-size:10px!important;line-height:1.15!important;margin-bottom:2px!important}
  .task-create-v59 .input,.task-create-v59 .select{min-height:34px!important;height:34px!important;padding-top:6px!important;padding-bottom:6px!important;font-size:12px!important;border-radius:8px!important}
  .task-create-v59 .input-lg{font-size:13px!important}
  .task-create-v59 .task-description{min-height:70px!important;height:70px!important;max-height:100px!important;padding:8px 10px!important;font-size:12px!important;line-height:1.35!important;border-radius:8px!important}
  .task-create-v59 .mini-editor-toolbar{min-height:28px!important;padding:2px 4px!important}
  .task-create-v59 .mini-editor-toolbar button{width:27px!important;height:25px!important}

  .task-create-v59 .task-create-inline-block{margin-top:9px!important;padding-top:8px!important}
  .task-create-v59 .section-title{margin-bottom:5px!important}
  .task-create-v59 .section-title strong{font-size:11px!important}
  .task-create-v59 .section-title span{font-size:9px!important}
  .task-create-v59 .section-title .btn{min-height:28px!important;padding:4px 8px!important;font-size:10px!important}
  .task-create-v59 .check-builder{gap:4px!important}
  .task-create-v59 .check-builder-row{min-height:32px!important;gap:5px!important}
  .task-create-v59 .check-builder-row .input,.task-create-v59 .check-builder-row .select{height:31px!important;min-height:31px!important}
  .task-create-v59 .check-remove{width:30px!important;height:30px!important}
  .task-create-v59 .file-drop-v12.file-drop-compact{min-height:42px!important;padding:6px 9px!important;gap:7px!important}
  .task-create-v59 .file-drop-v12.file-drop-compact>i{font-size:14px!important}
  .task-create-v59 .file-drop-v12.file-drop-compact>strong{font-size:10px!important}
  .task-create-v59 .file-drop-v12.file-drop-compact>span{font-size:8px!important}

  .task-form-params-v596 .form-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  .task-form-params-v596 .field:nth-child(1),
  .task-form-params-v596 .field:nth-child(2),
  .task-form-params-v596 .field:nth-child(3){grid-column:1 / -1}
  .task-form-params-v596 .multi-select-v12{height:58px!important;min-height:58px!important;padding:3px!important}
  .task-form-params-v596 .field-help{font-size:8px!important;margin-top:1px!important}
  .task-form-params-v596 .priority-choice{min-height:34px!important;gap:4px!important}
  .task-form-params-v596 .priority-choice label span{min-height:32px!important;padding:5px 7px!important;font-size:10px!important}

  .task-create-v59 .project-picker-control .input{height:34px!important;min-height:34px!important;padding-left:34px!important}
  .task-create-v59 .project-picker-dropdown{max-height:210px!important;top:calc(100% + 3px)!important}
  .task-create-v59 .project-picker-option{padding:6px 8px!important}
  .task-create-v59 .project-picker-option strong{font-size:11px!important}
  .task-create-v59 .project-picker-option small{font-size:8px!important}

  .task-create-v59 .task-create-actions{display:flex!important;justify-content:flex-end!important;gap:7px!important}
  .task-create-v59 .task-create-actions .btn{min-height:34px!important;padding:6px 12px!important;font-size:11px!important}
}

/* Slightly tighter desktop fallback for shorter laptop screens. */
@media(min-width:1000px) and (max-height:699px){
  .task-create-v59 .task-description{min-height:62px!important;height:62px!important}
  .task-create-v59 .task-form-section{padding:10px!important}
  .task-create-v59 .task-create-inline-block{margin-top:8px!important;padding-top:7px!important}
}


/* V59.7 — desktop-only collapsible sidebar */
.sidebar-collapse-btn{display:none}
@media(min-width:761px){
  .sidebar{
    transition:width .2s ease,padding .2s ease;
  }
  .main{
    transition:margin-left .2s ease;
  }
  .sidebar-collapse-btn{
    display:flex;
    align-items:center;
    gap:9px;
    width:calc(100% - 16px);
    min-height:36px;
    margin:4px 8px 10px;
    padding:0 11px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:9px;
    background:rgba(255,255,255,.045);
    color:rgba(255,255,255,.68);
    font:inherit;
    font-size:11px;
    cursor:pointer;
    transition:background .15s ease,color .15s ease;
  }
  .sidebar-collapse-btn:hover{
    background:rgba(255,255,255,.09);
    color:#fff;
  }
  body.sidebar-collapsed .sidebar{
    width:72px!important;
  }
  body.sidebar-collapsed .main{
    margin-left:72px!important;
  }
  body.sidebar-collapsed .sidebar .brand-text,
  body.sidebar-collapsed .sidebar .side-nav a span,
  body.sidebar-collapsed .sidebar .sidebar-collapse-btn span{
    display:none!important;
  }
  body.sidebar-collapsed .sidebar .brand{
    justify-content:center!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.sidebar-collapsed .sidebar .side-nav a{
    justify-content:center!important;
    padding-left:0!important;
    padding-right:0!important;
    gap:0!important;
  }
  body.sidebar-collapsed .sidebar .side-nav a i{
    margin:0!important;
    font-size:16px!important;
  }
  body.sidebar-collapsed .sidebar-collapse-btn{
    width:42px;
    margin-left:auto;
    margin-right:auto;
    justify-content:center;
    padding:0;
  }
  body.sidebar-collapsed .sidebar .side-nav a .nav-badge,
  body.sidebar-collapsed .sidebar .side-nav a .badge{
    position:absolute;
    top:4px;
    right:5px;
    min-width:15px;
    height:15px;
    padding:0 3px;
    font-size:8px;
  }
  body.sidebar-collapsed .sidebar .side-nav a{
    position:relative;
  }
}
/* Never alter the native/mobile sidebar behavior. */
@media(max-width:760px){
  body.sidebar-collapsed .sidebar,
  body.sidebar-collapsed .main{
    width:auto!important;
    margin-left:0!important;
  }
}


/* V59.8 — logical horizontal dashboard actions on desktop */
@media(min-width:761px){
  .dashboard-head-v598{align-items:center!important}
  .dashboard-quick-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:nowrap!important}
  .dashboard-quick-actions .btn{height:36px!important;padding:0 12px!important;border-radius:9px!important;font-size:11px!important;box-shadow:none!important}
  .dashboard-quick-actions .btn:not(.btn-primary){background:#fff!important}
  .dashboard-quick-actions .btn i{font-size:11px!important}
  .dashboard-action-badge{min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#e9f7f6;color:var(--accent2);display:inline-grid;place-items:center;font-size:8px;font-weight:800}

  .dashboard-modules{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    margin:0 0 12px!important;
    overflow-x:auto!important;
    scrollbar-width:none;
  }
  .dashboard-modules::-webkit-scrollbar{display:none}
  .dashboard-module{
    flex:1 1 0!important;
    min-width:145px!important;
    max-width:none!important;
    height:42px!important;
    padding:0 11px!important;
    border-radius:9px!important;
    box-shadow:none!important;
  }
  .dashboard-module>i:first-child{width:24px!important;height:24px!important;border-radius:6px!important}
  .dashboard-module span{font-size:11px!important}
  .dashboard-module .module-arrow{font-size:8px!important}
}
@media(min-width:761px) and (max-width:1050px){
  .dashboard-quick-actions .btn{padding:0 9px!important}
  .dashboard-module{min-width:132px!important}
}


/* V59.9 — clean icon rail when desktop sidebar is collapsed */
@media(min-width:761px){
 body.sidebar-collapsed .sidebar{
   width:68px!important;
   padding-left:8px!important;
   padding-right:8px!important;
   overflow:hidden!important;
 }

 /* Hide all textual decoration instead of squeezing it vertically. */
 body.sidebar-collapsed .sidebar .brand-text,
 body.sidebar-collapsed .sidebar .side-section-title,
 body.sidebar-collapsed .sidebar .side-caption,
 body.sidebar-collapsed .sidebar .side-nav a span,
 body.sidebar-collapsed .sidebar .sidebar-collapse-btn span,
 body.sidebar-collapsed .sidebar .sidebar-user-name,
 body.sidebar-collapsed .sidebar .sidebar-user-role{
   display:none!important;
 }

 body.sidebar-collapsed .sidebar .brand{
   height:58px!important;
   min-height:58px!important;
   margin:0!important;
   padding:8px 0!important;
   display:flex!important;
   justify-content:center!important;
   align-items:center!important;
 }
 body.sidebar-collapsed .sidebar .brand img,
 body.sidebar-collapsed .sidebar .brand-logo{
   width:42px!important;
   max-width:42px!important;
   height:auto!important;
   margin:0 auto!important;
 }

 body.sidebar-collapsed .sidebar-collapse-btn{
   width:42px!important;
   height:38px!important;
   min-height:38px!important;
   margin:8px auto 14px!important;
   padding:0!important;
   display:grid!important;
   place-items:center!important;
   border-radius:10px!important;
 }

 body.sidebar-collapsed .sidebar .side-nav{
   display:flex!important;
   flex-direction:column!important;
   align-items:center!important;
   gap:5px!important;
   width:100%!important;
   margin:0!important;
   padding:0!important;
 }

 body.sidebar-collapsed .sidebar .side-nav a{
   position:relative!important;
   width:44px!important;
   height:42px!important;
   min-height:42px!important;
   margin:0!important;
   padding:0!important;
   display:grid!important;
   place-items:center!important;
   border-radius:10px!important;
   line-height:1!important;
 }

 body.sidebar-collapsed .sidebar .side-nav a i{
   width:auto!important;
   min-width:0!important;
   margin:0!important;
   font-size:16px!important;
   line-height:1!important;
 }

 body.sidebar-collapsed .sidebar .side-nav a.active{
   background:var(--accent2)!important;
   color:#fff!important;
 }

 body.sidebar-collapsed .sidebar .side-nav a .nav-badge,
 body.sidebar-collapsed .sidebar .side-nav a .badge{
   position:absolute!important;
   top:2px!important;
   right:1px!important;
   min-width:15px!important;
   height:15px!important;
   padding:0 3px!important;
   display:grid!important;
   place-items:center!important;
   border-radius:8px!important;
   font-size:8px!important;
 }

 body.sidebar-collapsed .sidebar hr,
 body.sidebar-collapsed .sidebar .side-divider{
   width:34px!important;
   margin:8px auto!important;
   opacity:.18!important;
 }

 body.sidebar-collapsed .main{
   margin-left:68px!important;
 }
}


/* V60.0 — rebuilt desktop sidebar: compact, stable, icon rail */
@media(min-width:851px){
  :root{--sidebar-w:216px;--sidebar-collapsed-w:72px}

  .sidebar{
    width:var(--sidebar-w)!important;
    padding:0!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    background:#111719!important;
    transition:width .18s ease!important;
  }
  .app-main{
    margin-left:var(--sidebar-w)!important;
    width:calc(100% - var(--sidebar-w))!important;
    transition:margin-left .18s ease,width .18s ease!important;
  }

  .sidebar .brand{
    flex:0 0 auto!important;
    min-height:76px!important;
    padding:15px 16px 12px!important;
    margin:0!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
  }
  .sidebar .brand-logo-link{min-height:34px!important}
  .sidebar .brand-logo{width:auto!important;max-width:142px!important;max-height:34px!important}
  .sidebar .brand>small{
    display:block!important;
    margin:5px 0 0!important;
    color:#718087!important;
    font-size:9px!important;
    white-space:nowrap!important;
  }

  .sidebar-collapse-btn{
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    width:calc(100% - 20px)!important;
    height:34px!important;
    min-height:34px!important;
    margin:9px 10px 3px!important;
    padding:0 10px!important;
    border:0!important;
    border-radius:7px!important;
    background:transparent!important;
    color:#74858b!important;
    font-size:10px!important;
  }
  .sidebar-collapse-btn:hover{background:rgba(255,255,255,.05)!important;color:#dce5e7!important}

  .sidebar .side-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:4px 10px 10px!important;
    margin:0!important;
    gap:0!important;
    scrollbar-width:none!important;
  }
  .sidebar .side-nav::-webkit-scrollbar{display:none!important}
  .sidebar .nav-group{margin:8px 0 0!important}
  .sidebar .nav-group:first-child{margin-top:0!important}
  .sidebar .nav-group-title{
    padding:6px 9px 4px!important;
    color:#64747a!important;
    font-size:8px!important;
    letter-spacing:.11em!important;
  }
  .sidebar .side-nav a{
    min-height:38px!important;
    height:38px!important;
    margin:2px 0!important;
    padding:0 10px!important;
    gap:10px!important;
    border-radius:8px!important;
    color:#b5c0c4!important;
    font-size:12px!important;
    font-weight:600!important;
  }
  .sidebar .side-nav a i{
    flex:0 0 18px!important;
    width:18px!important;
    margin:0!important;
    color:#829298!important;
    font-size:14px!important;
  }
  .sidebar .side-nav a:hover{background:rgba(255,255,255,.05)!important;color:#fff!important}
  .sidebar .side-nav a.active{
    background:#173b3a!important;
    color:#fff!important;
    box-shadow:inset 2px 0 0 #27bbb2!important;
  }
  .sidebar .side-nav a.active i{color:#63d6cd!important}

  .sidebar .nav-group-toggle{
    width:100%!important;
    min-height:32px!important;
    padding:0 9px!important;
    border:0!important;
    border-radius:7px!important;
    background:transparent!important;
    color:#708087!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    cursor:pointer!important;
  }
  .sidebar .nav-group-toggle-label{display:flex!important;align-items:center!important;gap:8px!important;font-size:9px!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important}
  .sidebar .nav-group-toggle-label i{font-size:10px!important}
  .sidebar .nav-group-toggle>svg{width:15px!important;height:15px!important}
  .sidebar .nav-group-items{padding-top:2px!important}

  .sidebar .sidebar-bottom{
    flex:0 0 auto!important;
    margin:0!important;
    padding:8px 10px 10px!important;
    border-top:1px solid rgba(255,255,255,.07)!important;
    background:#111719!important;
  }
  .sidebar .sidebar-user{
    margin:0!important;
    min-height:44px!important;
    padding:6px!important;
    border:0!important;
    border-radius:8px!important;
    background:rgba(255,255,255,.035)!important;
  }
  .sidebar .sidebar-api-link{width:30px!important;height:30px!important}

  /* Collapsed = real icon rail, not a squeezed full sidebar. */
  body.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed-w)!important}
  body.sidebar-collapsed .app-main{
    margin-left:var(--sidebar-collapsed-w)!important;
    width:calc(100% - var(--sidebar-collapsed-w))!important;
  }

  body.sidebar-collapsed .sidebar .brand{
    min-height:66px!important;
    height:66px!important;
    padding:13px 8px!important;
    display:grid!important;
    place-items:center!important;
  }
  body.sidebar-collapsed .sidebar .brand-logo-link{
    width:48px!important;
    min-height:40px!important;
    justify-content:center!important;
  }
  body.sidebar-collapsed .sidebar .brand-logo{
    width:48px!important;
    max-width:48px!important;
    max-height:38px!important;
    object-fit:contain!important;
    object-position:center!important;
  }
  body.sidebar-collapsed .sidebar .brand>small,
  body.sidebar-collapsed .sidebar .brand-fallback span{display:none!important}

  body.sidebar-collapsed .sidebar-collapse-btn{
    width:40px!important;
    height:36px!important;
    min-height:36px!important;
    margin:8px auto 5px!important;
    padding:0!important;
    justify-content:center!important;
    border:1px solid rgba(255,255,255,.07)!important;
    background:rgba(255,255,255,.025)!important;
  }
  body.sidebar-collapsed .sidebar-collapse-btn span{display:none!important}

  body.sidebar-collapsed .sidebar .side-nav{
    padding:5px 10px 8px!important;
    align-items:center!important;
  }
  body.sidebar-collapsed .sidebar .nav-group{
    width:100%!important;
    margin:8px 0 0!important;
  }
  body.sidebar-collapsed .sidebar .nav-group-title,
  body.sidebar-collapsed .sidebar .nav-group-toggle{display:none!important}
  body.sidebar-collapsed .sidebar .nav-group-items{
    display:block!important;
    padding:0!important;
  }
  body.sidebar-collapsed .sidebar .nav-group + .nav-group{
    padding-top:8px!important;
    border-top:1px solid rgba(255,255,255,.07)!important;
  }

  body.sidebar-collapsed .sidebar .side-nav a{
    width:42px!important;
    height:40px!important;
    min-height:40px!important;
    margin:3px auto!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:9px!important;
    box-shadow:none!important;
  }
  body.sidebar-collapsed .sidebar .side-nav a span{display:none!important}
  body.sidebar-collapsed .sidebar .side-nav a i{
    width:auto!important;
    flex:0 0 auto!important;
    font-size:15px!important;
    color:#84949a!important;
  }
  body.sidebar-collapsed .sidebar .side-nav a.active{
    background:#173f3d!important;
    box-shadow:inset 0 0 0 1px rgba(58,208,196,.18)!important;
  }
  body.sidebar-collapsed .sidebar .side-nav a.active i{color:#62d7cd!important}

  body.sidebar-collapsed .sidebar .sidebar-bottom{
    padding:8px 10px 10px!important;
  }
  body.sidebar-collapsed .sidebar .sidebar-bottom>div:first-child{
    justify-content:center!important;
    margin-bottom:5px!important;
  }
  body.sidebar-collapsed .sidebar .sidebar-api-link{
    width:40px!important;height:36px!important;margin:0 auto!important;
  }
  body.sidebar-collapsed .sidebar .sidebar-user{
    width:42px!important;
    min-height:auto!important;
    margin:0 auto!important;
    padding:5px 0!important;
    display:flex!important;
    flex-direction:column!important;
    gap:7px!important;
    background:transparent!important;
  }
  body.sidebar-collapsed .sidebar .sidebar-user-profile{
    width:34px!important;height:34px!important;min-width:34px!important;
    padding:0!important;margin:0!important;display:grid!important;place-items:center!important;
  }
  body.sidebar-collapsed .sidebar .sidebar-user-profile>div{display:none!important}
  body.sidebar-collapsed .sidebar .sidebar-user-profile .avatar{
    margin:0!important;width:30px!important;height:30px!important;
  }
  body.sidebar-collapsed .sidebar .sidebar-user>a:last-child{
    width:34px!important;height:30px!important;display:grid!important;place-items:center!important;
    margin:0!important;border-radius:7px!important;
  }
  body.sidebar-collapsed .sidebar .sidebar-user>a:last-child:hover{background:rgba(255,255,255,.06)!important}
}

/* Mobile remains exactly on its own existing sidebar behavior. */
@media(max-width:850px){
  .sidebar-collapse-btn{display:none!important}
}


/* V60.2 — desktop personal Kanban uses available viewport width, no page horizontal scroll */
@media(min-width:851px){
  html,body{max-width:100%;overflow-x:hidden!important}

  /* The personal board must fit the workspace instead of reserving 7 fixed columns. */
  .personal-kanban{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:8px!important;
    overflow-x:visible!important;
    padding-right:0!important;
    padding-bottom:8px!important;
  }
  .personal-kanban-col{
    min-width:0!important;
    width:auto!important;
    max-width:none!important;
  }
  .personal-kanban-col>header strong{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .my-task-card{min-width:0!important}
  .my-task-card h3,
  .my-task-card p{overflow-wrap:anywhere!important}

  /* Main workspace may shrink after sidebar width changes. */
  .app-main,.content{min-width:0!important;max-width:100%!important}
}

/* On narrower desktop screens retain a board-local scroll only, never browser-page scroll. */
@media(min-width:851px) and (max-width:1280px){
  .personal-kanban{
    grid-template-columns:repeat(5,minmax(210px,1fr))!important;
    overflow-x:auto!important;
    overscroll-behavior-x:contain;
    scrollbar-width:thin;
  }
}

/* V61 — employee direct/group messenger */
.messenger-widget{display:none}
.inbox-tabs-v61{display:flex;gap:4px;margin:0 0 12px;padding:4px;background:#eaf0f1;border-radius:10px;width:max-content}
.inbox-tabs-v61 button{border:0;background:transparent;padding:8px 13px;border-radius:7px;font-weight:700;color:#64767c;cursor:pointer}.inbox-tabs-v61 button.active{background:#fff;color:#102126;box-shadow:0 1px 3px rgba(20,40,45,.08)}.inbox-tabs-v61 b{margin-left:5px;background:#e9f7f6;color:#07988f;padding:2px 6px;border-radius:10px;font-size:9px}
.inbox-v61-head{align-items:center}.inbox-create-actions{display:flex;gap:7px}
.employee-dialog-list{background:#fff;border:1px solid #dce5e7;border-radius:12px;overflow:hidden}
.employee-dialog-row{display:flex;align-items:center;gap:11px;min-height:70px;padding:10px 13px;border-bottom:1px solid #edf1f2;color:inherit;text-decoration:none}.employee-dialog-row:last-child{border-bottom:0}.employee-dialog-row:hover{background:#f8fbfb}.employee-dialog-row.has-unread{background:#f1fbfa}
.employee-dialog-avatar{flex:0 0 auto}.group-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e5f7f5;color:#129f97}.employee-dialog-main{min-width:0;flex:1}.employee-dialog-title{display:flex;justify-content:space-between;gap:12px}.employee-dialog-title strong{font-size:13px}.employee-dialog-title time{font-size:9px;color:#8a999e;white-space:nowrap}.employee-dialog-preview{display:block;margin-top:4px;font-size:11px;color:#75868c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-dialog-unread{min-width:20px;height:20px;padding:0 5px;border-radius:10px;display:grid;place-items:center;background:#18b7ae;color:#fff;font-size:9px}
.inbox-empty-v61{min-height:180px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:6px}.inbox-empty-v61>i{font-size:24px;color:#aab7bb}.inbox-empty-v61 strong{font-size:13px}.inbox-empty-v61 span{font-size:10px;color:#839297}
.chat-create-modal{position:fixed;inset:0;z-index:3000;background:rgba(11,22,25,.38);display:grid;place-items:center;padding:20px}.chat-create-modal[hidden]{display:none!important}.chat-create-card{width:min(460px,100%);max-height:80vh;overflow:auto;background:#fff;border-radius:14px;padding:15px;box-shadow:0 24px 70px rgba(0,0,0,.2)}.chat-create-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.chat-create-head strong{font-size:15px}.chat-create-head button{width:32px;height:32px;border:0;border-radius:8px;background:#f1f5f5;cursor:pointer}.chat-create-card form{display:grid;gap:8px}.chat-create-card label{font-size:10px;font-weight:700}.chat-create-card select,.chat-create-card input{width:100%;height:40px;border:1px solid #d7e0e2;border-radius:9px;padding:0 10px;background:#fff}.chat-member-list{max-height:260px;overflow:auto;border:1px solid #e1e7e8;border-radius:9px;padding:5px}.chat-member-list label{display:flex;align-items:center;gap:8px;padding:7px;border-radius:7px;cursor:pointer}.chat-member-list label:hover{background:#f2f8f8}.chat-member-list label span{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:600}
.employee-chat-page{height:calc(100vh - 92px);display:grid;grid-template-rows:auto 1fr auto;background:#fff;border:1px solid #dce4e6;border-radius:12px;overflow:hidden}.employee-chat-head{display:flex;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid #e7ecee}.employee-chat-head h1{font-size:14px;margin:0}.employee-chat-head p{font-size:9px;color:#829197;margin:2px 0 0}.employee-chat-messages{min-height:0;overflow:auto;padding:14px;background:#f5f8f8}.employee-message{max-width:72%;margin:0 0 10px}.employee-message.mine{margin-left:auto}.employee-message-meta{display:flex;gap:7px;align-items:center;margin:0 4px 3px;font-size:9px;color:#849398}.employee-message.mine .employee-message-meta{justify-content:flex-end}.employee-message-bubble{padding:9px 11px;border-radius:11px 11px 11px 3px;background:#fff;border:1px solid #e1e8e9;font-size:12px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}.employee-message.mine .employee-message-bubble{background:#dff5f2;border-color:#c5ebe6;border-radius:11px 11px 3px 11px}.employee-chat-compose{display:grid;grid-template-columns:1fr 40px;gap:7px;padding:9px;border-top:1px solid #e5ebec;background:#fff}.employee-chat-compose textarea{resize:none;max-height:110px;min-height:40px;border:1px solid #d8e1e3;border-radius:10px;padding:10px 11px;font:inherit;font-size:12px}.employee-chat-compose button{border:0;border-radius:10px;background:#18b7ae;color:#fff;cursor:pointer}
@media(min-width:851px){
 .messenger-widget{display:block;position:fixed;right:22px;bottom:22px;z-index:2200}.messenger-fab{position:relative;width:50px;height:50px;border:0;border-radius:14px;background:#152326;color:#fff;box-shadow:0 10px 28px rgba(15,34,38,.24);font-size:18px;cursor:pointer}.messenger-fab:hover{background:#18a9a1}.messenger-fab b{position:absolute;right:-4px;top:-5px;min-width:19px;height:19px;padding:0 4px;border-radius:10px;background:#e94b57;color:#fff;font-size:9px;line-height:19px}
 .messenger-popover{position:absolute;right:0;bottom:60px;width:330px;background:#fff;border:1px solid #dce5e7;border-radius:13px;box-shadow:0 18px 55px rgba(20,38,42,.2);overflow:hidden}.messenger-popover[hidden]{display:none!important}.messenger-popover-head{height:45px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1f2}.messenger-popover-head strong{font-size:13px}.messenger-popover-head a{font-size:10px;color:#129f97}.messenger-widget-list{max-height:360px;overflow:auto}.messenger-widget-list>a{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center;padding:9px 11px;border-bottom:1px solid #f0f3f4;color:inherit;text-decoration:none}.messenger-widget-list>a:hover{background:#f6faf9}.messenger-widget-list strong,.messenger-widget-list small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.messenger-widget-list strong{font-size:11px}.messenger-widget-list small{font-size:9px;color:#7f8e93;margin-top:2px}.messenger-widget-list>a>b{min-width:18px;height:18px;border-radius:9px;background:#18b7ae;color:#fff;display:grid;place-items:center;font-size:8px}.widget-chat-icon{width:28px;height:28px;border-radius:8px;background:#eaf7f6;color:#149f97;display:grid;place-items:center}.widget-empty{padding:25px 12px;text-align:center;color:#859499;font-size:10px}.messenger-widget-all{display:flex;align-items:center;justify-content:center;gap:6px;height:39px;background:#f7fafa;color:#496066;text-decoration:none;font-size:10px;font-weight:700}
}
@media(max-width:850px){
 .inbox-v61-head{display:block!important}.inbox-create-actions{margin-top:9px}.inbox-create-actions .btn{flex:1}.inbox-tabs-v61{width:100%}.inbox-tabs-v61 button{flex:1}.employee-dialog-row{min-height:64px;padding:9px 10px}.employee-dialog-title strong{font-size:12px}.employee-chat-page{height:calc(100dvh - 118px);border:0;border-radius:0;margin:-10px}.employee-chat-head{padding-top:max(9px,env(safe-area-inset-top))}.employee-chat-head .btn span{display:none}.employee-chat-messages{padding:10px}.employee-message{max-width:86%}.employee-chat-compose{padding-bottom:max(9px,env(safe-area-inset-bottom))}
}


/* V61.1 — messenger layout fixes */
.chat-create-card form[hidden]{display:none!important}

/* Do not apply text-input sizing to checkboxes. */
.chat-create-card input:not([type="checkbox"]){
  width:100%!important;
  height:40px!important;
  border:1px solid #d7e0e2!important;
  border-radius:9px!important;
  padding:0 10px!important;
  background:#fff!important;
}
.chat-member-list label{
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding:6px 8px!important;
}
.chat-member-list label>input[type="checkbox"]{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  flex:0 0 16px!important;
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.chat-member-list label>span{
  flex:1 1 auto!important;
  min-width:0!important;
}
.chat-create-card .btn{width:100%!important}

/* In the native app there is already "Входящие" in bottom navigation.
   Hide the whole duplicated top button instead of leaving an empty square. */
html.is-capacitor-native .top-message-btn{display:none!important}

@media(min-width:851px){
  .chat-create-card{
    width:min(430px,calc(100vw - 40px))!important;
    max-height:min(680px,calc(100vh - 48px))!important;
    padding:16px!important;
  }
  .chat-create-head{margin-bottom:14px!important}
  .chat-create-card form{gap:9px!important}
  .chat-member-list{
    max-height:300px!important;
    padding:4px!important;
  }
}

@media(max-width:850px){
  .chat-create-modal{
    padding:10px!important;
    align-items:end!important;
  }
  .chat-create-card{
    width:100%!important;
    max-width:none!important;
    max-height:88dvh!important;
    border-radius:16px 16px 10px 10px!important;
    padding:14px!important;
  }
  .chat-create-head{margin-bottom:10px!important}
  .chat-create-head strong{font-size:14px!important}
  .chat-create-card form{gap:7px!important}
  .chat-create-card select,
  .chat-create-card input:not([type="checkbox"]){
    height:42px!important;
    font-size:13px!important;
  }
  .chat-member-list{
    max-height:38dvh!important;
    padding:3px!important;
  }
  .chat-member-list label{
    min-height:44px!important;
    padding:5px 7px!important;
  }
  .chat-member-list label span{
    font-size:12px!important;
  }
  .chat-create-card .btn{
    min-height:42px!important;
    position:sticky;
    bottom:0;
  }
}

/* V61.2 — employee chat uses the same visual system as task chat */
.employee-chat-task-style{height:calc(100vh - 100px)!important;min-height:500px!important}
.employee-chat-task-style .task-chat-panel{height:100%!important;display:grid!important;grid-template-rows:auto 1fr auto!important;min-height:0!important}
.employee-task-messages{min-height:0!important;overflow-y:auto!important;padding:14px!important;background:#f5f8f8!important}
.employee-task-compose{margin:0!important}
.employee-message{max-width:72%;margin:0 0 10px}
.employee-message.mine{margin-left:auto}
.employee-message-bubble:empty{display:none}
.employee-chat-image{display:block;margin-top:5px;max-width:320px;border-radius:10px;overflow:hidden;background:#e7eded}
.employee-chat-image img{display:block;width:100%;height:auto;max-height:360px;object-fit:cover}
.employee-chat-file{display:flex;align-items:center;gap:8px;margin-top:5px;padding:8px 9px;border-radius:8px;background:rgba(255,255,255,.7);color:inherit;text-decoration:none}
.employee-file-preview{padding:5px 45px 7px;font-size:9px;color:#718388;background:#fff}
.mobile-bottom-nav a[href^="inbox.php"]>i{display:inline-block!important;visibility:visible!important;opacity:1!important}
@media(max-width:850px){
 .employee-chat-task-style{height:calc(100dvh - 68px)!important;min-height:0!important;margin:0!important}
 .employee-chat-task-style .chat-context-v581{position:relative!important}
 .employee-task-messages{padding:9px!important}
 .employee-message{max-width:88%!important}
 .employee-chat-image{max-width:min(72vw,300px)!important}
 .employee-chat-image img{max-height:42dvh!important}
 .employee-file-preview{padding:4px 48px 6px!important}
 html.is-capacitor-native .mobile-bottom-nav a[href^="inbox.php"] .fa-comments{display:inline-block!important}
}


/* V61.6 — personal/group chat: exact mobile geometry of proven task chat V58.5 */
@media(max-width:760px){
  body.employee-chat-mobile-page .topbar,
  body.employee-chat-mobile-page .mobile-bottom-nav{
    /* Keep app navigation visible, unlike task chat, but reserve its exact space below. */
  }

  body.employee-chat-mobile-page,
  body.employee-chat-mobile-page .main{
    height:100dvh!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  body.employee-chat-mobile-page .main{padding:0!important}
  body.employee-chat-mobile-page .content{
    height:calc(100dvh - var(--mobile-nav-h) - env(safe-area-inset-bottom))!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
  }
  body.employee-chat-mobile-page .task-chat-layout.task-chat-v581{
    display:block!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
  }
  body.employee-chat-mobile-page .task-chat-v581 .task-chat-panel{
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    display:flex!important;
    flex-direction:column!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#f4f7f8!important;
  }
  body.employee-chat-mobile-page .chat-context-v581{
    flex:0 0 52px!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    align-items:center!important;
    padding:0 6px!important;
    background:#fff!important;
    border-bottom:1px solid #e3eaed!important;
  }
  body.employee-chat-mobile-page .chat-back-v581{
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    padding:0!important;
    border:0!important;
    border-radius:11px!important;
    background:#eef5f5!important;
    color:#087f82!important;
    text-decoration:none!important;
  }
  body.employee-chat-mobile-page .chat-back-v581 span{display:none!important}
  body.employee-chat-mobile-page .chat-title-v581{
    min-width:0!important;
    text-align:left!important;
    line-height:1.05!important;
    padding-left:3px!important;
  }
  body.employee-chat-mobile-page .chat-title-v581 strong{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:14px!important;
  }
  body.employee-chat-mobile-page .chat-title-v581 small{
    display:block!important;
    margin-top:3px!important;
    font-size:9px!important;
    color:#91a0a5!important;
  }
  body.employee-chat-mobile-page .chat-history-v581{
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    color:#71838b!important;
  }

  body.employee-chat-mobile-page .employee-task-messages{
    flex:1 1 0!important;
    height:0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:7px 7px 8px!important;
    margin:0!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }

  body.employee-chat-mobile-page .employee-message{
    width:auto!important;
    max-width:95%!important;
    margin-bottom:5px!important;
    gap:5px!important;
  }
  body.employee-chat-mobile-page .employee-message-avatar{
    width:25px!important;height:25px!important;min-width:25px!important;flex-basis:25px!important;
  }
  body.employee-chat-mobile-page .employee-message-bubble{
    max-width:calc(100vw - 58px)!important;
    padding:6px 8px!important;
    border-radius:11px!important;
    font-size:13px!important;
    line-height:1.3!important;
  }
  body.employee-chat-mobile-page .employee-message-meta{margin-bottom:2px!important}
  body.employee-chat-mobile-page .employee-message-meta strong{font-size:10.5px!important}
  body.employee-chat-mobile-page .employee-message-meta time{font-size:8.5px!important}

  /* Critical part: composer is a normal flex child ABOVE bottom nav, not translated/offset. */
  body.employee-chat-mobile-page .chat-compose-v581.employee-task-compose{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    flex:0 0 auto!important;
    margin:0!important;
    padding:5px 6px!important;
    background:#fff!important;
    border-top:1px solid #e3eaed!important;
    box-shadow:none!important;
    z-index:5!important;
  }
  body.employee-chat-mobile-page .chat-compose-row-v581{
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr) 42px!important;
    gap:5px!important;
    align-items:end!important;
  }
  body.employee-chat-mobile-page .chat-attach-v581,
  body.employee-chat-mobile-page .chat-send-v581{
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:12px!important;
    font-size:15px!important;
  }
  body.employee-chat-mobile-page .chat-attach-v581{
    background:#eef3f4!important;
    color:#5e727a!important;
  }
  body.employee-chat-mobile-page .chat-send-v581{
    width:42px!important;
    background:#18b7ae!important;
    color:#fff!important;
  }
  body.employee-chat-mobile-page .chat-input-v581{
    display:block!important;
    width:100%!important;
    height:40px!important;
    min-height:40px!important;
    max-height:84px!important;
    margin:0!important;
    padding:9px 11px!important;
    box-sizing:border-box!important;
    border:1px solid #dbe4e7!important;
    border-radius:13px!important;
    background:#f9fbfb!important;
    font-size:16px!important;
    line-height:20px!important;
    resize:none!important;
    overflow-y:hidden!important;
    overscroll-behavior:contain!important;
  }
  body.employee-chat-mobile-page .employee-file-preview{
    max-height:56px!important;
    overflow:auto!important;
    margin:0 0 4px!important;
    padding:3px 46px!important;
  }

  /* Native Android has fixed bottom nav. This creates a clear visual gap above it. */
  html.is-capacitor-native body.employee-chat-mobile-page .content{
    height:calc(100dvh - var(--mobile-nav-h) - env(safe-area-inset-bottom) - 8px)!important;
  }
  html.is-capacitor-native body.employee-chat-mobile-page .chat-compose-v581.employee-task-compose{
    margin-bottom:8px!important;
  }
}


/* V61.7 — employee chat mobile: true parity with task chat.
   The chat itself owns the whole mobile viewport; app top/bottom navigation is hidden here. */
@media(max-width:760px){
  body.employee-chat-mobile-page{
    height:100dvh!important;
    min-height:100dvh!important;
    overflow:hidden!important;
    background:#f4f7f8!important;
  }

  /* This is the key difference visible in the screenshots:
     task chat has no generic app header and no bottom navigation while inside a dialog. */
  body.employee-chat-mobile-page .topbar,
  body.employee-chat-mobile-page .mobile-bottom-nav,
  body.employee-chat-mobile-page .mobile-nav,
  body.employee-chat-mobile-page nav.mobile-bottom-nav{
    display:none!important;
  }

  body.employee-chat-mobile-page .main,
  body.employee-chat-mobile-page main.main{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  body.employee-chat-mobile-page .content{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  body.employee-chat-mobile-page .task-chat-layout.task-chat-v581{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
  }

  body.employee-chat-mobile-page .task-chat-panel{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:0!important;
    background:#f4f7f8!important;
  }

  /* Same compact dialog header as task chat. */
  body.employee-chat-mobile-page .chat-context-v581{
    flex:0 0 58px!important;
    height:58px!important;
    display:grid!important;
    grid-template-columns:minmax(118px,auto) minmax(0,1fr) 50px!important;
    align-items:center!important;
    gap:6px!important;
    padding:4px 8px!important;
    padding-top:max(4px,env(safe-area-inset-top))!important;
    box-sizing:content-box!important;
    background:#fff!important;
    border-bottom:1px solid #e2e9eb!important;
  }
  body.employee-chat-mobile-page .chat-back-v581{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:5px!important;
    width:auto!important;
    min-width:0!important;
    height:46px!important;
    padding:0 12px!important;
    border:0!important;
    border-radius:12px!important;
    background:#18b7ae!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:11px!important;
    font-weight:700!important;
  }
  body.employee-chat-mobile-page .chat-back-v581 span{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  body.employee-chat-mobile-page .chat-title-v581{
    min-width:0!important;
    padding:0!important;
    text-align:center!important;
    line-height:1.05!important;
  }
  body.employee-chat-mobile-page .chat-title-v581 strong{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:14px!important;
    color:#17262a!important;
  }
  body.employee-chat-mobile-page .chat-title-v581 small{
    display:block!important;
    margin-top:3px!important;
    font-size:9px!important;
    color:#91a0a5!important;
  }
  body.employee-chat-mobile-page .chat-history-v581{
    display:grid!important;
    place-items:center!important;
    width:46px!important;
    height:46px!important;
    justify-self:end!important;
    border-radius:11px!important;
    background:#eef3f4!important;
    color:#687b81!important;
  }

  /* Only the message history scrolls. */
  body.employee-chat-mobile-page .employee-task-messages{
    flex:1 1 0!important;
    height:0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    margin:0!important;
    padding:7px 8px!important;
    background:#f4f7f8!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }

  /* Composer sits immediately above Android keyboard/system bottom, exactly like task chat. */
  body.employee-chat-mobile-page .chat-compose-v581.employee-task-compose{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    inset:auto!important;
    transform:none!important;
    flex:0 0 auto!important;
    width:100%!important;
    margin:0!important;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom))!important;
    border-top:1px solid #dfe7e9!important;
    background:#fff!important;
    box-shadow:0 -3px 12px rgba(25,45,50,.04)!important;
    z-index:20!important;
  }

  body.employee-chat-mobile-page .chat-compose-row-v581{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 46px!important;
    align-items:end!important;
    gap:6px!important;
    width:100%!important;
  }
  body.employee-chat-mobile-page .chat-attach-v581{
    width:42px!important;height:42px!important;min-width:42px!important;
    display:grid!important;place-items:center!important;
    margin:0!important;padding:0!important;
    border:0!important;border-radius:12px!important;
    background:#eef3f4!important;color:#587078!important;
  }
  body.employee-chat-mobile-page .chat-send-v581{
    width:46px!important;height:42px!important;min-width:46px!important;
    display:grid!important;place-items:center!important;
    margin:0!important;padding:0!important;
    border:0!important;border-radius:12px!important;
    background:#18b7ae!important;color:#fff!important;
  }
  body.employee-chat-mobile-page .chat-input-v581{
    width:100%!important;
    height:42px!important;
    min-height:42px!important;
    max-height:88px!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:10px 12px!important;
    border:1px solid #d9e3e5!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:none!important;
    outline:none!important;
    resize:none!important;
    overflow-y:hidden!important;
    font-size:16px!important;
    line-height:20px!important;
  }
  body.employee-chat-mobile-page .chat-input-v581:focus{
    border-color:#9ccfcb!important;
    box-shadow:0 0 0 2px rgba(24,183,174,.08)!important;
  }

  body.employee-chat-mobile-page .employee-file-preview{
    max-height:58px!important;
    overflow:auto!important;
    margin:0 48px 5px!important;
    padding:3px 0!important;
    background:#fff!important;
  }

  /* Keep the same compact message geometry as task chat. */
  body.employee-chat-mobile-page .employee-message{
    width:auto!important;
    max-width:94%!important;
    margin-bottom:6px!important;
    gap:6px!important;
  }
  body.employee-chat-mobile-page .employee-message-avatar{
    width:26px!important;height:26px!important;min-width:26px!important;flex-basis:26px!important;
  }
  body.employee-chat-mobile-page .employee-message-bubble{
    max-width:calc(100vw - 64px)!important;
    padding:7px 9px!important;
    border-radius:12px!important;
    font-size:13px!important;
    line-height:1.3!important;
  }
}

/* Native WebView: no extra artificial 8px offset — keyboard resize does the positioning. */
@media(max-width:760px){
  html.is-capacitor-native body.employee-chat-mobile-page .content,
  html.is-capacitor-native body.employee-chat-mobile-page .task-chat-layout.task-chat-v581{
    height:100%!important;
    max-height:none!important;
  }
  html.is-capacitor-native body.employee-chat-mobile-page .chat-compose-v581.employee-task-compose{
    margin-bottom:0!important;
    transform:none!important;
  }
}


/* V61.9 — personal chat is not an imitation anymore: it uses the task-chat V58.5 screen model */
@media(max-width:760px){
  body.employee-chat-mobile-page.mobile-task-chat-page .topbar,
  body.employee-chat-mobile-page.mobile-task-chat-page .task-context-nav,
  body.employee-chat-mobile-page.mobile-task-chat-page .page-head,
  body.employee-chat-mobile-page.mobile-task-chat-page .task-subnav,
  body.employee-chat-mobile-page.mobile-task-chat-page .mobile-bottom-nav{
    display:none!important;
  }

  body.employee-chat-mobile-page.mobile-task-chat-page,
  body.employee-chat-mobile-page.mobile-task-chat-page .main{
    height:100dvh!important;min-height:0!important;overflow:hidden!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .main{padding:0!important}
  body.employee-chat-mobile-page.mobile-task-chat-page .content{
    height:100dvh!important;min-height:0!important;
    padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)!important;
    margin:0!important;overflow:hidden!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .task-chat-layout.task-chat-v581{
    display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .task-chat-v581 .task-chat-panel{
    height:100%!important;min-height:0!important;max-height:none!important;
    display:flex!important;flex-direction:column!important;
    border:0!important;border-radius:0!important;overflow:hidden!important;background:#f4f7f8!important;
  }

  body.employee-chat-mobile-page.mobile-task-chat-page .chat-context-v581{
    flex:0 0 44px!important;
    display:grid!important;
    grid-template-columns:132px minmax(0,1fr) 44px!important;
    align-items:center!important;
    padding:0 6px!important;
    background:#fff!important;
    border-bottom:1px solid #e3eaed!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-back-v581,
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-back-v581:link,
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-back-v581:visited{
    display:flex!important;align-items:center!important;gap:6px!important;
    width:auto!important;min-width:0!important;height:40px!important;padding:0 8px!important;
    white-space:nowrap!important;
    background:#18b7ae!important;color:#fff!important;border:1px solid #18b7ae!important;
    border-radius:12px!important;box-shadow:0 2px 8px rgba(0,0,0,.10)!important;
    font-size:13px!important;font-weight:750!important;text-decoration:none!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-back-v581 i,
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-back-v581 span{color:#fff!important}
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-title-v581{
    min-width:0!important;text-align:center!important;line-height:1.05!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-title-v581 strong{
    display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
    font-size:14px!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-title-v581 small{
    display:block!important;margin-top:2px!important;font-size:9px!important;color:#9aa7ad!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-history-v581{
    display:grid!important;place-items:center!important;width:40px!important;height:40px!important;color:#71838b!important;
  }

  /* Fixed screen: ONLY messages scroll. */
  body.employee-chat-mobile-page.mobile-task-chat-page .employee-task-messages{
    flex:1 1 0!important;height:0!important;min-height:0!important;max-height:none!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    padding:7px 7px 8px!important;margin:0!important;
    -webkit-overflow-scrolling:touch!important;
  }

  /* Exact task message geometry */
  body.employee-chat-mobile-page.mobile-task-chat-page .task-message{
    display:flex!important;align-items:flex-end!important;max-width:95%!important;margin-bottom:5px!important;gap:5px!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .task-message.mine{
    margin-left:auto!important;flex-direction:row-reverse!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .task-message>.avatar{
    width:25px!important;height:25px!important;min-width:25px!important;flex:0 0 25px!important;
    border-radius:50%!important;overflow:hidden!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .task-message>.avatar img{
    display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .message-bubble{
    width:auto!important;max-width:calc(100vw - 50px)!important;
    padding:6px 8px!important;border-radius:11px!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .message-meta{margin-bottom:2px!important}
  body.employee-chat-mobile-page.mobile-task-chat-page .message-meta strong{font-size:10.5px!important}
  body.employee-chat-mobile-page.mobile-task-chat-page .message-meta span{font-size:8.5px!important}
  body.employee-chat-mobile-page.mobile-task-chat-page .message-text{font-size:13px!important;line-height:1.3!important}

  /* Exact V58.5 composer: flex child, never absolute/floating */
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-compose-v581.employee-task-compose{
    position:relative!important;flex:0 0 auto!important;
    top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;inset:auto!important;
    transform:none!important;
    width:auto!important;margin:0!important;padding:5px 6px!important;
    background:#fff!important;border-top:1px solid #e3eaed!important;box-shadow:none!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-compose-row-v581{
    display:grid!important;grid-template-columns:40px minmax(0,1fr) 42px!important;gap:5px!important;align-items:end!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-attach-v581,
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-send-v581{
    display:grid!important;place-items:center!important;
    width:40px!important;height:40px!important;min-width:40px!important;
    padding:0!important;margin:0!important;border:0!important;border-radius:12px!important;font-size:15px!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-attach-v581{background:#eef3f4!important;color:#5e727a!important}
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-send-v581{
    width:42px!important;background:#18b7ae!important;color:#fff!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-input-v581{
    width:100%!important;height:40px!important;min-height:40px!important;max-height:84px!important;
    margin:0!important;padding:9px 11px!important;box-sizing:border-box!important;
    border:1px solid #dbe4e7!important;border-radius:13px!important;background:#f9fbfb!important;
    font-size:16px!important;line-height:20px!important;resize:none!important;
    overflow-y:hidden!important;overscroll-behavior:contain!important;scrollbar-width:thin!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .employee-file-preview{
    max-height:56px!important;overflow:auto!important;margin:0 0 4px!important;padding:0!important;
  }
}


/* === MERGED NOTES CSS FROM V61.5.3 === */
/* V61.4 — desktop Notes workspace: notebook-like, focused, autosave-first */
@media(min-width:851px){
  body:has(.note-editor-panel .note-form) .content{padding-bottom:18px!important}

  /* Page becomes a real two-pane notebook workspace. */
  .notes-desktop-v614,
  body:has(.note-editor-panel) .notes-page{
    display:grid!important;
    grid-template-columns:minmax(280px,340px) minmax(0,1fr)!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:12px!important;
    height:calc(100vh - 92px)!important;
    min-height:600px!important;
    overflow:hidden!important;
  }

  .notes-page .notes-head,
  .notes-page .page-head{
    grid-column:1/-1!important;
    margin:0!important;
    min-height:54px!important;
    align-items:center!important;
  }

  /* Left side: compact note library. */
  .notes-page .notes-sidebar,
  .notes-page .notes-list-wrap,
  .notes-page .notes-list-desktop-v614{
    grid-column:1!important;
    grid-row:2!important;
    min-width:0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:3px!important;
    scrollbar-width:thin!important;
  }

  .notes-page .notes-toolbar,
  .notes-page .notes-filters,
  .notes-page .notes-categories{
    position:sticky!important;
    top:0!important;
    z-index:4!important;
    background:#f3f7f7!important;
  }

  .notes-page .note-card,
  .notes-page .note-item{
    margin-bottom:6px!important;
    border:1px solid #dde6e7!important;
    border-radius:9px!important;
    background:#fff!important;
    box-shadow:none!important;
    transition:border-color .12s ease,background .12s ease!important;
  }
  .notes-page .note-card:hover,
  .notes-page .note-item:hover{border-color:#bfd7d5!important;background:#fbfdfd!important}
  .notes-page .note-card.active,
  .notes-page .note-item.active,
  .notes-page .note-card.is-active{
    border-color:#79cfc9!important;
    box-shadow:inset 3px 0 0 var(--accent2)!important;
    background:#f4fbfa!important;
  }

  /* Right side: writing surface, not another card/window. */
  .notes-page .note-editor-panel,
  .notes-page .note-editor-desktop-v614{
    grid-column:2!important;
    grid-row:2!important;
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid #dce5e6!important;
    border-radius:11px!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  .notes-page .note-editor-panel .note-form{
    height:100%!important;
    min-height:0!important;
    display:grid!important;
    grid-template-rows:auto auto minmax(0,1fr) auto!important;
    padding:0!important;
    background:#fff!important;
  }

  /* Minimal editor header: back/title/autosave state. */
  .notes-page .mobile-note-editor-bar{
    display:flex!important;
    align-items:center!important;
    min-height:46px!important;
    padding:0 15px!important;
    border-bottom:1px solid #edf1f2!important;
    background:#fbfcfc!important;
  }
  .notes-page .mobile-note-editor-bar>a,
  .notes-page .mobile-note-editor-bar>button{
    width:30px!important;height:30px!important;border-radius:7px!important;
  }
  .notes-page .mobile-note-editor-bar strong{font-size:11px!important}
  .notes-page [data-mobile-save-state]{
    margin-left:auto!important;
    color:#839398!important;
    font-size:9px!important;
  }

  /* Title feels like a document title. */
  .notes-page .note-form input[name="title"]{
    width:100%!important;
    height:auto!important;
    min-height:58px!important;
    padding:14px 22px 8px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
    color:#132327!important;
    font-size:22px!important;
    line-height:1.25!important;
    font-weight:750!important;
  }
  .notes-page .note-form input[name="title"]::placeholder{color:#aab6b9!important}
  .notes-page .note-form input[name="title"]:focus{outline:none!important;box-shadow:none!important}

  /* Actual notebook writing area. */
  .notes-page .note-form textarea[name="content"]{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    resize:none!important;
    overflow-y:auto!important;
    padding:12px 22px 28px!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    box-shadow:none!important;
    background:
      linear-gradient(#fff 27px,#eef3f3 28px)!important;
    background-size:100% 28px!important;
    color:#243337!important;
    font-size:14px!important;
    line-height:28px!important;
    font-family:inherit!important;
  }
  .notes-page .note-form textarea[name="content"]::placeholder{color:#a2afb2!important}
  .notes-page .note-form textarea[name="content"]:focus{background-color:#fff!important}

  /* Category + project are metadata, not giant form fields. */
  .notes-page .note-meta-v592{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    padding:8px 14px!important;
    border-top:1px solid #edf1f2!important;
    background:#fbfcfc!important;
  }
  .notes-page .note-meta-v592 select{
    width:auto!important;
    max-width:240px!important;
    min-width:150px!important;
    height:32px!important;
    margin:0!important;
    padding:0 28px 0 9px!important;
    border:1px solid #dde5e6!important;
    border-radius:7px!important;
    background-color:#fff!important;
    color:#53666b!important;
    font-size:10px!important;
  }

  /* Autosave is primary. Manual controls become secondary. */
  .notes-page .note-actions,
  .notes-page .note-form-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
    padding:7px 14px 9px!important;
    border-top:0!important;
    background:#fbfcfc!important;
  }
  .notes-page .note-actions .btn,
  .notes-page .note-form-actions .btn{
    min-height:31px!important;
    padding:0 10px!important;
    border-radius:7px!important;
    font-size:9px!important;
  }

  /* Formatting controls should not dominate note-taking. */
  .notes-page .note-format-toolbar{
    min-height:34px!important;
    padding:4px 14px!important;
    gap:3px!important;
    border-top:1px solid #f0f3f4!important;
    border-bottom:1px solid #f0f3f4!important;
    background:#fff!important;
  }
  .notes-page .note-format-toolbar button{
    width:27px!important;height:27px!important;
    border:0!important;border-radius:6px!important;
    background:transparent!important;
  }
  .notes-page .note-format-toolbar button:hover{background:#eef6f5!important}

  /* No nested-panel feeling. */
  .notes-page .panel,
  .notes-page .card{box-shadow:none!important}
}

/* Mid-size desktop/laptop: keep editor dominant. */
@media(min-width:851px) and (max-width:1180px){
  .notes-desktop-v614,
  body:has(.note-editor-panel) .notes-page{
    grid-template-columns:280px minmax(0,1fr)!important;
  }
  .notes-page .note-form input[name="title"]{font-size:19px!important}
}

/* Existing mobile notebook rules remain authoritative below 850px. */

/* V61.5.1 — visible desktop focus control for Notes */
.note-focus-toggle{display:none}
@media(min-width:851px){
 .mobile-note-editor-bar .note-focus-toggle{
   display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
   width:auto!important;height:30px!important;min-width:78px!important;margin-left:auto!important;padding:0 10px!important;
   border:1px solid #d9e4e5!important;border-radius:8px!important;background:#fff!important;color:#53676c!important;
   font-size:10px!important;font-weight:700!important;cursor:pointer!important;
 }
 .mobile-note-editor-bar .note-focus-toggle:hover,.mobile-note-editor-bar .note-focus-toggle.active{
   border-color:#7bcfc9!important;background:#eff9f8!important;color:#078e87!important;
 }
 .mobile-note-editor-bar .note-focus-toggle + [data-mobile-save-state]{margin-left:8px!important}
 body.note-focus-mode{overflow:hidden!important}
 body.note-focus-mode:before{
   content:"";position:fixed;z-index:1890;inset:0;background:rgba(235,241,242,.94);backdrop-filter:blur(2px)
 }
 body.note-focus-mode .note-editor-panel{
   position:fixed!important;z-index:1900!important;left:50%!important;top:24px!important;transform:translateX(-50%)!important;
   width:80vw!important;max-width:80vw!important;height:calc(100vh - 48px)!important;max-height:calc(100vh - 48px)!important;
   margin:0!important;border:1px solid #d8e3e4!important;border-radius:12px!important;background:#fff!important;
   box-shadow:0 24px 70px rgba(19,39,43,.15)!important;overflow:hidden!important;
 }
 body.note-focus-mode .note-editor-panel .note-form{height:100%!important;min-height:0!important}
 body.note-focus-mode .note-title{font-size:25px!important;padding-left:48px!important;padding-right:48px!important}
 body.note-focus-mode .note-content{font-size:15px!important;padding-left:48px!important;padding-right:48px!important}
}

/* V61.5.2 — desktop focus button anchored to actual visible editor panel */
@media(min-width:851px){
 .notes-page .note-editor-panel{position:relative!important}
 .notes-page .note-focus-toggle-fixed{
   display:inline-flex!important;position:absolute!important;top:15px!important;right:58px!important;z-index:30!important;
   align-items:center!important;justify-content:center!important;gap:6px!important;
   width:auto!important;min-width:84px!important;height:32px!important;margin:0!important;padding:0 11px!important;
   border:1px solid #d9e4e5!important;border-radius:8px!important;background:#fff!important;color:#53676c!important;
   box-shadow:0 1px 2px rgba(20,40,45,.04)!important;font-size:10px!important;font-weight:700!important;cursor:pointer!important;
 }
 .notes-page .note-focus-toggle-fixed:hover,.notes-page .note-focus-toggle-fixed.active{
   border-color:#70cbc5!important;background:#eef9f8!important;color:#078e87!important;
 }
 body.note-focus-mode .note-focus-toggle-fixed{top:12px!important;right:16px!important}
}
@media(max-width:850px){.note-focus-toggle-fixed{display:none!important}}


/* V61.5.3 — Notes focus: guaranteed visible desktop control.
   Previous bug: the visible rule depended on .notes-page, while notes.php does not have that wrapper. */
@media(min-width:851px){
  .note-editor-panel{
    position:relative!important;
  }
  .note-editor-panel > .note-focus-toggle-fixed{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
    position:absolute!important;
    top:14px!important;
    right:58px!important;
    z-index:120!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    width:auto!important;
    min-width:92px!important;
    height:34px!important;
    margin:0!important;
    padding:0 12px!important;
    border:1px solid #b9d9d7!important;
    border-radius:9px!important;
    background:#eef9f8!important;
    color:#087f7a!important;
    box-shadow:0 2px 7px rgba(15,70,70,.07)!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:800!important;
    cursor:pointer!important;
    pointer-events:auto!important;
  }
  .note-editor-panel > .note-focus-toggle-fixed:hover{
    border-color:#18b7ae!important;
    background:#e2f6f4!important;
    color:#066f6b!important;
  }
  .note-editor-panel > .note-focus-toggle-fixed.active{
    position:fixed!important;
    top:36px!important;
    right:calc(10vw + 18px)!important;
    z-index:1950!important;
    min-width:132px!important;
    background:#17282b!important;
    border-color:#17282b!important;
    color:#fff!important;
  }

  body.note-focus-mode{
    overflow:hidden!important;
  }
  body.note-focus-mode:before{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    z-index:1890!important;
    background:rgba(230,237,239,.92)!important;
    backdrop-filter:blur(3px)!important;
  }
  body.note-focus-mode .note-editor-panel{
    position:fixed!important;
    z-index:1900!important;
    left:50%!important;
    top:24px!important;
    transform:translateX(-50%)!important;
    width:80vw!important;
    max-width:80vw!important;
    height:calc(100vh - 48px)!important;
    max-height:calc(100vh - 48px)!important;
    margin:0!important;
    border:1px solid #d5e1e3!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 26px 80px rgba(20,40,45,.18)!important;
    overflow:hidden!important;
  }
  body.note-focus-mode .note-editor-panel .note-form{
    height:100%!important;
    min-height:0!important;
  }
}
@media(max-width:850px){
  .note-editor-panel > .note-focus-toggle-fixed{display:none!important}
}

/* V61.5.3 — Notes focus: guaranteed visible desktop control.
   Previous bug: the visible rule depended on .notes-page, while notes.php does not have that wrapper. */
@media(min-width:851px){
  .note-editor-panel{
    position:relative!important;
  }
  .note-editor-panel > .note-focus-toggle-fixed{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
    position:absolute!important;
    top:14px!important;
    right:58px!important;
    z-index:120!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    width:auto!important;
    min-width:92px!important;
    height:34px!important;
    margin:0!important;
    padding:0 12px!important;
    border:1px solid #b9d9d7!important;
    border-radius:9px!important;
    background:#eef9f8!important;
    color:#087f7a!important;
    box-shadow:0 2px 7px rgba(15,70,70,.07)!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:800!important;
    cursor:pointer!important;
    pointer-events:auto!important;
  }
  .note-editor-panel > .note-focus-toggle-fixed:hover{
    border-color:#18b7ae!important;
    background:#e2f6f4!important;
    color:#066f6b!important;
  }
  .note-editor-panel > .note-focus-toggle-fixed.active{
    position:fixed!important;
    top:36px!important;
    right:calc(10vw + 18px)!important;
    z-index:1950!important;
    min-width:132px!important;
    background:#17282b!important;
    border-color:#17282b!important;
    color:#fff!important;
  }

  body.note-focus-mode{
    overflow:hidden!important;
  }
  body.note-focus-mode:before{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    z-index:1890!important;
    background:rgba(230,237,239,.92)!important;
    backdrop-filter:blur(3px)!important;
  }
  body.note-focus-mode .note-editor-panel{
    position:fixed!important;
    z-index:1900!important;
    left:50%!important;
    top:24px!important;
    transform:translateX(-50%)!important;
    width:80vw!important;
    max-width:80vw!important;
    height:calc(100vh - 48px)!important;
    max-height:calc(100vh - 48px)!important;
    margin:0!important;
    border:1px solid #d5e1e3!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 26px 80px rgba(20,40,45,.18)!important;
    overflow:hidden!important;
  }
  body.note-focus-mode .note-editor-panel .note-form{
    height:100%!important;
    min-height:0!important;
  }
}
@media(max-width:850px){
  .note-editor-panel > .note-focus-toggle-fixed{display:none!important}
}


/* V62.0 — final desktop notes focus button: inside visible title row, no hidden mobile-bar dependency */
@media(min-width:851px){
  .note-editor-top-v62{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    align-items:center!important;
    gap:8px!important;
  }
  .note-focus-toggle,
  .note-focus-toggle-fixed{display:none!important}
  .note-focus-btn-v62{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    height:34px!important;
    min-width:88px!important;
    padding:0 12px!important;
    border:1px solid #9edbd7!important;
    border-radius:9px!important;
    background:#eaf9f7!important;
    color:#087f7a!important;
    font-size:11px!important;
    font-weight:800!important;
    cursor:pointer!important;
    white-space:nowrap!important;
  }
  .note-focus-btn-v62:hover,
  .note-focus-btn-v62.active{
    background:#18b7ae!important;
    border-color:#18b7ae!important;
    color:#fff!important;
  }
  body.note-focus-mode-v62{
    overflow:hidden!important;
  }
  body.note-focus-mode-v62:before{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    z-index:1890!important;
    background:rgba(230,237,239,.93)!important;
    backdrop-filter:blur(3px)!important;
  }
  body.note-focus-mode-v62 .note-editor-panel{
    position:fixed!important;
    z-index:1900!important;
    left:50%!important;
    top:24px!important;
    transform:translateX(-50%)!important;
    width:80vw!important;
    max-width:80vw!important;
    height:calc(100vh - 48px)!important;
    max-height:calc(100vh - 48px)!important;
    margin:0!important;
    border:1px solid #d5e1e3!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 26px 80px rgba(20,40,45,.18)!important;
    overflow:hidden!important;
  }
  body.note-focus-mode-v62 .note-editor-panel .note-form{
    height:100%!important;
    min-height:0!important;
  }
  body.note-focus-mode-v62 .note-title{
    font-size:25px!important;
  }
  body.note-focus-mode-v62 .note-content{
    min-height:0!important;
    height:100%!important;
  }
}
@media(max-width:850px){
  .note-focus-btn-v62{display:none!important}
}

/* V62.0 — desktop personal chat: fixed work panel, only message history scrolls */
@media(min-width:761px){
  body.employee-chat-mobile-page .content{
    height:calc(100vh - 72px)!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:14px 18px!important;
  }
  body.employee-chat-mobile-page .task-chat-layout.task-chat-v581{
    height:100%!important;
    max-width:1120px!important;
    margin:0 auto!important;
    padding:0!important;
  }
  body.employee-chat-mobile-page .task-chat-panel{
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border:1px solid #d9e4e6!important;
    border-radius:12px!important;
    background:#f4f7f8!important;
  }
  body.employee-chat-mobile-page .chat-context-v581{
    flex:0 0 58px!important;
    display:grid!important;
    grid-template-columns:160px minmax(0,1fr) 50px!important;
    align-items:center!important;
    padding:0 12px!important;
    border-bottom:1px solid #e1e8ea!important;
    background:#fff!important;
  }
  body.employee-chat-mobile-page .employee-task-messages{
    flex:1 1 0!important;
    height:0!important;
    min-height:0!important;
    overflow:auto!important;
    padding:14px!important;
  }
  body.employee-chat-mobile-page .employee-task-compose{
    flex:0 0 auto!important;
    margin:0!important;
    padding:8px 10px!important;
    border-top:1px solid #e1e8ea!important;
    background:#fff!important;
  }
}

/* V62.0 — mobile personal chat: status bar space restored; exact fixed screen model */
@media(max-width:760px){
  html.is-capacitor-native body.employee-chat-mobile-page.mobile-task-chat-page .content{
    padding-top:24px!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
    height:100dvh!important;
  }
  html.is-capacitor-native body.employee-chat-mobile-page.mobile-task-chat-page .task-chat-panel{
    height:calc(100dvh - 24px - env(safe-area-inset-bottom))!important;
  }
  body.employee-chat-mobile-page.mobile-task-chat-page .chat-compose-v581.employee-task-compose{
    position:relative!important;
    flex:0 0 auto!important;
    transform:none!important;
    margin:0!important;
  }
}


/* V63.0 — rewritten personal/group chat layout.
   Dedicated page class. Does not rely on task-chat selectors or mobile bottom nav. */
body.employee-chat-page-v63{
  --chat-accent:#18b7ae;
  --chat-line:#dce7e9;
  --chat-bg:#eef4f5;
  --chat-panel:#ffffff;
  --chat-me:#dff6f3;
  --chat-other:#ffffff;
}

/* Hide the floating desktop messenger on an open dialog: the dialog itself is the context. */
body.employee-chat-page-v63 .messenger-widget{display:none!important}

/* Desktop / tablet workspace */
@media(min-width:761px){
  body.employee-chat-page-v63{
    overflow:hidden!important;
    background:#f2f6f7!important;
  }
  body.employee-chat-page-v63 .content{
    height:calc(100vh - 72px)!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:16px clamp(16px,3vw,40px)!important;
    box-sizing:border-box!important;
  }
  body.employee-chat-page-v63 .task-chat-layout.employee-chat-task-style{
    width:min(1180px,100%)!important;
    height:100%!important;
    margin:0 auto!important;
    padding:0!important;
    display:block!important;
  }
  body.employee-chat-page-v63 .task-chat-panel{
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border:1px solid var(--chat-line)!important;
    border-radius:14px!important;
    background:var(--chat-bg)!important;
    box-shadow:0 8px 28px rgba(24,43,48,.06)!important;
  }

  body.employee-chat-page-v63 .chat-context-v581{
    flex:0 0 64px!important;
    display:grid!important;
    grid-template-columns:140px minmax(0,1fr) 48px!important;
    align-items:center!important;
    gap:10px!important;
    padding:0 14px!important;
    border-bottom:1px solid var(--chat-line)!important;
    background:#fff!important;
  }
  body.employee-chat-page-v63 .chat-back-v581{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    width:max-content!important;
    min-width:92px!important;
    max-width:132px!important;
    height:38px!important;
    padding:0 12px!important;
    border:1px solid #bfe6e3!important;
    border-radius:10px!important;
    background:#effafa!important;
    color:#087f7a!important;
    font-size:12px!important;
    font-weight:800!important;
    text-decoration:none!important;
  }
  body.employee-chat-page-v63 .chat-back-v581:hover{
    background:#e2f7f5!important;
    border-color:#80d3cd!important;
  }
  body.employee-chat-page-v63 .chat-title-v581{
    min-width:0!important;
    text-align:center!important;
    line-height:1.08!important;
  }
  body.employee-chat-page-v63 .chat-title-v581 strong{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#14262b!important;
    font-size:16px!important;
    font-weight:850!important;
  }
  body.employee-chat-page-v63 .chat-title-v581 small{
    display:block!important;
    margin-top:3px!important;
    color:#819398!important;
    font-size:10px!important;
  }
  body.employee-chat-page-v63 .chat-history-v581{
    display:grid!important;
    place-items:center!important;
    width:38px!important;
    height:38px!important;
    justify-self:end!important;
    border-radius:10px!important;
    background:#f1f6f7!important;
    color:#6d7f85!important;
  }

  body.employee-chat-page-v63 .employee-task-messages{
    flex:1 1 0!important;
    height:0!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:18px clamp(18px,3vw,36px)!important;
    background:var(--chat-bg)!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }

  body.employee-chat-page-v63 .employee-chat-row-v63{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    align-items:flex-end!important;
    gap:8px!important;
    margin:0 0 10px!important;
    box-sizing:border-box!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63.mine{
    justify-content:flex-end!important;
    flex-direction:row!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63:not(.mine){
    justify-content:flex-start!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63.mine .avatar{
    order:2!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63.mine .message-bubble{
    order:1!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63 .avatar{
    flex:0 0 32px!important;
    width:32px!important;
    height:32px!important;
    border-radius:50%!important;
    overflow:hidden!important;
    background:#dff5f2!important;
    display:grid!important;
    place-items:center!important;
    color:#087f7a!important;
    font-size:10px!important;
    font-weight:800!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63 .avatar img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63 .message-bubble{
    width:auto!important;
    max-width:min(560px,68%)!important;
    padding:9px 11px!important;
    border:1px solid #d6e3e5!important;
    border-radius:14px 14px 14px 5px!important;
    background:var(--chat-other)!important;
    box-shadow:0 1px 2px rgba(18,42,48,.03)!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63.mine .message-bubble{
    border-color:#bfe6e2!important;
    border-radius:14px 14px 5px 14px!important;
    background:var(--chat-me)!important;
  }
  body.employee-chat-page-v63 .message-meta{
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    margin:0 0 4px!important;
    color:#778b90!important;
    line-height:1!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63.mine .message-meta{
    justify-content:flex-end!important;
  }
  body.employee-chat-page-v63 .message-meta strong{
    color:#52676c!important;
    font-size:11px!important;
    font-weight:850!important;
  }
  body.employee-chat-page-v63 .message-meta span{
    color:#8fa0a5!important;
    font-size:9px!important;
  }
  body.employee-chat-page-v63 .message-text{
    color:#14262b!important;
    font-size:13px!important;
    line-height:1.42!important;
    overflow-wrap:anywhere!important;
  }

  body.employee-chat-page-v63 .employee-chat-image{
    display:block!important;
    margin-top:7px!important;
    max-width:320px!important;
    overflow:hidden!important;
    border-radius:11px!important;
    background:#eef4f4!important;
    border:1px solid #dbe6e8!important;
  }
  body.employee-chat-page-v63 .employee-chat-image img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:260px!important;
    object-fit:cover!important;
  }
  body.employee-chat-page-v63 .employee-chat-file{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin-top:7px!important;
    padding:8px 9px!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#203337!important;
    text-decoration:none!important;
    border:1px solid #e1e9ea!important;
  }

  body.employee-chat-page-v63 .employee-task-compose{
    flex:0 0 auto!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    margin:0!important;
    padding:10px 14px!important;
    background:#fff!important;
    border-top:1px solid var(--chat-line)!important;
    box-shadow:0 -4px 14px rgba(17,40,45,.035)!important;
  }
  body.employee-chat-page-v63 .chat-compose-row-v581{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 48px!important;
    gap:8px!important;
    align-items:end!important;
    width:100%!important;
  }
  body.employee-chat-page-v63 .chat-attach-v581,
  body.employee-chat-page-v63 .chat-send-v581{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    display:grid!important;
    place-items:center!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:12px!important;
    cursor:pointer!important;
  }
  body.employee-chat-page-v63 .chat-attach-v581{
    background:#eff5f6!important;
    color:#60777e!important;
  }
  body.employee-chat-page-v63 .chat-attach-v581:hover{
    background:#e3eeee!important;
  }
  body.employee-chat-page-v63 .chat-send-v581{
    width:48px!important;
    background:var(--chat-accent)!important;
    color:#fff!important;
    box-shadow:0 4px 12px rgba(24,183,174,.22)!important;
  }
  body.employee-chat-page-v63 .chat-input-v581{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    max-height:116px!important;
    margin:0!important;
    padding:11px 13px!important;
    box-sizing:border-box!important;
    border:1px solid #d8e4e6!important;
    border-radius:13px!important;
    background:#fff!important;
    color:#17282c!important;
    font-size:14px!important;
    line-height:20px!important;
    resize:none!important;
    outline:0!important;
    overflow-y:hidden!important;
  }
  body.employee-chat-page-v63 .chat-input-v581:focus{
    border-color:#90d1cc!important;
    box-shadow:0 0 0 3px rgba(24,183,174,.09)!important;
  }
  body.employee-chat-page-v63 .employee-file-preview{
    margin:6px 56px 0!important;
    padding:0!important;
    color:#6e8086!important;
    font-size:10px!important;
  }
}

/* Mobile: full dialog screen, fixed header + fixed composer, only messages scroll. */
@media(max-width:760px){
  html,body.employee-chat-page-v63{
    height:100dvh!important;
    min-height:100dvh!important;
    overflow:hidden!important;
    background:#f4f7f8!important;
  }
  body.employee-chat-page-v63 .topbar,
  body.employee-chat-page-v63 .mobile-bottom-nav,
  body.employee-chat-page-v63 .messenger-widget{
    display:none!important;
  }
  body.employee-chat-page-v63 .app-shell,
  body.employee-chat-page-v63 .app-main,
  body.employee-chat-page-v63 .main,
  body.employee-chat-page-v63 main{
    height:100dvh!important;
    min-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
  }
  body.employee-chat-page-v63 .content{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:0!important;
    margin:0!important;
    padding:calc(env(safe-area-inset-top) + 2px) 0 env(safe-area-inset-bottom)!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    background:#f4f7f8!important;
  }
  body.employee-chat-page-v63 .task-chat-layout.employee-chat-task-style{
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
  }
  body.employee-chat-page-v63 .task-chat-panel{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:0!important;
    background:#f4f7f8!important;
  }
  body.employee-chat-page-v63 .chat-context-v581{
    flex:0 0 54px!important;
    height:54px!important;
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr) 44px!important;
    align-items:center!important;
    gap:6px!important;
    padding:0 8px!important;
    box-sizing:border-box!important;
    background:#fff!important;
    border-bottom:1px solid #e2e9eb!important;
  }
  body.employee-chat-page-v63 .chat-back-v581{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:5px!important;
    width:auto!important;
    max-width:112px!important;
    height:40px!important;
    padding:0 10px!important;
    border:0!important;
    border-radius:12px!important;
    background:#18b7ae!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:800!important;
    text-decoration:none!important;
    box-shadow:0 2px 8px rgba(0,0,0,.10)!important;
  }
  body.employee-chat-page-v63 .chat-back-v581 span{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  body.employee-chat-page-v63 .chat-title-v581{
    min-width:0!important;
    text-align:center!important;
    line-height:1.08!important;
  }
  body.employee-chat-page-v63 .chat-title-v581 strong{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:14px!important;
    color:#17282c!important;
    font-weight:850!important;
  }
  body.employee-chat-page-v63 .chat-title-v581 small{
    display:block!important;
    margin-top:2px!important;
    font-size:9px!important;
    color:#8d9da3!important;
  }
  body.employee-chat-page-v63 .chat-history-v581{
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    justify-self:end!important;
    border-radius:11px!important;
    background:#eef3f4!important;
    color:#677b82!important;
  }

  body.employee-chat-page-v63 .employee-task-messages{
    flex:1 1 0!important;
    height:0!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:8px 8px 10px!important;
    margin:0!important;
    background:#f4f7f8!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    align-items:flex-end!important;
    gap:6px!important;
    margin:0 0 7px!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63.mine{
    justify-content:flex-end!important;
    flex-direction:row!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63:not(.mine){
    justify-content:flex-start!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63.mine .avatar{order:2!important}
  body.employee-chat-page-v63 .employee-chat-row-v63.mine .message-bubble{order:1!important}
  body.employee-chat-page-v63 .employee-chat-row-v63 .avatar{
    flex:0 0 28px!important;
    width:28px!important;
    height:28px!important;
    border-radius:50%!important;
    overflow:hidden!important;
    background:#dff5f2!important;
    display:grid!important;
    place-items:center!important;
    color:#087f7a!important;
    font-size:9px!important;
    font-weight:800!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63 .avatar img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63 .message-bubble{
    max-width:calc(100vw - 68px)!important;
    padding:7px 9px!important;
    border:1px solid #d2e7e5!important;
    border-radius:13px 13px 13px 5px!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  body.employee-chat-page-v63 .employee-chat-row-v63.mine .message-bubble{
    background:#dff6f3!important;
    border-color:#bee7e3!important;
    border-radius:13px 13px 5px 13px!important;
  }
  body.employee-chat-page-v63 .message-meta{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    margin:0 0 3px!important;
    line-height:1!important;
  }
  body.employee-chat-page-v63 .message-meta strong{
    font-size:10.5px!important;
    color:#52666b!important;
    font-weight:850!important;
  }
  body.employee-chat-page-v63 .message-meta span{
    font-size:8.5px!important;
    color:#8ea0a5!important;
  }
  body.employee-chat-page-v63 .message-text{
    font-size:13px!important;
    line-height:1.32!important;
    color:#17282c!important;
    overflow-wrap:anywhere!important;
  }
  body.employee-chat-page-v63 .employee-chat-image{
    max-width:min(72vw,300px)!important;
    margin-top:6px!important;
    border-radius:10px!important;
  }
  body.employee-chat-page-v63 .employee-chat-image img{
    max-height:34dvh!important;
  }

  body.employee-chat-page-v63 .employee-task-compose{
    flex:0 0 auto!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    margin:0!important;
    padding:6px 8px!important;
    background:#fff!important;
    border-top:1px solid #dfe7e9!important;
    box-shadow:0 -3px 12px rgba(25,45,50,.04)!important;
    z-index:20!important;
  }
  body.employee-chat-page-v63 .chat-compose-row-v581{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 46px!important;
    align-items:end!important;
    gap:6px!important;
    width:100%!important;
  }
  body.employee-chat-page-v63 .chat-attach-v581,
  body.employee-chat-page-v63 .chat-send-v581{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:12px!important;
  }
  body.employee-chat-page-v63 .chat-attach-v581{
    background:#eef3f4!important;
    color:#587078!important;
  }
  body.employee-chat-page-v63 .chat-send-v581{
    width:46px!important;
    background:#18b7ae!important;
    color:#fff!important;
  }
  body.employee-chat-page-v63 .chat-input-v581{
    width:100%!important;
    height:42px!important;
    min-height:42px!important;
    max-height:88px!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:10px 12px!important;
    border:1px solid #d9e3e5!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:none!important;
    outline:none!important;
    resize:none!important;
    overflow-y:hidden!important;
    font-size:16px!important;
    line-height:20px!important;
  }
  body.employee-chat-page-v63 .employee-file-preview{
    max-height:58px!important;
    overflow:auto!important;
    margin:0 48px 5px!important;
    padding:3px 0!important;
    background:#fff!important;
  }
}


/* V63.1 — desktop task discussion panel: fixed viewport-aware height */
@media(min-width:761px){
  body:not(.employee-chat-page-v63) .task-chat-layout{
    min-height:0!important;
    align-items:stretch!important;
  }

  body:not(.employee-chat-page-v63) .task-chat-layout .task-chat-panel{
    display:flex!important;
    flex-direction:column!important;
    height:auto!important;
    min-height:420px!important;
    max-height:calc(80dvh - 132px)!important;
    overflow:hidden!important;
  }

  body:not(.employee-chat-page-v63) .task-chat-layout .task-chat-panel .task-chat-messages{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
  }

  body:not(.employee-chat-page-v63) .task-chat-layout .task-chat-panel .chat-compose,
  body:not(.employee-chat-page-v63) .task-chat-layout .task-chat-panel .chat-compose-v581{
    flex:0 0 auto!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    margin-top:auto!important;
  }
}

/* On short laptop screens keep it usable instead of collapsing too much. */
@media(min-width:761px) and (max-height:760px){
  body:not(.employee-chat-page-v63) .task-chat-layout .task-chat-panel{
    max-height:calc(100dvh - 245px)!important;
    min-height:360px!important;
  }
}


/* V63.2 — compact SVG back buttons in chats */
.chat-back-svg-v632{
  display:block!important;
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
}

/* Universal chat back button: icon first, compact footprint. */
.chat-back-v581{
  white-space:nowrap!important;
}

/* Desktop: keep a small readable chip, but not a large CTA. */
@media(min-width:761px){
  body.employee-chat-page-v63 .chat-back-v581,
  body:not(.employee-chat-page-v63) .chat-back-v581{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    padding:0!important;
    display:inline-grid!important;
    place-items:center!important;
    border-radius:10px!important;
    background:#eef8f7!important;
    border:1px solid #cfe9e7!important;
    color:#087f7a!important;
    box-shadow:none!important;
    text-decoration:none!important;
  }

  body.employee-chat-page-v63 .chat-back-v581:hover,
  body:not(.employee-chat-page-v63) .chat-back-v581:hover{
    background:#dff5f2!important;
    border-color:#92d8d3!important;
  }

  body.employee-chat-page-v63 .chat-back-v581 span,
  body.employee-chat-page-v63 .chat-back-v581 small,
  body.employee-chat-page-v63 .chat-back-v581 i,
  body:not(.employee-chat-page-v63) .chat-back-v581 span,
  body:not(.employee-chat-page-v63) .chat-back-v581 small,
  body:not(.employee-chat-page-v63) .chat-back-v581 i{
    display:none!important;
  }

  body.employee-chat-page-v63 .chat-back-v581::before,
  body:not(.employee-chat-page-v63) .chat-back-v581::before{
    content:""!important;
    display:block!important;
    width:18px!important;
    height:18px!important;
    background:currentColor!important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 5.5 9 12l6.5 6.5' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 5.5 9 12l6.5 6.5' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
  }

  body.employee-chat-page-v63 .chat-back-icon-v632::before{
    display:none!important;
  }
}

/* Mobile: make the header breathe; back action becomes a neat square icon. */
@media(max-width:760px){
  body.employee-chat-page-v63 .chat-context-v581,
  body.mobile-task-chat-page .chat-context-v581{
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    gap:6px!important;
  }

  body.employee-chat-page-v63 .chat-back-v581,
  body.mobile-task-chat-page .chat-back-v581,
  body.mobile-task-chat-page .chat-back-v581:link,
  body.mobile-task-chat-page .chat-back-v581:visited{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:0!important;
    border-radius:12px!important;
    background:#18b7ae!important;
    color:#fff!important;
    box-shadow:0 2px 8px rgba(0,0,0,.10)!important;
    text-decoration:none!important;
  }

  body.employee-chat-page-v63 .chat-back-v581 span,
  body.employee-chat-page-v63 .chat-back-v581 small,
  body.employee-chat-page-v63 .chat-back-v581 i,
  body.mobile-task-chat-page .chat-back-v581 span,
  body.mobile-task-chat-page .chat-back-v581 small,
  body.mobile-task-chat-page .chat-back-v581 i{
    display:none!important;
  }

  body.employee-chat-page-v63 .chat-back-v581::before,
  body.mobile-task-chat-page .chat-back-v581::before{
    content:""!important;
    display:block!important;
    width:19px!important;
    height:19px!important;
    background:currentColor!important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 5.5 9 12l6.5 6.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 5.5 9 12l6.5 6.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important;
  }

  body.employee-chat-page-v63 .chat-back-icon-v632::before{
    display:none!important;
  }

  body.employee-chat-page-v63 .chat-title-v581,
  body.mobile-task-chat-page .chat-title-v581{
    text-align:center!important;
    padding:0!important;
  }
}


/* V63.3 — restore mobile scroll + clipboard image preview in personal chats */

/* Mobile scroll repair: only the message list scrolls; buttons stay compact. */
@media(max-width:760px){
  body.employee-chat-page-v63{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    overflow:hidden!important;
    touch-action:none!important;
  }
  body.employee-chat-page-v63 .app-shell,
  body.employee-chat-page-v63 .app-main,
  body.employee-chat-page-v63 .main,
  body.employee-chat-page-v63 main,
  body.employee-chat-page-v63 .content,
  body.employee-chat-page-v63 .task-chat-layout,
  body.employee-chat-page-v63 .task-chat-panel{
    min-height:0!important;
    overflow:hidden!important;
  }
  body.employee-chat-page-v63 .content{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    padding:calc(env(safe-area-inset-top) + 2px) 0 env(safe-area-inset-bottom)!important;
  }
  body.employee-chat-page-v63 .task-chat-layout,
  body.employee-chat-page-v63 .task-chat-panel{
    height:100%!important;
    max-height:none!important;
  }
  body.employee-chat-page-v63 .task-chat-panel{
    display:flex!important;
    flex-direction:column!important;
  }
  body.employee-chat-page-v63 .employee-task-messages{
    flex:1 1 0!important;
    height:0!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
  }
  body.employee-chat-page-v63 .employee-task-compose{
    flex:0 0 auto!important;
    position:relative!important;
    transform:none!important;
    margin:0!important;
  }

  /* Restore mobile task-chat scrolling too after compact back-button patch. */
  body.mobile-task-chat-page:not(.employee-chat-page-v63) .task-chat-v581 .task-chat-messages{
    flex:1 1 0!important;
    height:0!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
  }
}

/* Pasted / selected files preview before sending */
.chat-file-chip-v633{
  display:inline-grid!important;
  grid-template-columns:34px minmax(80px,1fr) auto 24px!important;
  align-items:center!important;
  gap:7px!important;
  max-width:360px!important;
  margin:6px 6px 0 0!important;
  padding:5px 6px!important;
  border:1px solid #dbe6e7!important;
  border-radius:10px!important;
  background:#f7fbfb!important;
  color:#213236!important;
}
.chat-file-chip-v633 img{
  width:34px!important;
  height:28px!important;
  border-radius:6px!important;
  object-fit:cover!important;
  background:#edf3f3!important;
}
.chat-file-chip-v633 i{
  width:34px!important;
  height:28px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:6px!important;
  background:#edf3f3!important;
}
.chat-file-chip-v633 b{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:10px!important;
}
.chat-file-chip-v633 small{
  color:#7b8e93!important;
  font-size:9px!important;
  white-space:nowrap!important;
}
.chat-file-chip-v633 button{
  width:22px!important;
  height:22px!important;
  border:0!important;
  border-radius:7px!important;
  background:#e7eeee!important;
  color:#63777d!important;
  cursor:pointer!important;
  line-height:1!important;
}
.chat-file-chip-v633 button:hover{
  background:#dbe7e7!important;
  color:#182b2f!important;
}

/* Image preview by click */
.chat-image-lightbox-v633{
  position:fixed!important;
  inset:0!important;
  z-index:5000!important;
  display:grid!important;
  place-items:center!important;
  padding:24px!important;
  background:rgba(9,18,21,.78)!important;
}
.chat-image-lightbox-v633[hidden]{
  display:none!important;
}
.chat-image-lightbox-v633 img{
  display:block!important;
  max-width:min(1100px,96vw)!important;
  max-height:90vh!important;
  object-fit:contain!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 18px 70px rgba(0,0,0,.35)!important;
}
.chat-image-lightbox-v633 button{
  position:fixed!important;
  top:18px!important;
  right:18px!important;
  width:42px!important;
  height:42px!important;
  border:0!important;
  border-radius:12px!important;
  display:grid!important;
  place-items:center!important;
  background:#fff!important;
  color:#17282c!important;
  cursor:pointer!important;
}
@media(max-width:760px){
  .chat-file-chip-v633{
    grid-template-columns:30px minmax(0,1fr) 22px!important;
    max-width:100%!important;
  }
  .chat-file-chip-v633 small{display:none!important}
  .chat-file-chip-v633 img,.chat-file-chip-v633 i{
    width:30px!important;
    height:26px!important;
  }
  .chat-image-lightbox-v633{padding:10px!important}
  .chat-image-lightbox-v633 img{
    max-width:96vw!important;
    max-height:86dvh!important;
  }
}


/* V64.0 — global mobile scroll unlock after prior chat patches */
@media(max-width:760px){
  html{
    height:auto!important;
    min-height:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    touch-action:auto!important;
  }
  body:not(.am-chat-page):not(.mobile-task-chat-page){
    position:static!important;
    height:auto!important;
    min-height:100dvh!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    touch-action:auto!important;
  }
}

/* V64.0 — isolated professional chat module */
body.am-chat-page{
  --am-chat-accent:#18b7ae;
  --am-chat-bg:#eef4f5;
  --am-chat-line:#dbe7e9;
  --am-chat-text:#16282d;
  --am-chat-muted:#7f9298;
  --am-chat-me:#dff6f3;
  --am-chat-other:#fff;
}
body.am-chat-page .messenger-widget{display:none!important}

.am-chat-module,
.am-chat-shell,
.am-chat-messages,
.am-chat-compose,
.am-chat-header{box-sizing:border-box}

@media(min-width:761px){
  body.am-chat-page{
    overflow:hidden!important;
    background:#f2f6f7!important;
  }
  body.am-chat-page .content{
    height:calc(100dvh - 72px)!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:16px clamp(16px,3vw,40px)!important;
  }
  .am-chat-module{
    width:min(1180px,100%)!important;
    height:100%!important;
    margin:0 auto!important;
  }
  .am-chat-shell{
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border:1px solid var(--am-chat-line)!important;
    border-radius:14px!important;
    background:var(--am-chat-bg)!important;
    box-shadow:0 8px 28px rgba(24,43,48,.06)!important;
  }
  .am-chat-header{
    flex:0 0 64px!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    align-items:center!important;
    gap:10px!important;
    padding:0 14px!important;
    border-bottom:1px solid var(--am-chat-line)!important;
    background:#fff!important;
  }
  .am-chat-back,.am-chat-dialogs{
    width:38px!important;height:38px!important;
    display:grid!important;place-items:center!important;
    border-radius:10px!important;
    border:1px solid #cfe9e7!important;
    background:#eef8f7!important;
    color:#087f7a!important;
    text-decoration:none!important;
  }
  .am-chat-back:hover,.am-chat-dialogs:hover{background:#dff5f2!important;border-color:#92d8d3!important}
  .am-chat-title{min-width:0;text-align:center;line-height:1.08}
  .am-chat-title strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--am-chat-text);font-size:16px;font-weight:850}
  .am-chat-title small{display:block;margin-top:3px;color:var(--am-chat-muted);font-size:10px}

  .am-chat-messages{
    flex:1 1 0!important;
    height:0!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:18px clamp(18px,3vw,36px)!important;
    background:var(--am-chat-bg)!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }
  .am-chat-message{
    width:100%!important;
    display:flex!important;
    align-items:flex-end!important;
    gap:8px!important;
    margin:0 0 10px!important;
  }
  .am-chat-message.is-mine{justify-content:flex-end!important}
  .am-chat-message.is-other{justify-content:flex-start!important}
  .am-chat-message.is-mine .am-chat-avatar{order:2}
  .am-chat-message.is-mine .am-chat-bubble{order:1}
  .am-chat-avatar{
    flex:0 0 32px!important;width:32px!important;height:32px!important;
    border-radius:50%!important;overflow:hidden!important;
    display:grid!important;place-items:center!important;
    background:#dff5f2!important;color:#087f7a!important;
    font-size:10px!important;font-weight:800!important;
  }
  .am-chat-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
  .am-chat-bubble{
    width:auto!important;
    max-width:min(560px,68%)!important;
    padding:9px 11px!important;
    border:1px solid #d6e3e5!important;
    border-radius:14px 14px 14px 5px!important;
    background:var(--am-chat-other)!important;
    box-shadow:0 1px 2px rgba(18,42,48,.03)!important;
  }
  .am-chat-message.is-mine .am-chat-bubble{
    border-color:#bfe6e2!important;
    border-radius:14px 14px 5px 14px!important;
    background:var(--am-chat-me)!important;
  }
  .am-chat-meta{display:flex!important;align-items:center!important;gap:9px!important;margin:0 0 4px!important;line-height:1!important;color:var(--am-chat-muted)!important}
  .am-chat-message.is-mine .am-chat-meta{justify-content:flex-end!important}
  .am-chat-meta strong{font-size:11px!important;font-weight:850!important;color:#52676c!important}
  .am-chat-meta time{font-size:9px!important;color:#8fa0a5!important}
  .am-chat-text{font-size:13px!important;line-height:1.42!important;color:var(--am-chat-text)!important;overflow-wrap:anywhere!important}

  .am-chat-compose{
    flex:0 0 auto!important;
    padding:10px 14px!important;
    background:#fff!important;
    border-top:1px solid var(--am-chat-line)!important;
    box-shadow:0 -4px 14px rgba(17,40,45,.035)!important;
  }
  .am-chat-compose-row{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 48px!important;
    align-items:end!important;
    gap:8px!important;
  }
  .am-chat-attach,.am-chat-send{
    width:44px!important;height:44px!important;
    display:grid!important;place-items:center!important;
    border:0!important;border-radius:12px!important;
    cursor:pointer!important;
  }
  .am-chat-attach{background:#eff5f6!important;color:#60777e!important}
  .am-chat-attach:hover{background:#e3eeee!important}
  .am-chat-send{width:48px!important;background:var(--am-chat-accent)!important;color:#fff!important;box-shadow:0 4px 12px rgba(24,183,174,.22)!important}
  .am-chat-input{
    display:block!important;width:100%!important;min-width:0!important;
    height:44px!important;min-height:44px!important;max-height:116px!important;
    margin:0!important;padding:11px 13px!important;box-sizing:border-box!important;
    border:1px solid #d8e4e6!important;border-radius:13px!important;
    background:#fff!important;color:#17282c!important;
    font-size:14px!important;line-height:20px!important;
    resize:none!important;outline:0!important;overflow-y:hidden!important;
  }
  .am-chat-input:focus{border-color:#90d1cc!important;box-shadow:0 0 0 3px rgba(24,183,174,.09)!important}
}

@media(max-width:760px){
  body.am-chat-page{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    overflow:hidden!important;
    background:#f4f7f8!important;
  }
  body.am-chat-page .topbar,
  body.am-chat-page .mobile-bottom-nav,
  body.am-chat-page .messenger-widget{display:none!important}
  body.am-chat-page .app-shell,
  body.am-chat-page .app-main,
  body.am-chat-page .main,
  body.am-chat-page main{
    height:100dvh!important;min-height:0!important;
    margin:0!important;padding:0!important;overflow:hidden!important;
  }
  body.am-chat-page .content{
    position:fixed!important;inset:0!important;
    width:100vw!important;height:100dvh!important;min-height:0!important;
    margin:0!important;
    padding:calc(env(safe-area-inset-top) + 2px) 0 env(safe-area-inset-bottom)!important;
    overflow:hidden!important;background:#f4f7f8!important;
  }
  .am-chat-module{width:100%!important;height:100%!important;margin:0!important;padding:0!important}
  .am-chat-shell{
    width:100%!important;height:100%!important;min-height:0!important;
    display:flex!important;flex-direction:column!important;
    overflow:hidden!important;border:0!important;border-radius:0!important;background:#f4f7f8!important;
  }
  .am-chat-header{
    flex:0 0 54px!important;height:54px!important;
    display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;
    align-items:center!important;gap:6px!important;
    padding:0 8px!important;box-sizing:border-box!important;
    background:#fff!important;border-bottom:1px solid #e2e9eb!important;
  }
  .am-chat-back,.am-chat-dialogs{
    width:40px!important;height:40px!important;
    display:grid!important;place-items:center!important;
    border:0!important;border-radius:12px!important;
    background:#18b7ae!important;color:#fff!important;
    box-shadow:0 2px 8px rgba(0,0,0,.10)!important;
  }
  .am-chat-dialogs{background:#eef3f4!important;color:#677b82!important;box-shadow:none!important}
  .am-chat-title{min-width:0;text-align:center;line-height:1.08}
  .am-chat-title strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:#17282c;font-weight:850}
  .am-chat-title small{display:block;margin-top:2px;font-size:9px;color:#8d9da3}

  .am-chat-messages{
    flex:1 1 0!important;height:0!important;min-height:0!important;max-height:none!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    padding:8px 8px 10px!important;margin:0!important;background:#f4f7f8!important;
    -webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;
  }
  .am-chat-message{
    width:100%!important;display:flex!important;align-items:flex-end!important;gap:6px!important;margin:0 0 7px!important;
  }
  .am-chat-message.is-mine{justify-content:flex-end!important}
  .am-chat-message.is-other{justify-content:flex-start!important}
  .am-chat-message.is-mine .am-chat-avatar{order:2}
  .am-chat-message.is-mine .am-chat-bubble{order:1}
  .am-chat-avatar{
    flex:0 0 28px!important;width:28px!important;height:28px!important;border-radius:50%!important;overflow:hidden!important;
    display:grid!important;place-items:center!important;background:#dff5f2!important;color:#087f7a!important;font-size:9px!important;font-weight:800!important;
  }
  .am-chat-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
  .am-chat-bubble{
    max-width:calc(100vw - 68px)!important;
    padding:7px 9px!important;
    border:1px solid #d2e7e5!important;border-radius:13px 13px 13px 5px!important;
    background:#fff!important;
  }
  .am-chat-message.is-mine .am-chat-bubble{background:#dff6f3!important;border-color:#bee7e3!important;border-radius:13px 13px 5px 13px!important}
  .am-chat-meta{display:flex!important;align-items:center!important;gap:7px!important;margin:0 0 3px!important;line-height:1!important}
  .am-chat-meta strong{font-size:10.5px!important;color:#52666b!important;font-weight:850!important}
  .am-chat-meta time{font-size:8.5px!important;color:#8ea0a5!important}
  .am-chat-text{font-size:13px!important;line-height:1.32!important;color:#17282c!important;overflow-wrap:anywhere!important}

  .am-chat-compose{
    flex:0 0 auto!important;position:relative!important;transform:none!important;
    margin:0!important;padding:6px 8px!important;background:#fff!important;
    border-top:1px solid #dfe7e9!important;box-shadow:0 -3px 12px rgba(25,45,50,.04)!important;
    z-index:20!important;
  }
  .am-chat-compose-row{
    display:grid!important;grid-template-columns:42px minmax(0,1fr) 46px!important;align-items:end!important;gap:6px!important;width:100%!important;
  }
  .am-chat-attach,.am-chat-send{
    display:grid!important;place-items:center!important;width:42px!important;height:42px!important;
    border:0!important;border-radius:12px!important;margin:0!important;padding:0!important;
  }
  .am-chat-attach{background:#eef3f4!important;color:#587078!important}
  .am-chat-send{width:46px!important;background:#18b7ae!important;color:#fff!important}
  .am-chat-input{
    width:100%!important;height:42px!important;min-height:42px!important;max-height:88px!important;
    box-sizing:border-box!important;margin:0!important;padding:10px 12px!important;
    border:1px solid #d9e3e5!important;border-radius:13px!important;background:#fff!important;
    outline:none!important;resize:none!important;overflow-y:hidden!important;font-size:16px!important;line-height:20px!important;
  }
}

.am-chat-file-preview{margin:6px 54px 0!important;color:#6e8086!important;font-size:10px!important}
.am-chat-file-chip{
  display:inline-grid!important;grid-template-columns:34px minmax(80px,1fr) auto 24px!important;align-items:center!important;
  gap:7px!important;max-width:360px!important;margin:6px 6px 0 0!important;padding:5px 6px!important;
  border:1px solid #dbe6e7!important;border-radius:10px!important;background:#f7fbfb!important;color:#213236!important;
}
.am-chat-file-chip img{width:34px!important;height:28px!important;border-radius:6px!important;object-fit:cover!important;background:#edf3f3!important}
.am-chat-file-chip i{width:34px!important;height:28px!important;display:grid!important;place-items:center!important;border-radius:6px!important;background:#edf3f3!important}
.am-chat-file-chip b{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:10px!important}
.am-chat-file-chip small{color:#7b8e93!important;font-size:9px!important;white-space:nowrap!important}
.am-chat-file-chip button{width:22px!important;height:22px!important;border:0!important;border-radius:7px!important;background:#e7eeee!important;color:#63777d!important;cursor:pointer!important;line-height:1!important}

.am-chat-image{display:block!important;margin-top:7px!important;max-width:320px!important;overflow:hidden!important;border-radius:11px!important;background:#eef4f4!important;border:1px solid #dbe6e8!important}
.am-chat-image img{display:block!important;width:100%!important;height:auto!important;max-height:260px!important;object-fit:cover!important}
.am-chat-file{display:flex!important;align-items:center!important;gap:8px!important;margin-top:7px!important;padding:8px 9px!important;border-radius:9px!important;background:#fff!important;color:#203337!important;text-decoration:none!important;border:1px solid #e1e9ea!important}

.am-chat-lightbox{
  position:fixed!important;inset:0!important;z-index:5000!important;display:grid!important;place-items:center!important;
  padding:24px!important;background:rgba(9,18,21,.78)!important;
}
.am-chat-lightbox[hidden]{display:none!important}
.am-chat-lightbox img{display:block!important;max-width:min(1100px,96vw)!important;max-height:90vh!important;object-fit:contain!important;border-radius:12px!important;background:#fff!important;box-shadow:0 18px 70px rgba(0,0,0,.35)!important}
.am-chat-lightbox button{position:fixed!important;top:18px!important;right:18px!important;width:42px!important;height:42px!important;border:0!important;border-radius:12px!important;display:grid!important;place-items:center!important;background:#fff!important;color:#17282c!important;cursor:pointer!important}

/* Task discussion: viewport-aware panel without locking normal pages */
@media(min-width:761px){
  body:not(.am-chat-page) .task-chat-layout .task-chat-panel{
    display:flex!important;flex-direction:column!important;
    min-height:420px!important;max-height:calc(80dvh - 132px)!important;overflow:hidden!important;
  }
  body:not(.am-chat-page) .task-chat-layout .task-chat-panel .task-chat-messages{
    flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
  }
  body:not(.am-chat-page) .task-chat-layout .task-chat-panel .chat-compose,
  body:not(.am-chat-page) .task-chat-layout .task-chat-panel .chat-compose-v581{
    flex:0 0 auto!important;position:relative!important;inset:auto!important;transform:none!important;margin-top:auto!important;
  }
}
@media(max-width:760px){
  body.mobile-task-chat-page:not(.am-chat-page) .task-chat-v581 .task-chat-messages{
    flex:1 1 0!important;height:0!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;
  }
}


/* V64.1 — real SVG asset icons in chat controls */
.am-chat-icon-img{
  display:block!important;
  width:20px!important;
  height:20px!important;
  object-fit:contain!important;
  pointer-events:none!important;
}
.am-chat-send .am-chat-icon-img{width:21px!important;height:21px!important}

/* Task discussion: replace verbose "back to task" button with real SVG asset icon */
@media(min-width:761px){
  body:not(.am-chat-page) .chat-back-v581{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:10px!important;
    border:1px solid #cfe9e7!important;
    background:#eef8f7 url("../icons/chat-back-teal.svg") center/19px 19px no-repeat!important;
    color:transparent!important;
    font-size:0!important;
    text-decoration:none!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  body:not(.am-chat-page) .chat-back-v581:hover{
    background-color:#dff5f2!important;
    border-color:#92d8d3!important;
  }
  body:not(.am-chat-page) .chat-back-v581 i,
  body:not(.am-chat-page) .chat-back-v581 span,
  body:not(.am-chat-page) .chat-back-v581 small,
  body:not(.am-chat-page) .chat-back-v581 svg{
    display:none!important;
  }
  body:not(.am-chat-page) .chat-back-v581::before,
  body:not(.am-chat-page) .chat-back-v581::after{
    content:none!important;
    display:none!important;
  }
}
@media(max-width:760px){
  body.mobile-task-chat-page:not(.am-chat-page) .chat-context-v581{
    grid-template-columns:44px minmax(0,1fr) 44px!important;
  }
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581,
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581:link,
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581:visited{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:0!important;
    border-radius:12px!important;
    background:#18b7ae url("../icons/chat-back-white.svg") center/20px 20px no-repeat!important;
    color:transparent!important;
    font-size:0!important;
    box-shadow:0 2px 8px rgba(0,0,0,.10)!important;
    text-decoration:none!important;
    overflow:hidden!important;
  }
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581 i,
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581 span,
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581 small,
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581 svg{
    display:none!important;
  }
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581::before,
  body.mobile-task-chat-page:not(.am-chat-page) .chat-back-v581::after{
    content:none!important;
    display:none!important;
  }
}


/* V64.2 — dashboard cleanup after removing secondary action buttons */
@media(min-width:761px){
  .dashboard-head-v642{align-items:center!important}
  .dashboard-head-v642 .dashboard-quick-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    flex-wrap:nowrap!important;
  }
  .dashboard-head-v642 .dashboard-quick-actions .btn{
    height:36px!important;
    padding:0 12px!important;
    border-radius:9px!important;
    font-size:11px!important;
  }
  .dashboard-fire-notes .dashboard-section-head{
    align-items:center!important;
  }
}


/* V64.3 — only native mobile app: sidebar text +2px */
html.is-capacitor-native .sidebar .side-nav a{
  font-size:16px!important;
}
html.is-capacitor-native .sidebar .side-nav a i{
  font-size:18px!important;
}
html.is-capacitor-native .sidebar .sidebar-user strong{
  font-size:14px!important;
}
html.is-capacitor-native .sidebar .sidebar-user span:not(.avatar){
  font-size:12px!important;
}


/* V64.4 — native app sidebar: -1px after V64.3 + clearer spacing */
html.is-capacitor-native .sidebar .side-nav a{
  font-size:15px!important;
  word-spacing:2px!important;
  letter-spacing:.1px!important;
  line-height:1.22!important;
}
html.is-capacitor-native .sidebar .side-nav a i{
  font-size:17px!important;
}
html.is-capacitor-native .sidebar .sidebar-user strong{
  font-size:13px!important;
  word-spacing:2px!important;
}
html.is-capacitor-native .sidebar .sidebar-user span:not(.avatar){
  font-size:11px!important;
  word-spacing:2px!important;
}


/* V64.7 — mobile notes: category and project in one horizontal row */
@media(max-width:760px){
  .note-meta-row.note-meta-v592,
  .note-meta-v592{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    margin:6px 0 10px!important;
    overflow:visible!important;
  }

  .note-meta-row.note-meta-v592 > *,
  .note-meta-v592 > *{
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    flex:0 1 auto!important;
  }

  .note-meta-row.note-meta-v592 select,
  .note-meta-row.note-meta-v592 input,
  .note-meta-v592 select,
  .note-meta-v592 input{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:38px!important;
    box-sizing:border-box!important;
    padding:0 10px!important;
    border:1px solid #dbe5e7!important;
    border-radius:10px!important;
    background:#f8fbfb!important;
    font-size:13px!important;
    line-height:38px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .note-meta-row.note-meta-v592 label,
  .note-meta-v592 label{
    margin:0!important;
  }

  .note-editor-panel .note-meta-row.note-meta-v592 + .mini-editor-toolbar,
  .note-editor-panel .note-meta-v592 + .mini-editor-toolbar{
    margin-top:8px!important;
  }
}

/* very narrow phones: keep horizontal, just make it tighter */
@media(max-width:380px){
  .note-meta-row.note-meta-v592,
  .note-meta-v592{
    gap:6px!important;
  }
  .note-meta-row.note-meta-v592 select,
  .note-meta-row.note-meta-v592 input,
  .note-meta-v592 select,
  .note-meta-v592 input{
    height:36px!important;
    padding:0 8px!important;
    font-size:12px!important;
  }
}


/* V64.8 — message inputs keep cursor visible when text is long */
.am-chat-input,
.chat-input-v581,
[data-chat-input]{
  scroll-behavior:auto!important;
  overscroll-behavior:contain!important;
}
.am-chat-input,
[data-chat-input]{
  overflow-y:auto!important;
}


/* V65.1 — permanent note delete */
.note-secondary-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin-top:8px!important;
  flex-wrap:wrap!important;
}
.note-secondary-actions form{
  margin:0!important;
}
.note-delete-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  border:1px solid #f1c9cd!important;
  background:#fff7f8!important;
  color:#c63e48!important;
}
.note-delete-btn:hover{
  border-color:#eaaeb4!important;
  background:#fff0f2!important;
  color:#ad2832!important;
}
.note-delete-btn:disabled{
  opacity:.55!important;
  cursor:wait!important;
}

@media(max-width:760px){
  .note-secondary-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 42px!important;
    gap:7px!important;
    width:100%!important;
    margin-top:6px!important;
  }
  .note-secondary-actions .note-archive-form .btn{
    width:100%!important;
    min-height:40px!important;
  }
  .note-delete-form{
    width:42px!important;
  }
  .note-delete-btn{
    width:42px!important;
    min-width:42px!important;
    height:40px!important;
    padding:0!important;
    border-radius:10px!important;
  }
  .note-delete-btn span{
    display:none!important;
  }
}


/* V65.2 — visible delete control in the note title row */
.note-editor-top{
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
}
.note-delete-top{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  height:34px!important;
  min-width:92px!important;
  padding:0 11px!important;
  border:1px solid #efc4c8!important;
  border-radius:9px!important;
  background:#fff7f8!important;
  color:#c43b45!important;
  font-size:11px!important;
  font-weight:800!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.note-delete-top:hover{
  background:#ffedef!important;
  border-color:#e8a9af!important;
  color:#a92832!important;
}
.note-delete-form-hidden{
  position:absolute!important;
  width:0!important;
  height:0!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.note-secondary-actions .note-delete-form-hidden{
  display:none!important;
}

@media(max-width:760px){
  .note-editor-top{
    grid-template-columns:minmax(0,1fr) 38px 38px!important;
    gap:6px!important;
  }
  .note-delete-top{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    padding:0!important;
    border-radius:10px!important;
  }
  .note-delete-top span{
    display:none!important;
  }
  .note-delete-top i{
    font-size:15px!important;
  }
  .note-secondary-actions{
    grid-template-columns:1fr!important;
  }
}


/* V65.3 — notes header actions: focus + fire + delete in one row, no overlap */
.note-editor-top{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto auto!important;
  align-items:center!important;
  gap:7px!important;
}
.note-focus-toggle-fixed{
  display:none!important;
}
.note-focus-inline-v653{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  height:34px!important;
  min-width:82px!important;
  padding:0 10px!important;
  border:1px solid #b9d9d7!important;
  border-radius:9px!important;
  background:#eef9f8!important;
  color:#087f7a!important;
  font-size:11px!important;
  font-weight:800!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.note-focus-inline-v653:hover,
.note-focus-inline-v653.active{
  border-color:#18b7ae!important;
  background:#18b7ae!important;
  color:#fff!important;
}
.note-fire-toggle{
  margin:0!important;
}
.note-fire-toggle > span{
  height:34px!important;
  min-width:34px!important;
  padding:0 8px!important;
  display:grid!important;
  place-items:center!important;
}
.note-delete-top{
  min-width:88px!important;
}

body.note-focus-mode .note-focus-inline-v653{
  position:fixed!important;
  top:36px!important;
  right:calc(10vw + 18px)!important;
  z-index:1950!important;
  min-width:110px!important;
  background:#17282b!important;
  border-color:#17282b!important;
  color:#fff!important;
}

@media(max-width:760px){
  .note-editor-top{
    grid-template-columns:minmax(0,1fr) 38px 38px 38px!important;
    gap:6px!important;
  }
  .note-focus-inline-v653,
  .note-delete-top{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    padding:0!important;
  }
  .note-focus-inline-v653 span,
  .note-delete-top span{
    display:none!important;
  }
  .note-fire-toggle > span{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    padding:0!important;
    border-radius:10px!important;
  }
}


/* V65.4 — all active notes on dashboard */
.dashboard-all-notes .dashboard-notes-icon{
  width:32px!important;
  height:32px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:9px!important;
  background:#eaf8f7!important;
  color:#087f7a!important;
  font-size:14px!important;
}
.dashboard-notes-grid{
  align-items:stretch!important;
}
.dashboard-note-card{
  position:relative!important;
  min-width:0!important;
}
.dashboard-note-card-icon{
  color:#7c9096!important;
  font-size:13px!important;
  flex:0 0 auto!important;
}
.dashboard-note-card.is-fire{
  border-color:#ecdcb9!important;
}
.dashboard-note-card>div:first-child{
  min-width:0!important;
}
.dashboard-note-card>div:first-child strong{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.dashboard-note-card small{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

@media(max-width:760px){
  .dashboard-notes-grid{
    grid-template-columns:1fr!important;
  }
}


/* V65.5 — note footer actions aligned, archive button as SVG */
.note-actions-v655{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding-top:12px!important;
  flex-wrap:wrap!important;
}
.note-actions-main,
.note-actions-side{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.note-actions-side{
  margin-left:auto!important;
  justify-content:flex-end!important;
}
.note-archive-form-v655{
  margin:0!important;
}
.note-archive-btn-v655{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:40px!important;
  padding:0 14px!important;
  border:1px solid #d6e2e4!important;
  background:#f9fbfb!important;
  color:#264148!important;
  border-radius:10px!important;
  font-weight:700!important;
}
.note-archive-btn-v655:hover{
  border-color:#b8d3d1!important;
  background:#eef8f7!important;
  color:#0d6f6b!important;
}
.note-archive-btn-v655 svg{
  width:17px!important;
  height:17px!important;
  flex:0 0 17px!important;
}
.note-autosave-state{
  margin-left:0!important;
}
.note-secondary-actions{
  display:none!important;
}

@media (min-width:851px){
  .note-editor-panel .note-form{
    min-height:100%!important;
  }
  .note-actions-main .btn,
  .note-actions-side .btn{
    min-height:40px!important;
  }
}

@media (max-width:850px){
  .note-actions-v655{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
  }
  .note-actions-main,
  .note-actions-side{
    width:100%!important;
    justify-content:space-between!important;
  }
  .note-actions-main{
    gap:8px!important;
  }
  .note-actions-main .btn,
  .note-actions-main a,
  .note-actions-side .btn{
    min-height:40px!important;
  }
  .note-actions-main .btn,
  .note-actions-main a{
    flex:1 1 calc(50% - 4px)!important;
    justify-content:center!important;
  }
  .note-actions-side{
    gap:8px!important;
  }
  .note-actions-side .note-autosave-state{
    flex:1 1 auto!important;
    min-width:0!important;
    order:2!important;
    text-align:right!important;
  }
  .note-archive-form-v655{
    order:1!important;
    flex:0 0 auto!important;
  }
  .note-archive-btn-v655{
    min-width:118px!important;
  }
}

@media (max-width:520px){
  .note-actions-main{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .note-actions-main .btn,
  .note-actions-main a{
    width:100%!important;
    flex:none!important;
  }
  .note-actions-side{
    align-items:center!important;
  }
  .note-archive-btn-v655 span{
    display:none!important;
  }
  .note-archive-btn-v655{
    width:40px!important;
    min-width:40px!important;
    padding:0!important;
  }
  .note-autosave-state{
    font-size:11px!important;
  }
}


/* V65.6 — calendar-month task statistics on dashboard */
.dashboard-month-stats .stat-card,
.dashboard-team-month-stats .stat-card{
  min-height:104px!important;
  align-items:flex-start!important;
}
.dashboard-month-stats .stat-card>div:nth-child(2),
.dashboard-team-month-stats .stat-card>div:nth-child(2){
  min-width:0!important;
  flex:1 1 auto!important;
}
.dashboard-month-stats .stat-icon,
.dashboard-team-month-stats .stat-icon{
  margin-top:2px!important;
}
.dashboard-month-stats .green .stat-icon,
.dashboard-team-month-stats .green .stat-icon{
  background:#e9f8f1!important;
  color:#17855e!important;
}
.stat-compare{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:18px!important;
  margin-top:5px!important;
  font-size:10px!important;
  line-height:1.2!important;
  color:#7b8d94!important;
  white-space:nowrap!important;
}
.stat-compare b{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:28px!important;
  height:18px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  font-size:9px!important;
  font-weight:850!important;
  background:#edf2f3!important;
  color:#677980!important;
}
.stat-compare.good b{
  background:#e7f7ef!important;
  color:#167d59!important;
}
.stat-compare.bad b{
  background:#fff0f1!important;
  color:#cb4550!important;
}
.stat-compare.neutral b{
  background:#edf2f3!important;
  color:#677980!important;
}
.dashboard-month-divider{
  margin-top:18px!important;
}
.dashboard-month-divider span{
  letter-spacing:.05em!important;
}
.dashboard-team-month-stats{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

@media(max-width:900px){
  .dashboard-team-month-stats{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:620px){
  .dashboard-month-stats{
    grid-template-columns:1fr!important;
  }
  .dashboard-month-stats .stat-card,
  .dashboard-team-month-stats .stat-card{
    min-height:88px!important;
  }
  .stat-compare{
    white-space:normal!important;
    flex-wrap:wrap!important;
  }
}

/* V65.7 — monthly dashboard details */
.dashboard-stat-link{position:relative;text-decoration:none!important;color:inherit!important;cursor:pointer!important;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease!important}.dashboard-stat-link:hover{transform:translateY(-1px)!important;border-color:#b8d6d4!important;box-shadow:0 8px 22px rgba(25,55,60,.08)!important}.dashboard-stat-link .stat-open{position:absolute!important;right:12px!important;top:12px!important;color:#91a2a8!important;font-size:10px!important}.month-detail-page{display:flex;flex-direction:column;gap:14px}.month-detail-head{align-items:flex-end!important}.month-detail-back{display:inline-flex;align-items:center;gap:7px;margin-bottom:8px;color:#708188;font-size:11px;font-weight:700;text-decoration:none}.month-detail-switches,.month-detail-scope{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.month-detail-scope{padding:5px;background:#eaf0f1;border-radius:10px;width:max-content}.month-detail-scope a{padding:8px 12px;border-radius:8px;color:#607178;font-size:11px;font-weight:800;text-decoration:none}.month-detail-scope a.active{background:#fff;color:#17343a;box-shadow:0 1px 4px rgba(0,0,0,.06)}.month-detail-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.month-detail-table{width:100%;border-collapse:collapse;min-width:900px}.month-detail-table th{padding:11px 13px;text-align:left;background:#f7fafb;color:#718188;font-size:10px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line)}.month-detail-table td{padding:12px 13px;border-bottom:1px solid #edf2f3;vertical-align:middle;font-size:11px;color:#41545b}.month-detail-table tbody tr:last-child td{border-bottom:0}.month-detail-table tbody tr:hover td{background:#fbfdfd}.month-detail-table td small{display:block;margin-top:3px;color:#87979d;font-size:9px}.month-detail-task{display:block;color:#1b3035;text-decoration:none}.month-detail-task strong{font-size:12px}.month-detail-empty{padding:28px;border:1px dashed #cbd9dc;border-radius:12px;background:#fff;color:#73858b;text-align:center;font-size:12px}@media(max-width:760px){.month-detail-head{align-items:flex-start!important}.month-detail-switches{width:100%;overflow-x:auto;flex-wrap:nowrap}.month-detail-switches .btn{flex:0 0 auto}.month-detail-page{gap:10px}.dashboard-stat-link .stat-open{right:10px;top:10px}}


/* V65.8 — task_2.php desktop Kanban: all columns in one horizontal row */
@media(min-width:851px){
  .personal-kanban{
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:10px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 2px 12px!important;
    box-sizing:border-box!important;

    /* smooth, local board scrolling */
    scroll-behavior:smooth!important;
    scroll-snap-type:x proximity!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch!important;

    /* Firefox */
    scrollbar-width:thin!important;
    scrollbar-color:#b8cbcf #edf3f4!important;
  }

  .personal-kanban::-webkit-scrollbar{
    height:9px!important;
  }
  .personal-kanban::-webkit-scrollbar-track{
    background:#edf3f4!important;
    border-radius:999px!important;
    margin:0 8px!important;
  }
  .personal-kanban::-webkit-scrollbar-thumb{
    background:#b8cbcf!important;
    border:2px solid #edf3f4!important;
    border-radius:999px!important;
  }
  .personal-kanban::-webkit-scrollbar-thumb:hover{
    background:#8faeb3!important;
  }

  .personal-kanban-col{
    flex:1 0 220px!important;
    min-width:220px!important;
    width:auto!important;
    max-width:none!important;
    scroll-snap-align:start!important;
    box-sizing:border-box!important;
  }

  /* On wide workspaces all statuses fit naturally in one row. */
  @media(min-width:1500px){
    .personal-kanban-col{
      flex-basis:0!important;
      min-width:205px!important;
    }
  }

  .personal-kanban-col>header{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
  }

  .personal-kanban-col>header strong{
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }

  /* Never let the browser page itself scroll horizontally. */
  html,body,.app-main,.content{
    max-width:100%!important;
    overflow-x:hidden!important;
  }
}

/* V66.0 — encrypted access vault + security center */
.vault-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;align-items:start}.vault-main{min-width:0}.vault-search{margin-bottom:12px}.vault-search-box{display:flex;align-items:center;gap:8px}.vault-search-box>i{color:#789097}.vault-search-box .input{flex:1}.vault-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vault-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;box-shadow:0 3px 12px rgba(18,43,49,.035);min-width:0}.vault-card-top{display:grid;grid-template-columns:38px minmax(0,1fr) 34px;gap:10px;align-items:center;margin-bottom:10px}.vault-card-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#e9f8f6;color:#087f7a}.vault-card-title{min-width:0}.vault-card-title strong,.vault-card-title span{display:block}.vault-card-title strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vault-card-title span{font-size:10px;color:#87979d;margin-top:2px}.vault-edit{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;color:#63787e;text-decoration:none}.vault-edit:hover{background:#eef5f6;color:#087f7a}.vault-url{display:flex;align-items:center;gap:7px;color:#087f7a;text-decoration:none;font-size:11px;margin-bottom:10px;min-width:0}.vault-url span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vault-secret-row{display:grid;grid-template-columns:62px minmax(0,1fr) 34px 34px;gap:6px;align-items:center;padding:7px 0;border-top:1px solid #edf2f3}.vault-secret-row>span{font-size:10px;color:#819299}.vault-secret-row code{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#283d43;font-size:11px;background:transparent}.vault-icon-btn{width:32px;height:32px;border:1px solid #dce6e8;border-radius:9px;background:#f9fbfb;color:#61767d;display:grid;place-items:center;cursor:pointer}.vault-icon-btn:hover{border-color:#9ed8d3;background:#edf9f8;color:#087f7a}.vault-icon-btn:disabled{opacity:.5}.vault-card-meta{display:flex;justify-content:space-between;gap:10px;margin-top:9px;color:#93a1a6;font-size:9px}.vault-card-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-empty{grid-column:1/-1;min-height:220px;border:1px dashed #cbdadd;border-radius:13px;background:#fbfdfd;display:grid;place-content:center;text-align:center;color:#84969c;padding:24px}.vault-empty i{font-size:28px;color:#7cbab7;margin-bottom:9px}.vault-empty strong,.vault-empty span{display:block}.vault-empty strong{color:#2b4046}.vault-empty span{font-size:11px;margin-top:4px}.vault-editor{position:sticky;top:78px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 32px rgba(19,43,48,.08);overflow:hidden}.vault-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;border-bottom:1px solid #e8eef0}.vault-editor-head strong,.vault-editor-head span{display:block}.vault-editor-head strong{font-size:14px}.vault-editor-head span{font-size:10px;color:#87979d;margin-top:2px}.vault-editor-head>a{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;color:#657a80;text-decoration:none}.vault-editor-head>a:hover{background:#eef5f6}.vault-form{padding:14px}.vault-form .field{margin-bottom:11px}.vault-form-grid{grid-template-columns:1fr 1fr}.vault-input-action{display:grid;grid-template-columns:minmax(0,1fr) 38px 38px;gap:6px}.vault-input-action:has(input[name="login"]){grid-template-columns:minmax(0,1fr) 38px}.vault-inline-copy{border:1px solid #dce6e8;border-radius:9px;background:#f7fafb;color:#61767d;cursor:pointer}.vault-inline-copy:hover{background:#edf8f7;color:#087f7a;border-color:#acd9d5}.vault-form-actions{display:flex;gap:8px;align-items:center;margin-top:12px}.btn-danger-soft{border:1px solid #efc8cc!important;background:#fff7f8!important;color:#c13b46!important}.vault-toast{position:fixed;right:24px;bottom:24px;z-index:5000;background:#142a2f;color:#fff;border-radius:10px;padding:10px 13px;font-size:11px;font-weight:750;box-shadow:0 10px 30px rgba(0,0,0,.18)}.vault-toast.bad{background:#9f2f39}.security-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.security-kpi-grid article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.security-kpi-grid strong{display:block;font-size:24px;color:#183036}.security-kpi-grid span{display:block;font-size:10px;color:#809197;margin-top:3px}.security-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:14px;margin-bottom:14px}.security-check-list>div{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 14px;border-top:1px solid #edf2f3}.security-check-list>div:first-child{border-top:0}.security-check-dot{width:10px;height:10px;border-radius:50%;background:#d1d9db}.security-check-dot.ok{background:#24a76d}.security-check-dot.bad{background:#d94d57}.security-check-list strong,.security-check-list small{display:block}.security-check-list strong{font-size:11px}.security-check-list small{font-size:9px;color:#8c9aa0;margin-top:2px}.security-check-list b{font-size:9px;color:#73868d}.security-actions{display:flex;flex-direction:column;gap:9px}.security-actions form,.security-actions .btn{width:100%}.security-event-table{overflow:auto}.security-event-row{display:grid;grid-template-columns:130px 1.2fr 1fr 140px;gap:10px;align-items:center;padding:9px 12px;border-top:1px solid #eef2f3;font-size:10px}.security-event-row.head{border-top:0;background:#f8fbfb;color:#73868c}.security-event-row code{font-size:9px;color:#596e74}.security-empty{padding:18px;color:#87979d;font-size:11px}
@media(max-width:1100px){.vault-layout{grid-template-columns:1fr}.vault-editor{position:relative;top:auto}.security-grid{grid-template-columns:1fr}.vault-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.vault-grid{grid-template-columns:1fr}.vault-search-box{display:grid;grid-template-columns:1fr auto}.vault-search-box>i{display:none}.vault-search-box .btn-soft{display:none}.vault-layout{gap:10px}.vault-editor{border-radius:0;margin:0 -10px}.vault-secret-row{grid-template-columns:54px minmax(0,1fr) 34px 34px}.vault-card-meta{flex-direction:column;gap:2px}.security-kpi-grid{grid-template-columns:1fr}.security-event-row{grid-template-columns:105px 1fr}.security-event-row>*:nth-child(3),.security-event-row>*:nth-child(4){display:none}.vault-form-grid{grid-template-columns:1fr}.vault-page-head .head-actions{width:auto}.vault-toast{left:12px;right:12px;bottom:78px;text-align:center}}


/* =========================================================
   V66.1 — encrypted vault/admin security UI refinement
   ========================================================= */

/* Page header */
.vault-page-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:18px!important;
}
.vault-page-head h1{
  letter-spacing:-.025em!important;
}
.vault-page-head p{
  max-width:760px!important;
  color:#718188!important;
}
.vault-page-head .btn-primary{
  min-height:40px!important;
  border-radius:10px!important;
  padding-inline:15px!important;
  box-shadow:0 6px 18px rgba(22,126,120,.12)!important;
}

/* Main workspace */
.vault-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 390px!important;
  gap:18px!important;
  align-items:start!important;
}
.vault-main{
  min-width:0!important;
}
.vault-search{
  margin:0 0 14px!important;
}
.vault-search-box{
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr) auto auto!important;
  align-items:center!important;
  gap:8px!important;
  padding:8px!important;
  border:1px solid #dce6e8!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 3px 14px rgba(20,45,51,.035)!important;
}
.vault-search-box>i{
  margin-left:4px!important;
  color:#87979d!important;
}
.vault-search-box .input{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  min-height:38px!important;
  padding-left:2px!important;
}
.vault-search-box .btn{
  min-height:36px!important;
  border-radius:9px!important;
}

/* Credentials grid */
.vault-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.vault-card{
  position:relative!important;
  min-width:0!important;
  padding:14px!important;
  border:1px solid #dde6e8!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 3px 14px rgba(18,43,49,.035)!important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
.vault-card:hover{
  border-color:#bdd7d5!important;
  box-shadow:0 8px 26px rgba(18,43,49,.07)!important;
  transform:translateY(-1px)!important;
}
.vault-card-top{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 34px!important;
  gap:10px!important;
  align-items:center!important;
  margin-bottom:10px!important;
}
.vault-card-icon{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #cce8e5!important;
  border-radius:10px!important;
  background:#eff9f8!important;
  color:#087f7a!important;
}
.vault-card-title strong{
  font-size:13px!important;
  line-height:1.25!important;
  color:#21383f!important;
}
.vault-card-title span{
  font-size:10px!important;
  color:#89989e!important;
  margin-top:3px!important;
}
.vault-edit{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  color:#697c82!important;
}
.vault-edit:hover{
  border-color:#cfe0e2!important;
  background:#f5f9f9!important;
  color:#087f7a!important;
}

/* URL */
.vault-url{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
  margin:0 0 10px!important;
  padding:7px 9px!important;
  border-radius:8px!important;
  background:#f7fafb!important;
  color:#567178!important;
  font-size:10.5px!important;
}
.vault-url:hover{
  background:#f0f7f7!important;
  color:#087f7a!important;
}

/* Secret rows: looks like a compact password-manager field */
.vault-secret-row{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) 32px 32px!important;
  gap:6px!important;
  align-items:center!important;
  min-height:43px!important;
  padding:6px 0!important;
  border-top:1px solid #edf2f3!important;
}
.vault-secret-row>span{
  font-size:9.5px!important;
  font-weight:700!important;
  color:#8a999f!important;
}
.vault-secret-row code{
  display:block!important;
  min-width:0!important;
  padding:7px 9px!important;
  border:1px solid #e4eaec!important;
  border-radius:8px!important;
  background:#fafcfc!important;
  color:#263b42!important;
  font:11px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.vault-icon-btn{
  width:32px!important;
  height:32px!important;
  border:1px solid #dce6e8!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#687c82!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
  transition:.15s ease!important;
}
.vault-icon-btn:hover{
  border-color:#9ccfcb!important;
  background:#eff9f8!important;
  color:#087f7a!important;
}
.vault-icon-btn:active{
  transform:translateY(1px)!important;
}
.vault-card-meta{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-top:9px!important;
  padding-top:9px!important;
  border-top:1px dashed #edf1f2!important;
  color:#94a2a7!important;
  font-size:9px!important;
}

/* Empty state */
.vault-empty{
  grid-column:1/-1!important;
  min-height:240px!important;
  border:1px dashed #c9d9dc!important;
  border-radius:12px!important;
  background:#fbfdfd!important;
  display:grid!important;
  place-content:center!important;
  text-align:center!important;
  color:#82949a!important;
  padding:30px!important;
}
.vault-empty i{
  font-size:26px!important;
  color:#70aaa7!important;
  margin-bottom:10px!important;
}

/* Editor */
.vault-editor{
  position:sticky!important;
  top:76px!important;
  overflow:hidden!important;
  border:1px solid #d9e4e6!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 14px 38px rgba(18,43,49,.09)!important;
}
.vault-editor-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:14px 15px!important;
  border-bottom:1px solid #e7edef!important;
  background:#fbfdfd!important;
}
.vault-editor-head strong{
  color:#223940!important;
  font-size:13px!important;
}
.vault-editor-head span{
  max-width:290px!important;
  margin-top:3px!important;
  color:#87979d!important;
  font-size:9.5px!important;
  line-height:1.4!important;
}
.vault-editor-head>a{
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 30px!important;
  border-radius:8px!important;
  color:#74878d!important;
}
.vault-editor-head>a:hover{
  background:#edf4f5!important;
  color:#27434a!important;
}
.vault-form{
  padding:14px 15px 16px!important;
}
.vault-form .field{
  margin-bottom:11px!important;
}
.vault-form .field label{
  display:block!important;
  margin-bottom:5px!important;
  color:#536970!important;
  font-size:10px!important;
  font-weight:750!important;
}
.vault-form .field label small{
  color:#95a2a7!important;
  font-weight:500!important;
}
.vault-form .input,
.vault-form .select,
.vault-form .textarea{
  width:100%!important;
  border:1px solid #dce5e7!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.vault-form .input,
.vault-form .select{
  min-height:39px!important;
}
.vault-form .input:focus,
.vault-form .select:focus,
.vault-form .textarea:focus{
  border-color:#83c5c0!important;
  box-shadow:0 0 0 3px rgba(31,151,143,.09)!important;
}
.vault-form-grid{
  gap:9px!important;
}
.vault-input-action{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 36px 36px!important;
  gap:5px!important;
  align-items:center!important;
}
.vault-input-action>.input{
  min-width:0!important;
}
.vault-inline-copy{
  width:36px!important;
  height:36px!important;
  border:1px solid #dbe5e7!important;
  border-radius:9px!important;
  background:#f9fbfb!important;
  color:#6a7d83!important;
}
.vault-inline-copy:hover{
  border-color:#9ecfcb!important;
  background:#eff9f8!important;
  color:#087f7a!important;
}
.vault-form-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin-top:14px!important;
  padding-top:12px!important;
  border-top:1px solid #edf1f2!important;
}
.vault-form-actions .btn{
  min-height:39px!important;
  border-radius:9px!important;
}

/* Toast */
.vault-toast{
  position:fixed!important;
  right:22px!important;
  bottom:22px!important;
  z-index:5000!important;
  max-width:min(360px,calc(100vw - 30px))!important;
  padding:10px 13px!important;
  border-radius:9px!important;
  background:#173036!important;
  color:#fff!important;
  box-shadow:0 12px 34px rgba(0,0,0,.2)!important;
  font-size:11px!important;
  font-weight:700!important;
}

/* Security center */
.security-kpi-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:14px!important;
}
.security-kpi-grid article{
  min-height:92px!important;
  padding:15px!important;
  border:1px solid #dfe7e9!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(20,45,51,.03)!important;
}
.security-kpi-grid strong{
  font-size:23px!important;
  letter-spacing:-.03em!important;
  color:#21383f!important;
}
.security-kpi-grid span{
  margin-top:4px!important;
  color:#839399!important;
  font-size:9.5px!important;
}
.security-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)!important;
  gap:12px!important;
  margin-bottom:12px!important;
}
.security-check-list>div{
  min-height:52px!important;
  padding:10px 14px!important;
}
.security-check-dot{
  width:9px!important;
  height:9px!important;
}
.security-check-dot.ok{
  background:#2ca76e!important;
  box-shadow:0 0 0 4px rgba(44,167,110,.09)!important;
}
.security-check-dot.bad{
  background:#d84f59!important;
  box-shadow:0 0 0 4px rgba(216,79,89,.08)!important;
}
.security-actions .btn{
  min-height:39px!important;
  justify-content:flex-start!important;
}
.security-event-table{
  border-top:1px solid #edf1f2!important;
}
.security-event-row{
  min-height:40px!important;
  padding:9px 13px!important;
}
.security-event-row.head{
  position:sticky!important;
  top:0!important;
  z-index:1!important;
  background:#f7fafb!important;
  color:#74868d!important;
}

/* Wide desktop */
@media(min-width:1500px){
  .vault-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .vault-layout{
    grid-template-columns:minmax(0,1fr) 410px!important;
  }
}

/* Tablet */
@media(max-width:1100px){
  .vault-layout{
    grid-template-columns:1fr!important;
  }
  .vault-editor{
    position:relative!important;
    top:auto!important;
  }
  .security-grid{
    grid-template-columns:1fr!important;
  }
}

/* Mobile */
@media(max-width:760px){
  .vault-page-head{
    align-items:flex-start!important;
    margin-bottom:12px!important;
  }
  .vault-page-head .head-actions{
    width:auto!important;
    flex:0 0 auto!important;
  }
  .vault-page-head .btn-primary{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    padding:0!important;
    font-size:0!important;
  }
  .vault-page-head .btn-primary i{
    font-size:14px!important;
  }

  .vault-search-box{
    grid-template-columns:minmax(0,1fr) auto!important;
    padding:6px!important;
  }
  .vault-search-box>i,
  .vault-search-box .btn-soft{
    display:none!important;
  }
  .vault-search-box .input{
    min-width:0!important;
  }

  .vault-grid{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  .vault-card{
    padding:12px!important;
  }
  .vault-card:hover{
    transform:none!important;
  }
  .vault-secret-row{
    grid-template-columns:48px minmax(0,1fr) 32px 32px!important;
  }
  .vault-card-meta{
    flex-direction:column!important;
    gap:2px!important;
  }

  .vault-editor{
    margin:0 -10px!important;
    border-left:0!important;
    border-right:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .vault-form{
    padding:13px 12px 15px!important;
  }
  .vault-form-grid{
    grid-template-columns:1fr!important;
  }
  .vault-form-actions{
    display:grid!important;
    grid-template-columns:1fr auto!important;
  }
  .vault-form-actions .btn-primary{
    justify-content:center!important;
  }

  .security-kpi-grid{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .security-kpi-grid article{
    min-height:auto!important;
    padding:13px!important;
  }
  .security-event-row{
    grid-template-columns:100px minmax(0,1fr)!important;
  }
  .security-event-row>*:nth-child(3),
  .security-event-row>*:nth-child(4){
    display:none!important;
  }

  .vault-toast{
    left:12px!important;
    right:12px!important;
    bottom:78px!important;
    max-width:none!important;
    text-align:center!important;
  }
}


/* V66.2 — vault reveal/copy states */
.vault-secret-row code.is-revealed{
  background:#eef9f7!important;
  border-color:#a8d7d3!important;
  color:#173f42!important;
  font-weight:700!important;
  user-select:text!important;
}
.vault-icon-btn.is-active{
  border-color:#87c8c3!important;
  background:#e8f7f5!important;
  color:#087f7a!important;
}
.vault-icon-btn:disabled{
  opacity:.55!important;
  cursor:wait!important;
}
.vault-page-head p{
  max-width:900px!important;
}


/* V66.3 — duplicate task protection / admin delete */
.my-task-card{position:relative!important}
.task-card-delete-form{position:absolute!important;top:8px!important;right:8px!important;z-index:5!important;margin:0!important;opacity:0!important;transform:translateY(-2px)!important;transition:opacity .15s ease,transform .15s ease!important}
.my-task-card:hover .task-card-delete-form,.task-card-delete-form:focus-within{opacity:1!important;transform:none!important}
.task-card-delete-btn{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;border:1px solid #efc9cd!important;border-radius:8px!important;background:#fffafb!important;color:#bd4952!important;cursor:pointer!important;box-shadow:0 2px 8px rgba(25,43,48,.06)!important}
.task-card-delete-btn:hover{background:#fff0f2!important;border-color:#e5aeb4!important;color:#a92f39!important}.task-card-delete-btn i{font-size:12px!important}.task-inline-notice{margin:0 0 10px!important}
.task-dup-head{align-items:flex-end!important}.task-dup-clean-all{min-height:40px!important;border-color:#e9b6bb!important;background:#fff4f5!important;color:#b7333e!important}.task-dup-clean-all:hover{background:#b7333e!important;border-color:#b7333e!important;color:#fff!important}
.task-dup-list{display:flex!important;flex-direction:column!important;gap:10px!important}.task-dup-card{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:13px 14px!important;border:1px solid #dce6e8!important;border-radius:11px!important;background:#fff!important}.task-dup-main{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;min-width:0!important}.task-dup-count{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:#fff0f2!important;color:#b7333e!important;font-size:17px!important;font-weight:850!important}.task-dup-main small,.task-dup-main strong,.task-dup-main span,.task-dup-main em{display:block!important}.task-dup-main small{color:#829197!important;font-size:10px!important}.task-dup-main strong{margin-top:2px!important;color:#243a41!important;font-size:13px!important}.task-dup-main span{margin-top:3px!important;color:#667980!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.task-dup-main em{margin-top:4px!important;color:#98a5aa!important;font-size:9px!important;font-style:normal!important}.task-dup-actions{display:flex!important;align-items:center!important;gap:7px!important;flex:0 0 auto!important}.task-dup-actions form{margin:0!important}.task-dup-delete{min-height:36px!important;border-color:#edc3c7!important;background:#fff8f8!important;color:#bd424c!important}.task-dup-delete:hover{background:#fff0f1!important;border-color:#e4abb1!important}.task-dup-empty{min-height:240px!important;display:grid!important;place-content:center!important;text-align:center!important;border:1px dashed #cbdadd!important;border-radius:12px!important;background:#fbfdfd!important;color:#7c8e94!important}.task-dup-empty i{margin-bottom:9px!important;color:#2d9f88!important;font-size:30px!important}.task-dup-empty strong{color:#30464d!important;font-size:14px!important}.task-dup-empty span{margin-top:4px!important;font-size:11px!important}
@media(max-width:850px){.task-card-delete-form{opacity:1!important;transform:none!important}.task-dup-head{align-items:flex-start!important}.task-dup-card{align-items:flex-start!important;flex-direction:column!important}.task-dup-actions{width:100%!important}.task-dup-actions>a,.task-dup-actions>form,.task-dup-actions button{flex:1 1 auto!important}.task-dup-actions button{width:100%!important}}


/* =========================================================
   V67.0 — task relations, checklist blocks, workflow columns
   ========================================================= */
.status-rework{background:#fff0e8!important;color:#b85a1e!important;border-color:#f3d0bc!important}
.status-root{background:#eaf7f5!important;color:#19786f!important;border-color:#c9e7e2!important}
.gantt-track>.gantt-bar.status-rework{background:#d77736!important}
.gantt-track>.gantt-bar.status-root{background:#2b9489!important}
.calendar-task.status-rework{border-left-color:#d77736!important}
.calendar-task.status-root{border-left-color:#2b9489!important}

.task-relation-picker{position:relative!important}
.relation-search-box{position:relative!important;display:flex!important;align-items:center!important}
.relation-search-box>i{position:absolute!important;left:11px!important;color:#8b9aa0!important;z-index:2!important;font-size:12px!important}
.relation-search-box .input{padding-left:34px!important;padding-right:38px!important}
.relation-clear{position:absolute!important;right:5px!important;width:29px!important;height:29px!important;display:grid!important;place-items:center!important;border:0!important;border-radius:7px!important;background:#eef3f4!important;color:#718188!important;cursor:pointer!important}
.relation-clear:hover{background:#e3eeee!important;color:#087f7a!important}
.relation-selected{display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;margin-top:7px!important;padding:8px 10px!important;border:1px solid #cfe4e2!important;border-radius:9px!important;background:#f2faf9!important}
.relation-selected>span{width:30px!important;height:30px!important;display:grid!important;place-items:center!important;border-radius:8px!important;background:#dff3f0!important;color:#087f7a!important}
.relation-selected strong{display:block!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.relation-selected small{display:block!important;margin-top:2px!important;color:#7a8c92!important;font-size:9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.relation-results{position:absolute!important;left:0!important;right:0!important;top:calc(100% - 18px)!important;z-index:80!important;max-height:300px!important;overflow:auto!important;padding:5px!important;border:1px solid #d9e4e6!important;border-radius:10px!important;background:#fff!important;box-shadow:0 16px 38px rgba(24,43,48,.15)!important}
.relation-result{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:9px 10px!important;border:0!important;border-radius:8px!important;background:#fff!important;text-align:left!important;cursor:pointer!important}
.relation-result:hover{background:#f0f8f7!important}
.relation-result span{min-width:0!important}
.relation-result strong{display:block!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.relation-result small{display:block!important;margin-top:2px!important;color:#829198!important;font-size:9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.relation-result em{flex:0 0 auto!important;padding:3px 6px!important;border-radius:999px!important;background:#edf6ff!important;color:#3e6eaa!important;font-size:8.5px!important;font-style:normal!important;font-weight:750!important}
.relation-result em.archived{background:#eef2f3!important;color:#74838a!important}
.relation-search-state{padding:13px!important;text-align:center!important;color:#7d8e94!important;font-size:10px!important}
.relation-search-state.error{color:#b7444d!important}

.section-hint{display:block!important;margin-top:3px!important;color:#85949a!important;font-size:9.5px!important;font-weight:500!important}
.checklist-groups-editor{display:flex!important;flex-direction:column!important;gap:11px!important;margin-top:10px!important}
.checklist-group-editor{border:1px solid #dce6e8!important;border-radius:11px!important;background:#fbfdfd!important;overflow:hidden!important}
.checklist-group-editor-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:9px 10px!important;border-bottom:1px solid #e7edef!important;background:#f5f9f9!important}
.checklist-group-title-wrap{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;align-items:center!important;gap:5px!important;min-width:0!important;flex:1!important}
.checklist-group-title-wrap>i{color:#138c85!important;text-align:center!important}
.checklist-group-title{height:34px!important;border-color:transparent!important;background:transparent!important;font-weight:800!important;padding:0 6px!important}
.checklist-group-title:focus{background:#fff!important;border-color:#9fd4d1!important}
.checklist-group-tools{display:flex!important;align-items:center!important;gap:5px!important;flex:0 0 auto!important}
.check-group-remove{width:34px!important;height:34px!important;color:#b75b62!important}
.check-builder-grouped{padding:8px 9px!important;display:flex!important;flex-direction:column!important;gap:6px!important}
.check-builder-grouped .check-builder-row{display:grid!important;grid-template-columns:22px minmax(0,1fr) minmax(150px,220px) 34px!important;gap:7px!important;align-items:center!important}
.check-builder-row.is-completed .input[name="checklist[]"]{text-decoration:line-through!important;color:#859399!important;background:#f7f9f9!important}
.check-builder-row.is-completed .check-dot{background:#20b8af!important;color:#fff!important}
.check-builder-row .check-dot{width:18px!important;height:18px!important;border-radius:5px!important;display:grid!important;place-items:center!important;border:1px solid #ccd9dc!important;color:#fff!important;font-size:9px!important}

.task-checklist-group{margin-top:11px!important;border:1px solid #e1e8ea!important;border-radius:10px!important;overflow:hidden!important}
.task-checklist-group-head{min-height:38px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:0 11px!important;background:#f7fafb!important;border-bottom:1px solid #e7edef!important}
.task-checklist-group-head strong{font-size:11px!important;color:#31474e!important}
.task-checklist-group-head span{min-width:24px!important;height:22px!important;display:grid!important;place-items:center!important;padding:0 6px!important;border-radius:999px!important;background:#e8f4f3!important;color:#167d77!important;font-size:9px!important;font-weight:800!important}
.task-checklist-group .check-item{margin:0!important;border-radius:0!important;border-left:0!important;border-right:0!important;border-top:0!important}
.task-checklist-group .check-item:last-child{border-bottom:0!important}
.task-checklist-group-empty{padding:12px!important;color:#91a0a5!important;font-size:10px!important}

@media(max-width:760px){
  .checklist-group-editor-head{align-items:flex-start!important;flex-direction:column!important}
  .checklist-group-tools{width:100%!important;justify-content:flex-end!important}
  .check-builder-grouped .check-builder-row{grid-template-columns:20px minmax(0,1fr) 34px!important}
  .check-builder-grouped .check-builder-row .select{grid-column:2/4!important}
  .relation-results{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:76px!important;max-height:45vh!important}
}
