@font-face{font-family:"Vazir";src:url("./assets/Vazir-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Vazir";src:url("./assets/Vazir-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
:root{--bg:#F4F2FA;--surface:#FFFFFF;--ink:#25213F;--muted:#697386;--line:#DED9EA;--green:#155676;--green-soft:#EEE9FB;--purple:#7556D8;--teal:#08AAA4;--orange:#EF8242;--pink:#D55B8B;--blue:#2498C3;--shadow:0 20px 70px #25213f15;--font:"Vazir",Tahoma,sans-serif;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.8 var(--font)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #7556D8;outline-offset:3px}button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}.layout{max-width:1680px;margin:auto;display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--surface);border-left:1px solid var(--line);padding:36px 22px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;font-size:26px;font-weight:bold}.brand-mark{background:var(--green);color:#fff;width:46px;height:48px;border-radius:14px 14px 4px 14px;display:grid;place-items:center;font:700 27px Georgia,serif}.brand small{display:block;font:9px/1.3 Arial,sans-serif;color:var(--muted);letter-spacing:1.5px}.nav-caption{font-size:11px;color:var(--muted);margin:47px 12px 15px}.nav-item{width:100%;border:0;background:none;display:flex;align-items:center;gap:11px;padding:13px 12px;text-align:right;color:var(--muted);border-radius:9px;margin-bottom:8px;font-size:13px}.nav-item.active{background:var(--green-soft);color:var(--green);font-weight:bold}.nav-icon{font:22px/1 Arial;width:24px;text-align:center}.nav-count{margin-right:auto;background:#fff;border:1px solid var(--line);min-width:23px;border-radius:6px;font-size:11px;text-align:center}.sidebar-note{margin-top:auto;background:var(--bg);padding:16px 12px;border-radius:10px;font-size:11px}.sidebar-note p{color:var(--muted);font-size:10px;margin:6px 0 0}.status-dot{display:inline-block;width:6px;height:6px;background:#08AAA4;border-radius:50%;margin-left:5px}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:22px;margin-top:24px;font-size:11px}.profile small{display:block;color:var(--muted);font-size:10px}.avatar{display:grid;place-items:center;background:#EEE9FB;color:var(--green);border-radius:50%;width:36px;height:36px;font-size:16px}.profile div{min-width:0}.profile strong{display:block;overflow-wrap:anywhere}main{padding:0 46px 30px;min-width:0}.topbar{height:81px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}.topbar div{display:flex;gap:17px;align-items:center}.mode-badge{border:1px solid #c8d8cf;color:var(--green);padding:3px 9px;border-radius:5px;font-size:10px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:38px 0 26px}.eyebrow{font-size:10px;color:var(--green);letter-spacing:.2px}h1{font-size:29px;margin:5px 0 7px;font-weight:700;letter-spacing:-1px}.page-heading p{color:var(--muted);margin:0;font-size:12px}.heading-actions{display:flex;gap:8px}.button{border-radius:8px;padding:10px 17px;min-height:43px;border:1px solid transparent;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:6px}.primary{background:var(--green);color:#fff}.primary:hover{background:#10425b}.secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.danger{background:#fff4ef;color:#ac4933;border-color:#efcfc4}.overview{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:27px}.stat{position:relative;text-align:right;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:18px 20px}.stat span{font-size:11px;color:var(--muted);display:block}.stat strong{font-size:29px;line-height:1.6;display:block;font-weight:500;letter-spacing:-1px}.stat small{font-size:10px;color:var(--muted)}.stat[data-stat=late] strong{color:var(--orange)}.stat[data-stat=review]{border-top:3px solid #08AAA4;padding-top:16px}.work-panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel-tools{display:flex;gap:13px;padding:20px;align-items:center;border-bottom:1px solid var(--line)}.search{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.search span{font-size:27px;color:var(--muted);line-height:1}.search input{border:0;width:100%;background:none;font-size:12px;min-width:0}.panel-tools select{border:1px solid var(--line);border-radius:7px;background:var(--bg);font-size:11px;color:var(--ink);padding:7px 10px;max-width:170px}.result-count{color:var(--muted);font-size:10px;white-space:nowrap}.task-row{border:0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:15px;text-align:right;width:100%;padding:22px;background:var(--surface);color:var(--ink)}.task-row:last-child{border-bottom:0}.task-row:hover{background:#F8F6FD}.task-icon{display:grid;place-items:center;width:39px;height:42px;border:1px solid var(--line);border-radius:9px;font-size:21px;color:#155676;flex-shrink:0}.task-main{flex:1;min-width:0}.task-main h2{font-size:13px;line-height:1.8;margin:0 0 5px;font-weight:600;overflow-wrap:anywhere}.task-meta{font-size:10px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}.task-meta span+span:before{content:"·";margin-left:12px}.task-end{text-align:left;display:flex;gap:14px;align-items:center}.task-end small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.task-end small.late{color:var(--orange)}.chevron{font:22px/1 Arial;color:#a7b7b2}.badge{font-size:10px;display:inline-flex;padding:3px 10px;border-radius:5px;background:#eef3f7;color:#507082;white-space:nowrap}.badge.approved{background:#E4F7F5;color:#087b78}.badge.in_progress,.badge.accepted{background:#E4F7F5;color:var(--green)}.badge.pending_review{background:#FFF1E7;color:#8c4922}.badge.revision{background:#FBEAF1;color:#A64269}.badge.waiting{background:#F4F2FA;color:#697386}.empty{text-align:center;padding:66px 24px;color:var(--muted)}.empty h2{font-size:16px;color:var(--ink);margin:12px 0 5px}.empty p{font-size:12px;margin:0}.empty-symbol{font-size:38px;color:#a4bab0}.empty .button{margin-top:17px}.project-row .task-icon{font-size:25px}.progress{margin-top:10px;height:4px;background:var(--line);max-width:240px;border-radius:5px;overflow:hidden}.progress span{background:#08AAA4;display:block;height:100%}.demo-note{font-size:10px;background:#f4eedf;color:#8a743c;border:1px solid #e8dec8;border-radius:7px;padding:9px 13px;margin-top:18px}footer{color:#a1aaa5;text-align:center;font-size:10px;margin-top:29px}footer span{padding:0 8px}.mobile-nav{display:none}dialog{border:0;padding:0;background:var(--surface);color:var(--ink);box-shadow:var(--shadow);border-radius:15px;width:510px;max-width:calc(100vw - 24px);max-height:90dvh}dialog::backdrop{background:#25213f55;backdrop-filter:blur(3px)}.drawer-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 24px;font-size:11px;color:var(--muted);position:sticky;top:0;background:var(--surface);z-index:1}.icon-button{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font:25px Arial;color:var(--muted)}#drawer-content{padding:25px}#drawer-content > h2{font-size:22px;line-height:1.7;margin:10px 0 22px;overflow-wrap:anywhere}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.detail-grid dt{font-size:10px;color:var(--muted);margin-bottom:5px}.detail-grid dd{font-size:12px;margin:0;overflow-wrap:anywhere}.section-label{font-size:12px;font-weight:600;margin:23px 0 9px}.result-text{font-size:12px;background:var(--bg);padding:13px;border-radius:7px;white-space:pre-wrap;overflow-wrap:anywhere}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:23px}.actions .button{flex:1}.hint{font-size:11px;color:var(--muted)}.timeline{list-style:none;margin:13px 0 0;padding:0;border-right:1px solid var(--line)}.timeline li{position:relative;margin-right:13px;padding:0 0 17px;font-size:11px}.timeline li:before{content:"";width:7px;height:7px;border-radius:50%;background:#8ca69a;position:absolute;right:-17px;top:8px}.timeline small{display:block;font-size:10px;color:var(--muted)}.timeline p{font-size:11px;margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}form label{font-size:11px;color:var(--muted);display:block;margin:17px 0 5px}form input,form select,form textarea,.note-input{width:100%;border:1px solid #d8e1da;border-radius:7px;padding:11px;background:var(--surface);color:var(--ink);font-size:13px}textarea{resize:vertical;min-height:105px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}form .button{margin-top:22px;width:100%}.preview-row{padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.preview-row small{display:block;color:var(--muted);font-size:10px}.preview-row strong{display:block}.form-error{font-size:12px;color:#a44332;background:#fff1ed;padding:10px 12px;border-radius:6px;margin-top:12px}#toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);background:#25213F;color:#fff;border-radius:9px;padding:12px 23px;font-size:12px;max-width:90vw;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:5}#toast.show{opacity:1;transform:translate(-50%,0)}.load-more{margin:18px;display:flex;justify-content:center}.form-intro{font-size:12px;color:var(--muted)}
@media(min-width:1300px){main{padding-left:65px;padding-right:65px}.page-heading{padding-top:48px}.task-row{padding:24px}}
@media(max-width:1000px){.layout{grid-template-columns:205px 1fr}.sidebar{padding:28px 15px}main{padding:0 24px 30px}.result-count{display:none}.heading-actions .secondary span{display:none}.page-heading{gap:12px}h1{font-size:26px}.task-end{gap:7px}.stat{padding:14px}.task-row{padding:19px 16px;gap:11px}}
@media(max-width:700px){.layout{display:block}.sidebar{display:none}main{padding:0 17px 100px}.topbar{height:64px;font-size:9px}.topbar div{gap:9px}.mode-badge{font-size:9px;padding:2px 7px}.topbar time{display:none}.page-heading{padding:26px 0 23px;align-items:flex-end}.eyebrow{font-size:9px}h1{font-size:27px}.page-heading p{font-size:10px;max-width:190px}.heading-actions{gap:6px}.heading-actions .button{min-height:40px;padding:8px 11px;font-size:11px}.heading-actions .secondary{padding:7px 10px}.overview{gap:7px;margin-bottom:18px}.stat{padding:12px 10px;border-radius:8px}.stat span{font-size:9px}.stat strong{font-size:25px}.stat small{font-size:8px;line-height:1.6;display:block}.stat[data-stat=review]{padding-top:10px}.panel-tools{padding:13px 12px;gap:5px}.search input{font-size:10px}.search span{font-size:23px}.panel-tools select{font-size:9px;max-width:121px;padding:6px}.work-panel{border-radius:9px}.task-row{padding:17px 12px;gap:9px;align-items:flex-start}.task-icon{width:31px;height:34px;font-size:18px}.task-main h2{font-size:13px;margin-bottom:7px}.task-meta{font-size:9px;gap:6px}.task-meta span+span:before{margin-left:6px}.task-end{display:block;max-width:120px;flex-shrink:0}.badge{font-size:8px;padding:2px 6px}.task-end small{font-size:8px}.chevron{display:none}.mobile-nav{position:fixed;bottom:0;right:0;left:0;display:flex;justify-content:space-around;background:var(--surface);border-top:1px solid var(--line);padding:9px 8px calc(8px + env(safe-area-inset-bottom));z-index:2}.mobile-nav button{border:0;background:none;color:var(--muted);font:22px Arial;min-width:51px;padding:3px 5px;min-height:48px}.mobile-nav button span{display:block;font:9px/1.7 var(--font);margin-top:4px}.mobile-nav button.active{color:var(--green)}dialog{margin:0;position:fixed;inset:0;max-width:none;max-height:none;height:100dvh;width:100vw;border-radius:0}.drawer-header{padding:calc(13px + env(safe-area-inset-top)) 20px 13px}#drawer-content{padding:21px 20px 40px}#drawer-content > h2{font-size:21px}#toast{bottom:90px;width:max-content;max-width:90vw}.empty{padding:50px 20px}.demo-note{font-size:9px}footer{font-size:9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

progress.progress{appearance:none;border:0;width:100%;height:4px}progress.progress::-webkit-progress-bar{background:var(--line);border-radius:5px}progress.progress::-webkit-progress-value{background:#08AAA4;border-radius:5px}progress.progress::-moz-progress-bar{background:#08AAA4;border-radius:5px}

/* TAPCO approved report palette, adapted to application controls. */
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.tapco-logo{display:block;width:180px;height:auto;max-width:100%}.brand-caption{font-size:12px;font-weight:400;color:var(--muted);padding-right:3px}.topbar-brand{display:flex;align-items:center;gap:10px}.mobile-logo{display:none}.nav-item.active{color:var(--purple);background:#EEE9FB}.stat{border-top:3px solid var(--purple);padding-top:16px}.stat strong{color:var(--purple)}.stat[data-stat=late]{border-top-color:var(--orange)}.stat[data-stat=late] strong{color:#AA5425}.stat[data-stat=review]{border-top-color:var(--teal)}.stat[data-stat=review] strong{color:#087B78}.avatar{color:var(--purple)}.badge.assigned{background:#EEE9FB;color:#6040B5}.badge.in_progress,.badge.accepted,.badge.approved{background:#E4F7F5;color:#087B78}.badge.pending_review{background:#FFF1E7;color:#8C4922}.badge.revision{background:#FBEAF1;color:#A64269}.badge.waiting{background:#F4F2FA;color:#697386}.profile{font-size:12px}.nav-caption{margin-top:34px}.nav-item{font-size:14px}.task-main h2{font-size:14px}.button{font-size:13px}.demo-note{background:#FFF1E7;color:#8C4922;border-color:#F3D5BF}.mobile-nav button.active{color:var(--purple)}.task-icon{background:#F6F3FD;border-color:#DED9EA;color:var(--brand,var(--green))}.timeline li:before{background:var(--purple)}.mode-badge{border-color:#DED9EA;color:var(--purple);background:#EEE9FB}
@media(max-width:1000px){.tapco-logo{width:160px}}
@media(max-width:700px){.mobile-logo{display:block;width:85px;height:auto;background:#FFF;padding:3px;border-radius:4px}.topbar-brand>span{font-size:9px}.topbar{height:72px}.topbar-brand{gap:8px}.stat{padding-top:10px}.task-main h2{font-size:13px}.panel-tools{gap:8px}.page-heading .button{min-height:44px}.mobile-nav button span{font-size:10px}.mobile-nav button{min-height:48px}.demo-note{font-size:10px}}
/* Personnel, reporting and collaboration. */
[hidden]{display:none!important}.sidebar{padding:24px 20px}.nav-item{padding:9px 12px;margin-bottom:4px}.nav-caption{margin-top:24px;margin-bottom:10px}.sidebar-note{padding:12px;font-size:10px}.profile{margin-top:16px;padding-top:16px}.performance{margin:-8px 0 22px;padding:15px 22px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.performance-chart{display:flex;gap:24px;align-items:center}.performance-chart svg{width:110px;height:110px;flex-shrink:0}.chart-number{font:700 20px Vazir;fill:var(--ink)}.chart-label{font:10px Vazir;fill:var(--muted)}.performance-chart strong{font-size:14px}.performance-chart p{color:var(--muted);font-size:12px;margin:7px 0}.performance-chart small{font-size:11px;color:var(--green)}.section-content{padding:24px}.section-content h2{font-size:19px}.section-content h3{font-size:14px}.section-content>label{font-size:12px;color:var(--muted);display:block;margin-bottom:7px}.control{font:13px Vazir;width:100%;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);padding:10px;max-width:600px}.settings-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.staff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.staff-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:18px;text-align:right;display:flex;align-items:flex-start;flex-direction:column;gap:6px;min-width:0;color:var(--ink)}.staff-card:hover{border-color:var(--purple);background:#FAF8FF}.staff-card strong{font-size:14px}.staff-card>span:not(.badge){font-size:12px;overflow-wrap:anywhere}.staff-card small{font-size:10px;color:var(--muted)}.staff-card .identity-note{color:#A64269}.staff-card .badge{margin-top:5px}.check-label{display:flex;align-items:flex-start;gap:8px;font-size:12px!important;line-height:1.8;margin:10px 0!important;color:var(--ink)!important}.check-label input{width:17px;height:17px;min-height:17px;accent-color:var(--purple);flex-shrink:0;margin-top:3px}.role-options{max-height:260px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:7px}.role-options fieldset{border:0;padding:5px 7px;border-bottom:1px solid var(--line)}.role-options legend{color:var(--green);font-size:12px;font-weight:bold}details{margin-top:16px;border:1px solid var(--line);border-radius:8px;padding:10px}summary{cursor:pointer;font-size:12px;color:var(--green);min-height:28px}.notification-summary{padding:15px;background:#EEE9FB;border-radius:8px;font-size:12px}.notification-summary p{font-size:11px;margin:6px 0 0}.table-scroll{overflow:auto;margin:20px 0}.data-table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.data-table th{text-align:right;color:var(--muted);background:#F4F2FA;font-weight:400}.data-table td,.data-table th{padding:12px;border-bottom:1px solid var(--line)}.data-table td:first-child{font-weight:700}.week-bars{display:flex;gap:18px;margin:15px 0}.week-bars>div{flex:1}.week-bars progress{appearance:none;width:100%;height:16px;border:0;display:block}.week-bars progress::-webkit-progress-bar{background:#EEE9FB;border-radius:4px}.week-bars progress::-webkit-progress-value{background:#7556D8;border-radius:4px}.week-bars span{font-size:10px;color:var(--muted)}.message-history{max-height:360px;overflow:auto;background:#F8F6FD;padding:15px;margin-top:18px;border-radius:9px}.message-bubble{padding:13px;margin:10px 0;border:1px solid var(--line);background:#fff;border-radius:9px;max-width:90%}.message-bubble.mine{margin-right:auto;background:#EEE9FB}.message-bubble strong{font-size:11px;color:var(--green)}.message-bubble p{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.message-bubble small{font-size:10px;color:var(--muted)}.message-bubble .button{font-size:11px;padding:6px 10px}.quick-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.task-check{accent-color:var(--teal)}#invite-result{direction:ltr;text-align:left;overflow-wrap:anywhere}#task-discussion{font-size:12px}#task-discussion p{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-height:800px) and (min-width:701px){.sidebar-note{display:none}}
@media(max-width:700px){.performance{padding:13px;margin-top:0;margin-bottom:17px}.performance-chart{gap:12px}.performance-chart svg{width:85px;height:85px}.performance-chart strong{font-size:13px}.performance-chart p{font-size:10px;line-height:1.9}.performance-chart small{font-size:10px}.section-content{padding:15px}.staff-grid{grid-template-columns:1fr}.staff-card{padding:15px}.settings-tabs .button{font-size:11px;padding:8px 10px}.message-bubble{max-width:97%}.data-table{font-size:11px}.data-table td,.data-table th{padding:10px}.week-bars{gap:10px}.week-bars span{font-size:9px}}

.report-unit{display:block;font-size:10px;color:var(--muted);font-weight:400}.badge.blocked{background:#FBEAF1;color:#A64269}

.priority-badge{margin-right:9px;background:#FBEAF1;color:#A64269;font-weight:400;vertical-align:middle}

@media(max-width:700px){.panel-tools{flex-wrap:wrap}.search{flex-basis:100%;padding-bottom:5px}.panel-tools select{flex:1;max-width:none}.task-meta{gap:5px}.task-meta span+span:before{margin-left:5px}}

.login-gate{position:fixed;inset:0;z-index:200;background:#F4F2FA;display:grid;place-items:center;overflow:auto;padding:24px}.login-card{background:white;border:1px solid #DED9EA;border-radius:24px;box-shadow:0 12px 50px #25213f12;padding:32px;width:min(420px,100%)}.login-card img{width:160px;display:block;margin:0 auto 24px}.login-card h1{font-size:22px;color:#155676}.login-card input,.login-card select{width:100%;box-sizing:border-box;margin:8px 0 18px;padding:12px;border:1px solid #DED9EA;border-radius:12px;font:inherit}.login-card button{width:100%;margin-top:12px}.profile-avatar{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid #E4F7F5}.section-content form input:not([type=checkbox]),.section-content form select,.section-content form textarea{max-width:100%;box-sizing:border-box}.settings-tabs label{display:flex;gap:10px;align-items:center}.settings-tabs select{max-width:260px}.form-row>input,.form-row>select{min-width:0;flex:1}

/* TAPCO chat: right-side threads, fixed conversation composer, independent scrolling. */
.chat-shell{display:grid;grid-template-columns:310px minmax(0,1fr);height:clamp(480px,69dvh,820px);min-height:480px;overflow:hidden;direction:rtl}.chat-sidebar{border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0;background:#fff}.chat-sidebar-title{display:flex;justify-content:space-between;align-items:center;padding:18px 18px 10px}.chat-sidebar-title h2{margin:0;font-size:17px}.chat-icon-button{width:38px;height:38px;border:0;border-radius:12px;background:transparent;color:#155676;font:22px Vazir;display:grid;place-items:center;flex-shrink:0;cursor:pointer}.chat-icon-button:hover{background:#EEE9FB}.chat-sidebar>input{margin:8px 16px;width:calc(100% - 32px);padding:11px 14px;border:1px solid #DED9EA;border-radius:12px;background:#F4F2FA;font:12px Vazir}.chat-filters{display:flex;gap:5px;padding:6px 16px 14px;border-bottom:1px solid #DED9EA}.chat-filters button{border:0;background:transparent;border-radius:8px;padding:7px 9px;font:11px Vazir;color:#697386;cursor:pointer}.chat-filters button.active{background:#EEE9FB;color:#7556D8}.chat-threads{overflow-y:auto;flex:1;min-height:0}.chat-thread{width:100%;border:0;background:#fff;padding:15px 14px;display:flex;gap:11px;text-align:right;align-items:center;cursor:pointer;color:#25213F}.chat-thread:hover{background:#F8F6FD}.chat-thread.selected{background:#EEE9FB;box-shadow:inset -3px 0 #7556D8}.chat-avatar{width:43px;height:43px;border-radius:15px;object-fit:cover;flex-shrink:0;display:grid;place-items:center;background:#E4F7F5;color:#155676;font-size:19px}.group-avatar{background:#EEE9FB;color:#7556D8}.thread-copy{min-width:0;flex:1}.thread-name{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:bold}.thread-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;margin-top:6px;color:#697386}.pin-mark{color:#7556D8;font-size:16px}.thread-side{display:flex;flex-direction:column;align-items:end;gap:7px;flex-shrink:0}.thread-side time{font-size:9px;color:#697386}.unread-count{background:#08AAA4;color:#fff;border-radius:30px;font-size:10px;min-width:21px;height:21px;display:grid;place-items:center;padding:0 4px}.chat-conversation{display:flex;flex-direction:column;min-height:0;min-width:0;background:#F4F2FA}.chat-header{display:flex;align-items:center;gap:12px;border-bottom:1px solid #DED9EA;padding:15px 20px;background:#fff;min-height:76px}.chat-header h2{font-size:15px;margin:0}.chat-header p{font-size:10px;color:#697386;margin:5px 0 0}.chat-connection{margin-right:auto;font-size:9px;color:#697386}.chat-history{padding:18px 26px;flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:9px;background-image:radial-gradient(#DED9EA80 .7px,transparent .7px);background-size:20px 20px;scrollbar-width:thin}.chat-day{text-align:center;margin:8px 0 12px;font-size:10px;flex-shrink:0}.chat-day span{background:#DED9EA85;border-radius:20px;padding:5px 12px;color:#697386}.chat-bubble{border-radius:16px;padding:12px 15px;max-width:82%;min-width:115px;box-shadow:0 2px 6px #25213F08;flex-shrink:0}.chat-bubble.incoming{align-self:flex-end;background:white;border-bottom-left-radius:5px}.chat-bubble.outgoing{align-self:flex-start;background:#E4F7F5;border-bottom-right-radius:5px}.chat-bubble p{margin:4px 0 8px;font-size:13px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;unicode-bidi:plaintext}.bubble-sender{font-size:10px;color:#7556D8}.bubble-time{display:block;text-align:left;font-size:9px;color:#697386}.chat-download{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid #DED9EA;border-radius:11px;max-width:100%;background:#fff8;font:12px Vazir;text-align:right;color:#155676;cursor:pointer;overflow-wrap:anywhere}.chat-download small{display:block;font-size:9px;color:#697386}.chat-compose{padding:12px 18px 8px;border-top:1px solid #DED9EA;background:#fff;flex-shrink:0}.chat-compose form{display:flex;gap:10px;align-items:end}.chat-compose textarea{flex:1;resize:none;min-height:43px;max-height:120px;border:1px solid #DED9EA;background:#F8F6FD;border-radius:14px;padding:11px 14px;font:13px Vazir;color:#25213F;line-height:1.7;box-sizing:border-box;margin:0;min-width:0}.chat-send{width:44px;height:44px;flex-shrink:0;border:0;border-radius:14px;background:#155676;color:white;font-size:18px;cursor:pointer}.chat-send:disabled{opacity:.5}.compose-hint{display:flex;justify-content:space-between;gap:12px;font-size:9px;color:#697386;padding:8px 2px 0}.chat-attachment{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#155676;background:#E4F7F5;padding:8px 12px;border-radius:10px;margin-bottom:9px;overflow-wrap:anywhere}.chat-attachment button{background:transparent;border:0;font:20px Vazir;color:#697386;cursor:pointer}.chat-start{text-align:center;margin:auto;color:#697386;padding:30px}.chat-start>span{font-size:40px;color:#7556D8}.chat-start h3{font-size:16px;color:#25213F}.chat-start p{font-size:12px;line-height:2}.chat-empty{padding:20px;font-size:12px;color:#697386;text-align:center}.older-chat{align-self:center;padding:7px 14px;background:white;border:1px solid #DED9EA;border-radius:20px;font:10px Vazir;color:#155676;cursor:pointer}.chat-mobile-back{display:none}.chat-page .page-heading{margin-bottom:16px}.chat-page .work-panel{overflow:hidden}.chat-page .demo-note{font-size:10px;margin-top:14px}
.home-board{margin-top:24px;background:#fff;border:1px solid #DED9EA;border-radius:16px;padding:24px}.board-heading{display:flex;gap:15px;align-items:center;justify-content:space-between;margin-bottom:20px}.board-heading h2{font-size:18px;margin:7px 0 0}.board-heading .eyebrow{font-size:10px;color:#697386}.announcement-grid,.daily-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.announcement-card{border:1px solid #DED9EA;border-radius:12px;padding:18px;background:#fff}.announcement-card.unread{border-right:4px solid #EF8242;background:#FFF9F4}.announcement-card h3{font-size:15px;margin:12px 0}.announcement-card p{font-size:12px;line-height:2;white-space:pre-wrap;overflow-wrap:anywhere}.announcement-meta{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#697386}.announcement-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid #DED9EA;font-size:10px;color:#697386}.announcement-read{border:0;border-radius:8px;padding:7px 11px;font:10px Vazir;background:#E4F7F5;color:#155676;cursor:pointer}.board-empty{font-size:12px;line-height:2;color:#697386;background:#F8F6FD;border-radius:10px;padding:16px}.announcement-grid>.board-empty{grid-column:1/-1}.daily-card{padding:19px;background:#F8F6FD;border:1px solid #DED9EA;border-radius:12px;min-width:0}.learning-card{background:#EEE9FB}.team-card{background:#E4F7F5}.daily-icon{font-size:25px;color:#7556D8}.daily-card h3,.daily-card h4{font-size:14px;margin:10px 0}.daily-card p{font-size:12px;line-height:2;white-space:pre-wrap;overflow-wrap:anywhere}.daily-card small,.daily-card time{font-size:10px;color:#697386}.daily-card footer{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-top:16px;font-size:11px}.daily-card a{color:#155676}.daily-section{margin-top:24px}.daily-section>h3{font-size:14px}.market-unit{font-size:11px;color:#08AAA4}.board-note{font-size:10px;color:#697386;line-height:2;margin-top:20px}
@media(max-width:1000px) and (min-width:701px){.chat-shell{grid-template-columns:260px minmax(0,1fr)}.chat-header{padding:12px}.chat-connection{display:none}.chat-bubble{max-width:94%}.chat-history{padding:15px}.chat-thread{padding:12px 9px;gap:8px}}
@media(max-width:700px){.chat-page main{padding-bottom:80px}.chat-page .page-heading{display:none}.chat-page .topbar{margin-bottom:12px}.chat-page .work-panel{border-radius:14px}.chat-shell{display:block;height:calc(100dvh - 164px);min-height:240px}.chat-sidebar{height:100%;border-left:0}.chat-conversation{height:100%;display:none}.chat-shell.conversation-open .chat-sidebar{display:none}.chat-shell.conversation-open .chat-conversation{display:flex}.chat-mobile-back{display:grid}.chat-header{padding:10px 12px;min-height:65px;gap:9px}.chat-header h2{font-size:13px}.chat-header .chat-avatar{width:36px;height:36px;border-radius:12px}.chat-connection{display:none}.chat-history{padding:12px}.chat-bubble{max-width:92%;padding:10px 12px}.chat-bubble p{font-size:12px}.chat-compose{padding:10px 10px 5px}.chat-compose form{gap:7px}.chat-compose textarea{font-size:16px;padding:9px 10px}.compose-hint>span:first-child{display:none}.chat-icon-button{width:32px}.chat-thread{padding:16px;gap:12px}.thread-name{font-size:13px}.thread-copy small{font-size:11px}.chat-page .demo-note,.chat-page main>footer{display:none}.home-board{padding:16px;margin-top:18px}.board-heading{flex-wrap:wrap}.board-heading h2{font-size:16px}.announcement-grid,.daily-grid{grid-template-columns:1fr}.board-heading .button{font-size:11px}.announcement-card footer{flex-wrap:wrap}}
.chat-thread.pinned-thread{position:sticky;top:0;z-index:2;border-bottom:1px solid #DED9EA;background:#F8F6FD}.chat-thread.pinned-thread.selected{background:#EEE9FB}
.board-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:700px){.chat-keyboard-open .mobile-nav{display:none}}
.metrics-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:25px;align-items:start}.gauge svg{width:100%;max-width:190px}.gauge-value{font:700 21px Vazir;fill:#155676}.line-chart{min-width:0}.line-chart svg{width:100%}.chart-legend{display:flex;gap:20px;font-size:11px}.assigned-legend{color:#7556D8}.done-legend{color:#08AAA4}.chart-data{margin-top:0}.unit-metrics{border-top:1px solid #DED9EA;padding-top:22px;margin-top:22px}.unit-metrics .control{max-width:280px}.unit-metrics h3{font-size:14px}.brand .tapco-logo{height:100px;object-fit:contain}.topbar .mobile-logo{width:45px;height:45px;object-fit:contain}
@media(max-width:700px){.metrics-row{grid-template-columns:1fr;gap:10px}.gauge{text-align:center}.gauge svg{height:110px}.unit-metrics .board-heading{gap:10px}.line-chart{overflow:auto}.line-chart>svg{min-width:540px}.chart-data{font-size:11px}}
