:root{font-family:IRANSansNormal,Tahoma,sans-serif;color:#223047;background:#f5f7fb;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{width:244px;flex:none;background:#fff;border-left:1px solid #e8edf3;display:flex;flex-direction:column;padding:29px 18px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:0 14px;font-size:24px;font-weight:800;letter-spacing:-1px;color:#223047}.brand-icon{display:grid;place-items:center;width:39px;height:39px;background:#4879d8;color:#fff;border-radius:12px;font-size:25px}.brand-dot{color:#4c80dc}.brand small{display:block;font-size:10px;letter-spacing:0;color:#9aa7b8;font-weight:400;margin-top:-5px}.nav-label{font-size:11px;color:#a3adbb;margin:55px 14px 12px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 15px;border-radius:10px;color:#7c8b9d;margin:3px 0;font-size:13px}.nav-item span{font-size:19px}.nav-item.active{background:#edf3ff;color:#4378d3;font-weight:700}.sidebar-bottom{margin-top:auto;border-top:1px solid #eef1f5;padding:20px 12px 0;color:#63758b;font-size:12px}.sidebar-bottom small{display:block;margin:5px 17px 0;color:#a7b2bf;font-size:10px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#64b99f;margin-left:5px}.main-content{min-width:0;flex:1}.topbar{height:74px;background:#fff;border-bottom:1px solid #e8edf3;display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumbs{font-size:12px;color:#566780}.breadcrumbs span{color:#b7c1cd;margin:0 10px}.today-label{font-size:11px;color:#9aa8b8}.page-wrap{max-width:1500px;margin:auto;padding:38px 42px 80px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.2px;color:#4d82dc;margin-bottom:9px}.page-heading h1{font-size:27px;letter-spacing:-.7px;margin:0 0 7px;font-weight:800}.page-heading p,.section-title p{margin:0;color:#94a2b3;font-size:12px}.button{border:0;border-radius:9px;padding:11px 19px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;font-size:12px;font-weight:700;transition:.2s}.button:hover{transform:translateY(-1px)}.button:disabled,button:disabled{opacity:.55;cursor:not-allowed}.button.primary{background:#487cda;color:#fff;box-shadow:0 5px 14px #477ddd2b}.button.outline{background:#fff;color:#60738b;border:1px solid #e4eaf1}.button.subtle{background:#f2f5f9;color:#687a90}.summary-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:39px}.summary-card{height:100px;background:#fff;border:1px solid #e9edf3;border-radius:14px;display:flex;align-items:center;gap:16px;padding:20px 23px}.summary-icon{width:49px;height:49px;border-radius:13px;display:grid;place-items:center;font-size:24px}.summary-icon.blue{background:#edf3ff;color:#5684d9}.summary-icon.violet{background:#f3effe;color:#8d78cc}.summary-icon.green{background:#eaf7f1;color:#54ad85}.summary-card small{color:#95a2b2;display:block;font-size:11px}.summary-card strong{font-size:24px;line-height:1.4}.section-title{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px}.section-title h2{font-size:17px;margin:0 0 5px}.count-pill{background:#e9eef6;color:#697b92;border-radius:20px;padding:5px 12px;font-size:11px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-tile{background:#fff;border:1px solid #e8edf3;border-radius:14px;padding:22px;min-width:0;transition:.2s}.project-tile:hover{border-color:#b9cdf3;box-shadow:0 12px 35px #294c8110;transform:translateY(-2px)}.tile-top{display:flex;align-items:center;justify-content:space-between}.project-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#5986d7;background:#ecf3ff;font-size:23px}.type-badge{background:#eaf5f2;color:#53a38f;border-radius:6px;padding:4px 9px;font-size:10px}.type-badge.client{background:#f3effe;color:#9078ca}.project-tile h3{font-size:16px;margin:18px 0 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile-meta{display:flex;gap:16px;flex-wrap:wrap;color:#9aa7b7;font-size:10px;margin-bottom:23px}.progress-label{display:flex;justify-content:space-between;font-size:11px;color:#8797aa;margin-bottom:8px}.progress-label b{color:#457bd8;font-size:13px}.progress-track{height:6px;border-radius:8px;background:#edf1f7;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:inherit;background:#5587df}.tile-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0f2f5;margin-top:22px;padding-top:15px;color:#9ba8b6;font-size:10px}.tile-arrow{font-size:18px;color:#5383dc}.empty-state{background:#fff;border:1px dashed #dbe4ef;border-radius:16px;text-align:center;padding:70px 20px}.empty-state>span{font-size:36px;color:#7297d8}.empty-state h2{font-size:18px}.empty-state p{color:#97a5b4}.empty-state .button{margin-top:13px}.back-link{display:inline-block;color:#8899ac;font-size:11px;margin-bottom:17px}.heading-type{color:#8493a7;background:#e9eef5;border-radius:5px;padding:3px 8px;margin-right:8px}.board-heading{margin-bottom:24px}.project-strip{display:grid;grid-template-columns:1.5fr 1fr 1fr .7fr;background:#fff;border:1px solid #e8edf3;border-radius:13px;padding:18px 0;margin-bottom:38px}.project-strip>div{padding:0 25px;border-left:1px solid #edf0f5}.project-strip>div:last-child{border:0}.strip-label{display:block;color:#99a6b5;font-size:10px;margin-bottom:8px}.project-strip strong{font-size:13px}.project-strip .progress-track{margin-top:10px;max-width:230px}.board-title{margin-bottom:19px}.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.work-card{background:#fff;border:1px solid #e7ecf3;border-top:3px solid var(--card-color);border-radius:12px;min-width:0;box-shadow:0 3px 15px #35476208}.work-card.dragging,.task.dragging{opacity:.45}.card-head{display:flex;align-items:center;gap:9px;padding:18px 18px 14px;cursor:grab;user-select:none}.card-head:active,.task:active{cursor:grabbing}.drag-handle,.task-grip{color:#bbc5d0;font-size:17px;line-height:1;cursor:grab}.card-symbol{width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,var(--card-color) 14%,white);color:var(--card-color);display:grid;place-items:center;font-size:17px}.card-head h3{font-size:13px;margin:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-count,.done-count{font-size:10px;border-radius:6px;background:#f1f4f8;color:#8a9aab;padding:3px 7px}.task-list{padding:0 14px;min-height:4px}.task{display:flex;align-items:center;gap:7px;background:#f8fafd;border:1px solid #eef1f5;border-radius:8px;margin-bottom:7px;padding:10px 9px;min-width:0}.task label{display:flex;align-items:flex-start;gap:9px;flex:1;min-width:0;cursor:pointer;font-size:11px;line-height:1.8;overflow-wrap:anywhere}.task label span{min-width:0}.task input{appearance:none;width:15px;height:15px;flex:none;border:1.5px solid #b7c5d6;border-radius:4px;background:#fff;margin:2px 0 0;cursor:pointer}.task input:checked{background:#5d91dc;border-color:#5d91dc}.task input:checked:after{content:'✓';display:block;color:#fff;font-size:11px;line-height:13px;text-align:center}.reopened-badge{flex:none;background:#fff1df;color:#bb8440;border-radius:5px;padding:2px 5px;font-size:9px}.add-task-form{display:flex;gap:4px;margin:9px 14px 15px;background:#f6f8fb;border:1px dashed #dfe7f0;border-radius:8px;padding:4px}.add-task-form:focus-within{border-color:#8aace9;background:#fff}.add-task-form input{flex:1;min-width:0;border:0;background:transparent;outline:0;padding:6px 8px;font-size:11px}.add-task-form input::placeholder{color:#a3b0bf}.add-task-form button{border:0;background:#e7effe;color:#5282d8;width:28px;height:28px;border-radius:6px;font-size:19px;line-height:1}.done-section{border-top:1px solid #f0f2f6}.done-section summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;padding:12px 17px;color:#91a0b0;font-size:11px}.done-section summary::-webkit-details-marker{display:none}.chevron{margin-right:auto;font-size:18px;transition:.2s}.done-section[open] .chevron{transform:rotate(180deg)}.done-list{padding:0 14px 9px}.done-task{opacity:.7}.done-task label span{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:#8494a8}.reopen-button{border:0;background:#e9f0fa;color:#527fba;border-radius:6px;width:25px;height:25px;flex:none;font-size:17px;line-height:1}.reopen-button:hover{background:#dce9fa}.modal{border:0;border-radius:15px;box-shadow:0 25px 80px #1d345840;padding:0;width:min(540px,calc(100% - 30px));color:#25334a}.modal::backdrop{background:#1d2c46a8}.modal-body{padding:27px}.modal-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:22px}.modal-header h2{font-size:19px;margin:0}.icon-button{border:0;background:#f3f5f8;border-radius:7px;color:#8a98a9;width:29px;height:29px;font-size:22px;line-height:1}.modal label{display:block;color:#63748a;font-size:11px;font-weight:700;margin-bottom:17px}.modal label small{font-weight:400;color:#aab4c0}.modal input,.modal select{display:block;width:100%;height:40px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;color:#25334a;padding:8px 11px;margin-top:8px;outline:0;direction:rtl}.modal input:focus,.modal select:focus{border-color:#6b95e1;box-shadow:0 0 0 3px #e9f0ff}.modal input[type=date]{direction:ltr;text-align:right}.modal input[type=color]{width:70px;padding:4px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.modal-actions{border-top:1px solid #eef1f5;padding-top:19px;display:flex;justify-content:flex-end;gap:9px}.toast{position:fixed;bottom:25px;left:25px;background:#2b4667;color:#fff;padding:11px 18px;border-radius:9px;box-shadow:0 10px 35px #1e36513d;opacity:0;transform:translateY(15px);transition:.2s;pointer-events:none;font-size:12px;z-index:20}.toast.visible{opacity:1;transform:translateY(0)}.toast.error{background:#b55458}@media(max-width:1100px){.project-grid,.board{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{width:205px}.page-wrap{padding:30px}.topbar{padding:0 30px}}@media(max-width:700px){.app-shell{display:block}.sidebar{width:auto;height:auto;position:static;padding:13px 18px;border-left:0;border-bottom:1px solid #e8edf3;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.brand{font-size:19px;padding:0}.brand-icon{width:32px;height:32px;font-size:20px}.sidebar nav{display:flex}.sidebar .nav-label,.sidebar-bottom{display:none}.nav-item{margin:0;padding:7px 9px;font-size:11px}.nav-item span{display:none}.topbar{height:53px;padding:0 18px}.today-label{display:none}.page-wrap{padding:25px 17px 60px}.page-heading{align-items:flex-start}.page-heading h1{font-size:22px}.page-heading p{line-height:1.8}.summary-row{gap:8px}.summary-card{padding:12px;height:75px;gap:7px}.summary-icon{width:30px;height:30px;font-size:16px;flex:none}.summary-card strong{font-size:17px}.summary-card small{font-size:9px}.project-grid,.board{grid-template-columns:1fr}.project-strip{grid-template-columns:1fr 1fr;gap:16px}.project-strip>div:nth-child(2){border:0}.project-strip>div{padding:0 15px}.button{padding:10px 12px}.form-row{grid-template-columns:1fr;gap:0}}@media(max-width:390px){.summary-icon{display:none}.page-heading{flex-wrap:wrap}}

.project-file-row { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; padding: .65rem 0; border-bottom: 1px solid #e8edf3; }
.project-file-row a { overflow-wrap: anywhere; }
.project-file-row small { color: #697586; }
.project-file-row form { margin-inline-start: auto; }

.project-file-upload { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 16px 0; padding: 16px; border: 1px solid #e8edf3; border-radius: 10px; background: #f8fafd; }
.project-file-field { flex: 1 1 260px; min-width: 0; }
.project-file-field label { display: block; margin-bottom: 7px; color: #63748a; font-size: 12px; font-weight: 700; }
.project-file-field input { display: block; width: 100%; min-width: 0; padding: 6px; border: 1px solid #dfe6ef; border-radius: 8px; background: #fff; color: #63748a; font-size: 12px; }
.project-file-field input:focus-visible { outline: 2px solid #6b95e1; outline-offset: 2px; }
.project-file-field input::file-selector-button { margin-inline-end: 10px; padding: 8px 12px; border: 0; border-radius: 6px; background: #edf3ff; color: #4378d3; font: inherit; font-weight: 700; cursor: pointer; }
.project-file-field input::file-selector-button:hover { background: #dfeaff; }
.project-file-field small { display: block; margin-top: 6px; color: #8797aa; font-size: 11px; }
@media (max-width: 700px) { .project-file-upload { align-items: stretch; } .project-file-upload > .button { width: 100%; } }

/* Notifications stay below the workspace header. */
.topbar { position: sticky; top: 0; z-index: 25; }
.toast { top: 76px; bottom: auto; z-index: 26; }
@media (max-width: 700px) { .toast { top: 61px; bottom: auto; } }

.project-files-scroll { font-size: 12px; line-height: 1.9; }
.project-files-usage { color: #63748a; }
.project-file-row { flex-wrap: nowrap; align-items: flex-start; }
.project-file-row > div { min-width: 0; }
.project-file-row small { display: block; margin-top: 4px; }
.project-file-upload { flex: none; margin: 0; padding: 16px 20px; border: 0; border-top: 1px solid #edf1f6; border-radius: 0; gap: 8px; }
.project-file-upload .project-file-field { flex: 1 1 160px; }
.project-file-upload > .button { align-self: flex-end; padding: 8px 10px; font-size: 11px; }
.project-file-upload > small { flex-basis: 100%; color: #8797aa; font-size: 10px; line-height: 1.8; }
@media (max-width: 700px) { .project-file-upload > .button { width: auto; } }

.sending-status { display: flex; align-items: center; gap: 7px; color: #63748a; font-size: 11px; margin: 8px 0 0; }
.sending-status[hidden], .file-upload-error[hidden] { display: none; }
.sending-spinner { width: 14px; height: 14px; border: 2px solid #dbe7f6; border-top-color: #4f80df; border-radius: 50%; animation: sending-spin .8s linear infinite; }
@keyframes sending-spin { to { transform: rotate(360deg); } }
.file-sending, .file-upload-error { flex-basis: 100%; }
.file-upload-error { color: #a25258; font-size: 11px; margin: 0; }
.project-file-row a i { margin-inline-end: 5px; color: #718096; font-size: 16px; vertical-align: middle; }
.project-file-row a .fa-file-pdf { color: #d94848; }
.project-file-row a .fa-file-word { color: #2867b2; }
.project-file-row a .fa-file-excel { color: #208451; }
.project-file-row a .fa-file-powerpoint { color: #d06436; }
.project-file-row a .fa-file-csv { color: #26916f; }
.project-file-row a .fa-file-lines { color: #6183aa; }
@media (prefers-reduced-motion: reduce) { .sending-spinner { animation-duration: 2s; } }

.project-file-delete { color: #c0585e; background: transparent; cursor: pointer; }
.project-file-delete:hover { background: #fff0f0; }
.project-file-delete:focus-visible { outline: 2px solid #c0585e; outline-offset: 2px; }

/* Task ownership stays compact within the existing task row. */
.task[hidden] { display: none !important; }
.task-assignees { position: relative; flex: 0 0 auto; }
.task-assignees summary { cursor: pointer; list-style: none; font-size: 11px; color: #667085; white-space: nowrap; }
.task-assignees summary::-webkit-details-marker { display: none; }
.task-mine { color: #3568bd; font-weight: 700; }
.task-assignees-menu { position: absolute; z-index: 20; inset-inline-end: 0; top: 100%; min-width: 180px; max-height: 260px; overflow: auto; padding: 12px; background: #fff; border: 1px solid #e4e7ec; border-radius: 10px; box-shadow: 0 8px 24px #10182824; }
.task-assignees-menu strong, .task-assignees-menu small, .task-assignees-form label { display: block; margin-bottom: 8px; }
.task-assignees-form label { white-space: nowrap; }
.task-filter { display: inline-flex; align-items: center; gap: 9px; padding: 8px 12px; border: 1px solid #e4eaf1; border-radius: 10px; background: #fff; color: #667890; font-size: 11px; white-space: nowrap; cursor: pointer; }
.task-filter input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.task-filter-switch { position: relative; width: 34px; height: 20px; flex: none; border-radius: 20px; background: #c5d0df; transition: background .2s; }
.task-filter-switch::after { content: ''; position: absolute; top: 3px; right: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: 0 1px 4px #1d345833; transition: transform .2s; }
.task-filter input:checked + .task-filter-switch { background: #487cda; }
.task-filter input:checked + .task-filter-switch::after { transform: translateX(-14px); }
.task-filter input:focus-visible + .task-filter-switch { outline: 3px solid #a9c7f8; outline-offset: 2px; }
@media (max-width: 700px) { .board-title { flex-wrap: wrap; gap: 12px; } }

.session-list { display: grid; gap: 16px; margin-top: 20px; }
.session-card { overflow-wrap: anywhere; }
.session-card .session-agent { direction: ltr; text-align: right; }
.session-card form { margin-top: 12px; }

.task { flex-direction: column; align-items: stretch; gap: 6px; }
.task-heading { display: flex; align-items: center; gap: 7px; min-width: 0; }
.task-actions { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 5px; min-width: 0; }
.task-progress { display: flex; align-items: center; gap: 8px; }
.task-progress .progress-track { flex: 1; height: 3px; }
.task-progress-value { color: #71849c; font-size: 10px; }
#task-progress-form textarea { display: block; width: 100%; margin-top: 8px; border: 1px solid #dfe6ef; border-radius: 8px; padding: 10px; font: inherit; resize: vertical; }
.task-dialog-title { color: #71849c; font-size: 12px; }
.task-history-list { max-height: 55vh; overflow-y: auto; }
.task-history-item { border-bottom: 1px solid #edf1f5; padding: 12px 0; overflow-wrap: anywhere; }
.task-history-item small { display: block; color: #8797aa; margin-top: 4px; }
.task-history-item p { white-space: pre-wrap; margin-bottom: 0; }
.task-weight-group { margin: 12px 0; border: 1px solid #e8edf3; border-radius: 10px; }
.task-weight-group summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px; color: #526780; font-size: 13px; font-weight: 700; cursor: pointer; list-style: none; }
.task-weight-group summary::-webkit-details-marker { display: none; }
.task-weight-group summary:focus-visible { outline: 2px solid #6b95e1; outline-offset: -2px; border-radius: 10px; }
.task-weight-group summary i { color: #8b9bb0; transition: transform .2s; }
.task-weight-group[open] summary i { transform: rotate(180deg); }
.task-weight-list { padding: 0 10px 10px; }
.task-weight-form { display: flex; align-items: end; gap: 12px; padding: 12px 14px; margin: 8px 0; border: 1px solid #e8edf3; border-radius: 10px; background: #f8fafd; }
.task-weight-name { flex: 1; min-width: 0; align-self: center; overflow-wrap: anywhere; color: #25334a; font-size: 12px; }
.task-weight-name small { display: inline-block; margin-right: 8px; color: #8493a7; font-size: 10px; }
.task-weight-form input { display: block; flex: 0 0 100px; width: 100px; height: 40px; margin: 0; padding: 8px 11px; border: 1px solid #dfe6ef; border-radius: 8px; background: #fff; color: #25334a; font: inherit; font-size: 13px; outline: none; }
.task-weight-form input:focus { border-color: #6b95e1; box-shadow: 0 0 0 3px #e9f0ff; }
.task-weight-form button { height: 40px; }
@media (max-width: 480px) { .task-weight-form { flex-wrap: wrap; } .task-weight-name { flex-basis: 100%; } .task-weight-form input { flex: 1; width: auto; min-width: 0; } }

.project-archive-notice { padding: 12px 16px; border: 1px solid #ecd6aa; border-radius: 9px; background: #fff9ed; color: #83652e; font-size: 12px; line-height: 1.9; }

/* Prolo brand */
.sidebar .brand-icon{display:block;flex:none;background:none;border-radius:12px}.sidebar .brand-text{line-height:1}.sidebar .prolo-logo{display:block;width:100px;height:auto}.sidebar .brand-text .prolo-logo{width:84px}.sidebar .brand small{margin-top:0}
