:root{font-family:Tahoma,"Segoe UI",sans-serif;line-height:1.65;color:#24303d;background:#f5f7fb;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}body{margin:0;min-height:100vh}.shell{display:flex;min-height:100vh}.sidebar{width:265px;flex-shrink:0;background:#142640;color:#dce9f7;min-height:100vh;padding:25px 16px;display:flex;flex-direction:column;gap:10px}.logo{display:flex;align-items:center;gap:11px;font-size:20px;white-space:nowrap}.logo span:last-child{display:flex;flex-direction:column}.logo small{font-size:11px;color:#9daec0;line-height:1.9}.logo-mark{background:#34ceb2;color:#082b29;font-size:23px;display:grid;place-items:center;border-radius:15px;width:48px;height:48px;font-weight:800}.group-title{font-size:11px;color:#9daec0;font-weight:700;margin-top:34px;margin-bottom:4px}.sidebar button{width:100%;text-align:right;border:0;color:inherit;background:transparent;padding:10px 13px;border-radius:10px;font-size:13px}.sidebar button:hover,.sidebar button.active,.sidebar button.chosen{background:#27435f;color:#fff}.sidebar .sidebar-action{border:1px dashed #56728b;margin-top:6px;color:#78e3d1}.sidebar-footer{margin-top:auto;border-top:1px solid #334961;padding-top:12px}.sidebar-footer small{color:#87a5b8;font-size:11px}.main{flex:1;min-width:0}.topbar{padding:28px 38px;border-bottom:1px solid #e7ebf0;background:white;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar h1{margin:4px 0;font-size:22px}.topbar p{margin:0;color:#738091;font-size:13px}.eyebrow{font-size:11px;letter-spacing:1px;color:#248f88;font-weight:700}.right-actions{display:flex;align-items:center;gap:14px}.pill{background:#eaf8f5;color:#247b70;padding:5px 10px;border-radius:20px;font-size:12px}.content-panel{padding:28px 38px;max-width:1300px}.content-panel .intro{padding:10px 0 18px}.intro h2{font-size:21px;margin:0}.intro p{color:#778494}.card{background:#fff;padding:26px;border:1px solid #e4eaf1;border-radius:16px;box-shadow:0 6px 20px rgba(14,32,48,.025);margin-bottom:18px;min-width:0}.card h2{font-size:17px;margin-top:0}.card h3{font-size:15px}.card p{color:#657488}.two-col{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:20px;align-items:start}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:12px 0 26px}.stat{padding:22px 24px;border:1px solid #e6ecf2;background:#fff;border-radius:16px;display:flex;flex-direction:column}.stat strong{font-size:29px;color:#16283b}.stat span{font-size:12px;color:#738396}label{display:block;color:#354354;font-size:13px;font-weight:700;margin:13px 0 5px}input,select,textarea{background:#fcfdfd;color:#273848;border:1px solid #cfd9e1;border-radius:9px;padding:10px 11px;width:100%;outline:none}input:focus,select:focus,textarea:focus{border-color:#159b8a;box-shadow:0 0 0 3px #daf7ef}form .primary,.primary{border:0;border-radius:10px;background:#087f72;color:white;padding:12px 18px;font-weight:700;margin-top:20px}form .primary{width:100%}.primary:hover{background:#05665d}.small-button,#copy-url{border:1px solid #cbdbe4;border-radius:8px;background:#fff;color:#186d68;padding:8px 12px;white-space:nowrap}.items{display:flex;flex-direction:column;gap:9px;max-height:650px;overflow-y:auto}.item{padding:15px 12px;border:1px solid #edf1f4;border-radius:11px;background:#fff}.item-row{display:flex;gap:10px;align-items:center;justify-content:space-between}.item-row b{font-size:14px}.item small{font-size:11px;color:#81909b}.item-controls{display:flex;gap:10px;margin-top:10px}.item-controls select{flex:1}.item-controls button{flex:0}.item p{margin:6px 0 10px}.item textarea{margin-top:8px}.item>button{margin-top:8px}.muted,.hint,.empty,.subtle{color:#8794a0;font-size:12px}.url-line{display:flex;gap:8px}.url-line input{direction:ltr;text-align:left}.banner{margin:18px 38px 0;padding:12px 14px;border-radius:10px;background:#e9f6f3;border:1px solid #d1eae4;color:#24786a;font-size:13px}.banner:empty{display:none}.banner.error{background:#fff3f2;border-color:#ffd9d5;color:#ae463a}.login-view{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 15% 10%,#e3f8f4,transparent 42%),#f6f8fb}.login-card{background:white;border:1px solid #e3eaf0;border-radius:20px;padding:40px;width:min(440px,100%);box-shadow:0 20px 70px rgba(12,42,56,.08)}.login-card h1{font-size:24px;margin:35px 0 5px}.login-card p{font-size:13px;color:#78889a;margin:0 0 23px}.login-card .subtle{margin:17px 0 0}.login-logo small{color:#64817e}.login-card label{margin-top:15px}@media(max-width:900px){.shell{flex-direction:column}.sidebar{width:100%;min-height:auto;gap:4px;padding:15px}.sidebar .group-title{margin-top:12px}.sidebar-footer{margin:10px 0 0}.main{min-height:50vh}.topbar{padding:20px;flex-direction:column;align-items:flex-start}.content-panel{padding:20px}.two-col{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.banner{margin:12px 20px}.right-actions{flex-wrap:wrap}}
.login-error{min-height:1.5em;color:#a74336!important;font-size:12px!important;line-height:1.8}.login-card .secondary-action{width:100%;margin-top:14px;padding:10px 12px;background:#eef8f5;color:#147c6f;border:1px solid #bfe1d9}.login-card .secondary-action:hover{background:#dff2ed}


.item.unread{border-right:3px solid #17a38d;background:#fcfffe}
.workflow-details{margin-top:16px;padding:14px;border:1px solid #e5efee;border-radius:12px;background:#fafdfc}
.workflow-details h4{margin:10px 0 7px;font-size:14px;color:#284952}
.workflow-details .decision{padding:10px 14px;margin-bottom:8px;border:1px solid #e0e9e7;background:white;border-radius:8px}
.workflow-details .decision p{font-size:13px;margin:0}
.workflow-details .decision small{display:block;font-size:11px;margin-top:7px}
.inline-form{display:flex;gap:9px;align-items:center;margin:10px 0}
.inline-form select{flex:1}
.workflow-create{background:#fff;padding:12px;border:1px dashed #d2e6df;border-radius:11px;margin-top:12px}
.workflow-create .primary{margin-top:10px}
.workflow-field{display:block;margin:7px 0}
.workflow-field span{display:block;font-size:12px;font-weight:600;margin-bottom:4px}
@media(max-width:640px){.inline-form{flex-direction:column}.inline-form button{width:100%}}


.invite-share{margin-top:13px;display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.invite-share p{flex:1 0 100%;margin:5px 0;color:#617481}
.invite-share a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.invite-share button{width:auto}


/* MeetFlow v0.2 — packaged Persian typeface. No Google Fonts / external CDN needed. */
@font-face{
 font-family:"Vazirmatn";
 src:url("/fonts/vazirmatn-arabic-wght-normal.woff2") format("woff2");
 font-style:normal;font-weight:100 900;font-display:swap;
 unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+200C,U+200F,U+FB50-FDFF,U+FE70-FEFF;
}
@font-face{
 font-family:"Vazirmatn";
 src:url("/fonts/vazirmatn-latin-wght-normal.woff2") format("woff2");
 font-style:normal;font-weight:100 900;font-display:swap;
 unicode-range:U+0000-05FF,U+2010-2027,U+20A0-20CF,U+2113,U+2C60-2C7F;
}
:root{font-family:"Vazirmatn","Segoe UI",Tahoma,sans-serif;line-height:1.85;
 --mf-ink:#1c3040;--mf-muted:#637c8b;--mf-accent:#098977;}
body,button,input,select,textarea{font-family:"Vazirmatn","Segoe UI",Tahoma,sans-serif!important;
 letter-spacing:0;font-feature-settings:"ss01" on;}
body{font-weight:400;color:var(--mf-ink);-webkit-font-smoothing:antialiased}
button{font-weight:550;transition:background .15s ease,border-color .15s ease}
.logo b{font-weight:800}
.logo small{font-size:11px}
.sidebar{background:#17283b;width:267px}
.sidebar .group-title{letter-spacing:0;font-size:12px}
.sidebar button{font-size:13px;font-weight:500;line-height:1.9}
.sidebar button.active,.sidebar button.chosen{box-shadow:inset -3px 0 #34cfb2}
.topbar h1{font-size:23px;font-weight:750}
.topbar p{font-size:13px}
.content-panel{max-width:1600px}
.card{box-shadow:0 2px 18px rgba(16,38,56,.028);border-color:#e4edf2}
.card h2,.card h3{font-weight:700}
.intro h2,.section-heading h2{font-size:21px;font-weight:760;margin:0}
.intro p,.section-heading p{font-size:13px;color:#718796;margin:5px 0}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:19px}
button.primary,form .primary{background:#098576;border-radius:10px;padding:10px 18px;font-weight:720}
button.primary:hover,form .primary:hover{background:#076b60}
label,.workflow-field span{color:#30495b;font-weight:650}
input,select,textarea{background:#fff;font-size:13px;min-height:42px;line-height:1.8}
input[readonly]{background:#f6f9fb}
input[type="date"],input[type="datetime-local"]{direction:ltr;text-align:left}
textarea{resize:vertical}
.stats{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}
.stat{padding:18px 20px}
.stat strong{font-size:27px;font-weight:800;font-variant-numeric:tabular-nums}
.sheet-form{padding:24px 26px}
.sheet-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px 18px;align-items:start}
.form-field label{display:block;margin:0 0 6px;font-size:12px}
.form-field textarea{min-height:78px}
.form-field.span-2{grid-column:span 2}
.form-field .inline-add{margin-top:8px;width:100%}
.sheet-form-footer{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #ebf0f3;padding-top:14px;width:100%;min-width:0;max-width:100%}
.sheet-form-footer p{margin:0;line-height:1.85;flex:1 1 auto;min-width:0;max-width:100%;overflow-wrap:break-word}
.sheet-form .sheet-form-footer .primary{width:auto;min-width:180px;max-width:280px;flex:0 0 auto;margin:0;align-self:center;white-space:nowrap}
.table-card{padding:20px 20px 8px}
.table-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:12px}
.table-title h3{margin:0;font-size:16px}
.sheet-scroll{overflow-x:auto;max-width:100%;scrollbar-width:thin;padding-bottom:8px}
.data-grid{width:100%;min-width:1080px;border-collapse:separate;border-spacing:0;font-size:12px;text-align:right}
.data-grid thead th{font-weight:700;color:#4f6878;background:#f3f7f9;border-top:1px solid #e7edf1;border-bottom:1px solid #e7edf1;padding:12px 10px;white-space:nowrap}
.data-grid tbody td{padding:13px 10px;border-bottom:1px solid #edf1f4;vertical-align:top;line-height:1.95;max-width:270px;overflow-wrap:anywhere}
.data-grid tbody tr:hover:not(.task-edit-row){background:#f8fbfc}
.data-grid tbody tr.done-row{opacity:.68}
.data-grid .no-data td{text-align:center;padding:32px 15px;color:#80919e}
.data-grid th:first-child{border-radius:0 9px 0 0}
.data-grid th:last-child{border-radius:9px 0 0 0}
.data-grid .table-edit{border:1px solid #b9e3d9;background:#effaf6;color:#076f61;white-space:nowrap}
.data-grid .failed-row td:nth-child(5){color:#b33b32}
.dashboard-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:14px 18px}
.dashboard-toolbar label{display:flex;flex-direction:column;gap:5px;font-size:12px;margin:0;min-width:154px;flex:1}
.dashboard-toolbar .search-label{flex:2;min-width:230px}
.dashboard-toolbar button{margin-bottom:1px}
.task-summary{margin:18px 0}
.task-edit-row td{background:#eef6f4!important;padding:16px!important}
.task-edit-form{padding:8px}
.task-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.task-edit-grid .edit-field{display:flex;flex-direction:column;margin:0;gap:4px;font-size:12px}
.task-edit-grid .edit-field>span{font-weight:650}
.task-edit-grid textarea{min-height:78px}
.edit-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}
.edit-actions .primary{width:auto;margin:0}
.url-line input{font-family:"Vazirmatn","Segoe UI",sans-serif!important}
@media(max-width:1100px){.sheet-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.task-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:660px){.sheet-form-grid,.task-edit-grid{grid-template-columns:1fr}
.form-field.span-2{grid-column:1}
.sheet-form-footer{align-items:stretch;flex-direction:column;gap:12px}
.sheet-form .sheet-form-footer .primary{width:100%;min-width:0;max-width:100%;align-self:stretch}
.dashboard-toolbar{align-items:stretch}.dashboard-toolbar label{min-width:100%}
.content-panel{padding:17px}.table-card{padding:13px}.data-grid{min-width:950px}}


/* MeetFlow v0.3: real mobile navigation, iOS safe-area and narrow-screen forms. */
.mobile-appbar,.mobile-sidebar-head,.mobile-nav-backdrop{display:none}
.mobile-menu-toggle,.mobile-menu-close{
 appearance:none;border:0;cursor:pointer;
}
.mobile-nav-backdrop[hidden],.mobile-appbar[hidden]{display:none!important}
.mobile-appbar{direction:rtl}
.sidebar{overflow-y:auto}
@media(max-width:1599px){
 html,body{width:100%;max-width:100%;overflow-x:clip}
 body{min-height:100dvh}
 body.mobile-nav-open{overflow:hidden;touch-action:none}
 .shell{display:block;min-height:100dvh}
 .mobile-appbar{
  position:sticky;top:0;z-index:70;background:#fff;
  padding:calc(env(safe-area-inset-top,0px) + 8px) 16px 9px;
  min-height:62px;border-bottom:1px solid #e1eaf0;
  display:flex;align-items:center;justify-content:space-between;gap:13px;
  box-shadow:0 2px 12px rgba(20,41,61,.035);
 }
 .mobile-menu-toggle{
  display:inline-flex;align-items:center;gap:8px;justify-content:center;
  min-height:44px;min-width:78px;padding:6px 12px;
  border:1px solid #d4e2e8;background:#f5faf9;
  border-radius:11px;color:#1c706a;font-size:13px;font-weight:720;
 }
 .mobile-menu-toggle span:first-child{font-size:18px;line-height:1}
 .mobile-menu-toggle:focus-visible,.mobile-menu-close:focus-visible{
  outline:3px solid #40a79a;outline-offset:2px;
 }
 .mobile-brand{
  min-width:0;display:flex;flex-direction:column;
  justify-content:center;align-items:flex-end;line-height:1.5;
 }
 .mobile-brand b{font-size:17px;letter-spacing:-.4px;font-weight:800;color:#192e43}
 .mobile-brand small{
  font-size:11px;color:#5b7b8b;max-width:61vw;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
 }
 .mobile-nav-backdrop{
  position:fixed;inset:0;z-index:119;
  display:block;background:rgba(13,29,49,.48);
  backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);
 }
 .sidebar{
  position:fixed!important;inset:0 0 0 auto;
  height:100dvh;min-height:0!important;
  width:min(86vw,330px)!important;max-width:calc(100vw - 54px);
  padding:calc(env(safe-area-inset-top,0px) + 15px) 14px
      calc(env(safe-area-inset-bottom,0px) + 18px);
  z-index:120;
  display:flex;flex-direction:column;gap:5px;
  border-radius:0 0 0 16px;
  overflow-x:hidden;overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  transform:translateX(105%);
  visibility:hidden;
  transition:transform .22s ease,visibility .22s ease;
  box-shadow:-12px 0 40px rgba(5,19,33,.16);
 }
 .sidebar.mobile-open{
  transform:translateX(0);visibility:visible;
 }
 .mobile-sidebar-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:3px 5px 9px;margin-bottom:5px;
  border-bottom:1px solid rgba(255,255,255,.14);
  color:#eff9f9;font-size:14px;font-weight:760;
 }
 .mobile-menu-close{
  width:43px!important;height:43px;padding:0!important;
  flex:0 0 43px;border:1px solid rgba(255,255,255,.2)!important;
  border-radius:11px;background:rgba(255,255,255,.09)!important;
  color:white;font-size:28px;line-height:1;
  text-align:center!important;
 }
 .sidebar .logo{padding:4px 3px 9px;margin:3px 0}
 .sidebar .group-title{margin-top:14px;font-size:11px}
 .sidebar button{min-height:44px;padding:9px 12px;font-size:13px}
 .sidebar nav button{font-size:13px;line-height:1.6}
 .sidebar-footer{margin-top:auto;padding-top:10px}
 .main{width:100%;min-width:0;min-height:100dvh}
 .topbar{padding:17px 18px;gap:14px;flex-direction:column;align-items:stretch}
 .topbar h1{font-size:20px;margin:2px 0 3px}
 .topbar p{font-size:12px;overflow-wrap:anywhere}
 .right-actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:space-between}
 .right-actions .pill{
  font-size:11px;max-width:100%;overflow:hidden;text-overflow:ellipsis;
  white-space:nowrap;min-height:32px;align-content:center;
 }
 .right-actions .small-button{min-height:40px}
 .content-panel{max-width:100%;padding:17px 15px 28px}
 .intro h2,.section-heading h2{font-size:19px}
 .card{max-width:100%;padding:17px;border-radius:13px}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .stat{padding:15px 13px}
 .stat strong{font-size:24px}
 .stat span{font-size:11px}
 .two-col{grid-template-columns:minmax(0,1fr);gap:14px}
 .banner{margin:12px 15px}
 .url-line{flex-wrap:wrap}
 .url-line input{min-width:0;flex:1 1 160px}
 .url-line #copy-url{flex:0 0 auto}
 .section-heading{align-items:flex-start}
 .sheet-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
 .table-card{padding:14px 10px}
 .data-grid{min-width:900px}
 .telegram-actions{display:flex;flex-wrap:wrap;gap:8px}
 .telegram-actions button,.telegram-actions a{min-height:44px;margin:0}
 .login-view{min-height:100dvh}
 .login-card{padding:27px 20px;max-width:100%}
 .login-card input{font-size:16px}
 input,select,textarea{max-width:100%}
}
@media(max-width:410px){
 .topbar{padding:14px}
 .content-panel{padding:15px 12px 26px}
 .stat strong{font-size:21px}
 .sheet-form-grid,.task-edit-grid{grid-template-columns:minmax(0,1fr)}
 .dashboard-toolbar .search-label{min-width:0}
 .right-actions .pill{max-width:calc(100vw - 45px)}
}
@media(prefers-reduced-motion:reduce){
 .sidebar{transition:none}
}


/* Module-level information architecture: expandable navigation for future modules. */
#menu{display:flex;flex-direction:column;gap:5px}
#menu .module-container{display:flex;flex-direction:column;gap:5px}
#menu .module-toggle{border:1px solid rgba(172,210,227,.16);background:rgba(255,255,255,.06);
 padding:11px 12px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;
 font-size:14px;font-weight:750;min-height:46px;text-align:right;width:100%;color:#eef9ff}
#menu .module-toggle.module-selected{border-color:rgba(52,206,178,.34);background:rgba(21,153,138,.16)}
#menu .module-title{display:flex;align-items:center;gap:9px}
#menu .module-symbol{font-size:22px;color:#60d7ca;line-height:1}
#menu .module-arrow{font-size:18px;color:#b6d5e2;transition:transform .15s}
#menu .module-toggle[aria-expanded="false"] .module-arrow{transform:rotate(90deg)}
#menu .module-subnav{padding:4px 9px 7px 0;margin-right:10px;border-right:1px solid rgba(137,177,205,.27);
 display:flex;flex-direction:column;gap:2px}
#menu .module-subnav button{font-size:12.5px;font-weight:480;padding:8px 13px;min-height:38px;border-radius:8px}
#menu .module-subnav button.active{font-weight:700;background:rgba(49,88,112,.84)}
#menu .module-subnav button.active::before{content:"•";display:inline-block;color:#6ce0c9;margin-left:6px}
#menu .module-subnav[hidden],#menu button[hidden],#menu .module-container[hidden]{display:none!important}
#tasks-panel .table-edit[disabled]{background:#f0f3f6;border-color:#e1e7ec;color:#738596;
 opacity:1;cursor:default}
@media(max-width:900px){
 #menu .module-subnav{padding-right:7px}
 #menu .module-toggle{min-height:44px}
}

/* Protect form/card width when RTL inputs and the horizontal data grid share a viewport. */
#workspace-view,.content-panel,.card,.sheet-form,.sheet-form-grid,.sheet-form-grid>.form-field{min-width:0;max-width:100%;box-sizing:border-box}
.sheet-form-grid>.form-field input,.sheet-form-grid>.form-field select,.sheet-form-grid>.form-field textarea{min-width:0;max-width:100%}
.sheet-scroll{min-width:0;max-width:100%;overflow-x:auto}

/* MeetFlow — meeting-linked resolutions and chronological progress history. */
.sheet-form-grid .field-hint{font-size:11px;line-height:1.75;color:#6f8593;margin:4px 0 0}
.task-history-panel{margin-top:14px;border-top:1px solid #dce8e6;padding-top:14px}
.task-history-panel>button{width:auto;min-width:180px}
.task-history-list{display:grid;gap:8px;margin-top:12px}
.task-history-entry{background:#fff;border:1px solid #dde9eb;border-radius:9px;padding:13px 15px}
.task-history-entry .item-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center}
.task-history-entry .history-report{white-space:pre-wrap;line-height:1.9;margin:7px 0;overflow-wrap:anywhere}
#resolution-meeting{width:100%;min-width:0}
#meetings-panel .table-card{min-width:0}

/* UAT: read-only executive board details, with no interactive edit fields. */
.task-readonly-details{background:#fff;border:1px solid #d9e6ea;border-radius:11px;padding:17px 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px 18px}
.task-readonly-details>strong{grid-column:1/-1;font-size:15px;color:#22515c}
.task-readonly-details .readonly-detail{min-width:0;padding:9px 11px;background:#f7fafb;border-radius:8px}
.task-readonly-details .readonly-detail strong{font-size:11px;color:#6b8390;font-weight:700}
.task-readonly-details .readonly-detail p{white-space:pre-wrap;overflow-wrap:anywhere;color:#213949;font-size:13px;line-height:1.8;margin:5px 0 0}
@media(max-width:900px){.task-readonly-details{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.task-readonly-details{grid-template-columns:1fr}}

/* Invitation share remains usable even when browser clipboard access is denied. */
.invite-share{min-width:0;width:100%;align-items:stretch}
.invite-share .invite-copy-text{
 display:block;flex:1 0 100%;width:100%;max-width:100%;min-width:0;min-height:135px;
 direction:rtl;text-align:right;white-space:pre-wrap;resize:vertical;
 border:1px solid #bbd7d5;border-radius:10px;background:#f6fbfa;color:#244a50;
 font-size:12.5px;line-height:2;padding:12px 14px;user-select:text;-webkit-user-select:text
}
.invite-share .invite-copy-text:focus{outline:2px solid #4fbcae;outline-offset:2px}
.invite-share .invite-copy-status{flex:1 0 100%;font-size:12px;line-height:1.9;overflow-wrap:anywhere}
.invite-share button,.invite-share a{min-height:39px;min-width:132px}
@media(max-width:520px){.invite-share button,.invite-share a{flex:1 1 100%}}

/* MeetFlow Solar Hijri calendar: fully local and RTL, no external date picker. */
.jalali-picker{position:relative;width:100%;min-width:0;direction:rtl}
.jalali-input-row{display:flex;align-items:stretch;gap:6px;width:100%;min-width:0}
.jalali-input-row .jalali-date-text{flex:1 1 auto;min-width:0;width:100%;direction:ltr;text-align:center;letter-spacing:1px;
 border:1px solid #cbdde4;border-radius:9px;background:#fff;padding:9px 11px;font:inherit;font-variant-numeric:tabular-nums}
.jalali-input-row .jalali-date-text:focus{border-color:#279989;outline:2px solid rgba(39,153,137,.16)}
.jalali-toggle,.jalali-nav-button,.jalali-today{border:1px solid #bcd7db;color:#126860;background:#f4fbfa;border-radius:9px}
.jalali-toggle{width:43px;flex:0 0 43px;font-size:20px;min-height:43px}
.jalali-popup{z-index:40;position:absolute;top:calc(100% + 7px);right:0;width:min(328px,calc(100vw - 48px));
 max-width:100%;min-width:270px;direction:rtl;box-shadow:0 16px 36px rgba(21,58,71,.18);
 border:1px solid #d5e3e7;border-radius:13px;background:#fff;padding:13px}
.jalali-popup[hidden]{display:none!important}
.jalali-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:12px}
.jalali-month-title{font-size:14px;color:#174c55}
.jalali-nav-button{font-size:21px;width:38px;height:34px;line-height:1}
.jalali-weekdays,.jalali-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.jalali-weekdays{margin-bottom:8px}
.jalali-weekdays span{font-weight:700;font-size:11px;color:#627782;padding:5px 0}
.jalali-day-grid .jalali-day{display:grid;place-items:center;min-height:34px;border:0;border-radius:8px;
 background:transparent;color:#244354;font-size:12px;padding:5px 0}
.jalali-day-grid .jalali-day:hover{background:#e8f5f2}
.jalali-day-grid .jalali-day.today{box-shadow:inset 0 0 0 1px #0c8d7e}
.jalali-day-grid .jalali-day.selected{color:white;background:#0d8176}
.jalali-today{margin-top:11px;padding:7px 12px;font-size:12px;width:100%}
.task-edit-grid .jalali-picker{min-width:0}
@media(max-width:600px){.jalali-popup{min-width:260px}.jalali-day-grid .jalali-day{min-height:38px}}


/* MeetFlow responsive v0.5: every sheet fits the available content width.
 * Dense 9-column task tables become labelled cards; no horizontal scrolling,
 * no off-screen save buttons, no unreadable text due to clipped table cells. */
html,body,.shell,.main,#workspace-view{min-width:0;max-width:100%}
html,body{overflow-x:clip}
.main,.content-panel,.table-card,.sheet-scroll{min-width:0;max-width:100%}
.content-panel{width:100%}
.table-title{min-width:0;flex-wrap:wrap}
.table-title h3{overflow-wrap:anywhere}
.sheet-scroll{overflow-x:visible!important;overflow-y:visible!important;padding:0!important}
.adaptive-grid{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;border-collapse:separate}
.adaptive-grid thead{
 position:absolute!important;width:1px;height:1px;
 padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap
}
.adaptive-grid tbody{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;width:100%;min-width:0}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px 18px;
 padding:16px 19px;border:1px solid #dce7eb;background:#fff;border-radius:12px;
 min-width:0;width:100%;box-shadow:0 2px 9px rgba(15,38,50,.025)
}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data):hover{
 background:#f9fcfb;border-color:#c8e3dd
}
.adaptive-grid tbody td{
 min-width:0!important;max-width:none!important;width:auto!important;
 padding:0!important;border:0!important;text-align:right;
 white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;
 font-size:13px;line-height:1.85
}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td{
 display:flex;flex-direction:column;justify-content:flex-start;gap:3px
}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td::before{
 content:attr(data-label);display:block;color:#65808e;
 font-size:11px;font-weight:720;line-height:1.5
}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(1){font-weight:750;color:#205e61}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){grid-column:span 2}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){white-space:pre-wrap}
.adaptive-grid tbody .table-edit{
 align-self:flex-start;min-height:40px;min-width:92px;max-width:100%;
 white-space:normal;flex:none
}
.adaptive-grid tbody tr.done-row{opacity:1!important;border-right:3px solid #19a18a!important}
.adaptive-grid tbody tr.failed-row{border-right:3px solid #cf5b4c!important}
.adaptive-grid tbody tr.task-edit-row{
 display:block;width:100%;min-width:0;
 border:1px solid #cee2de;border-radius:12px;
 background:#eef6f4;overflow:visible
}
.adaptive-grid tbody tr.task-edit-row td{
 display:block;width:100%!important;min-width:0;max-width:100%!important;
 padding:16px!important;background:transparent!important;box-sizing:border-box
}
.adaptive-grid tbody tr.task-edit-row td::before{content:none!important}
.task-edit-form,.task-edit-grid,.task-edit-grid .edit-field,
.task-edit-grid input,.task-edit-grid select,.task-edit-grid textarea,
.task-history-panel,.task-history-list,.task-readonly-details{
 min-width:0;max-width:100%;box-sizing:border-box
}
.task-edit-form{padding:0}
.task-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.task-edit-grid .edit-field{margin:0}
.task-edit-grid .edit-field>span{white-space:normal;overflow-wrap:anywhere}
.task-edit-grid .edit-field input,.task-edit-grid .edit-field select,
.task-edit-grid .edit-field textarea{width:100%;min-width:0;max-width:100%}
.edit-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start}
.edit-actions button{margin:0;min-height:42px}
.task-history-panel>button{min-width:0!important;max-width:100%;white-space:normal}
.adaptive-grid tbody tr.no-data{
 display:block;padding:20px;border:1px dashed #cbdfe4;border-radius:12px
}
.adaptive-grid tbody tr.no-data td{display:block!important;width:100%!important;text-align:center}
.adaptive-grid tbody tr.no-data td::before{content:none!important}
.dashboard-toolbar{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr)) auto;
 gap:12px;align-items:end}
.dashboard-toolbar label,.dashboard-toolbar .search-label{min-width:0!important;flex:none;max-width:100%}
.dashboard-toolbar input,.dashboard-toolbar select{min-width:0;max-width:100%}
.dashboard-toolbar button{min-height:42px;max-width:100%}
#resolution-form,.sheet-form-grid,.sheet-form-grid>.form-field{min-width:0;max-width:100%}
#resolution-form textarea{white-space:pre-wrap}
.item,.item-row{min-width:0}
.item-row{flex-wrap:wrap;overflow-wrap:anywhere}
#account-email{overflow-wrap:anywhere;white-space:normal;min-width:0;max-width:100%}
@media(max-width:1199px){
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){grid-template-columns:repeat(3,minmax(0,1fr))}
 .task-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){grid-template-columns:repeat(2,minmax(0,1fr))}
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){grid-column:span 2}
 .dashboard-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}
 .dashboard-toolbar .search-label{grid-column:1/-1}
 .dashboard-toolbar>button{grid-column:1/-1}
 .task-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:540px){
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){grid-template-columns:minmax(0,1fr);gap:11px;padding:14px}
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){grid-column:auto}
 .adaptive-grid tbody tr.task-edit-row td{padding:12px!important}
 .task-edit-grid{grid-template-columns:minmax(0,1fr)}
 .dashboard-toolbar{grid-template-columns:minmax(0,1fr)}
 .dashboard-toolbar .search-label,.dashboard-toolbar>button{grid-column:auto}
 .edit-actions button{flex:1 1 110px}
 .table-card{padding:12px!important}
 .task-readonly-details{grid-template-columns:minmax(0,1fr)}
}


/* MeetFlow v0.6 compact inline records.
   Large displays: all columns of each sheet are aligned on ONE row.
   Smaller screens: dense multi-column cards without horizontal scrolling. */
.adaptive-grid tbody{gap:7px!important}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){
 padding:10px 12px!important;gap:7px 10px!important;
 border-radius:10px!important;align-items:start;align-content:center;
 min-width:0!important;box-shadow:none!important
}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td{
 min-width:0!important;font-size:11.5px!important;line-height:1.55!important;
 gap:1px!important;overflow-wrap:anywhere;
}
.adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td::before{
 font-size:9.5px!important;line-height:1.45!important;
 margin:0 0 2px;color:#6d8392;letter-spacing:0
}
.adaptive-grid tbody .table-edit{
 min-width:0!important;min-height:31px!important;
 padding:5px 8px!important;font-size:11px!important;
 white-space:nowrap!important;border-radius:7px
}
.table-card{padding:14px 14px 10px!important}
.table-title{margin-bottom:9px!important}
.table-title h3{font-size:14px!important}
.adaptive-grid tbody tr.task-edit-row td{padding:12px 14px!important}
.task-edit-grid{gap:10px!important}
.task-edit-grid .edit-field>span{font-size:11px!important}
.task-edit-grid input,.task-edit-grid select,.task-edit-grid textarea{font-size:12px!important}
.task-history-panel{margin-top:9px;padding-top:9px}
.task-history-entry{padding:9px 11px}
@media(min-width:1200px){
 #resolutions-table-body>tr:not(.task-edit-row):not(.no-data){
  grid-template-columns:minmax(0,1.34fr) minmax(0,2.15fr) minmax(0,.91fr)
   minmax(0,1fr) minmax(0,.94fr) minmax(0,.78fr)
   minmax(0,1.49fr) minmax(0,.94fr)!important
 }
 #tasks-table-body>tr:not(.task-edit-row):not(.no-data){
  grid-template-columns:minmax(0,1.36fr) minmax(0,2.1fr) minmax(0,.87fr)
   minmax(0,1fr) minmax(0,.89fr) minmax(0,.76fr)
   minmax(0,1.36fr) minmax(0,.94fr) minmax(0,.72fr)!important
 }
 #delivery-table-body>tr:not(.task-edit-row):not(.no-data){
  grid-template-columns:minmax(0,1.28fr) minmax(0,1.3fr) minmax(0,1.12fr)
   minmax(0,.83fr) minmax(0,.87fr) minmax(0,.58fr)
   minmax(0,1.28fr) minmax(0,1.38fr)!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td{
  display:block!important;white-space:nowrap!important;
  overflow:hidden!important;text-overflow:ellipsis!important;
  word-break:normal!important;max-width:100%!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){
  grid-column:auto!important;white-space:nowrap!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td::before{
  display:block!important;white-space:nowrap!important;
  overflow:hidden!important;text-overflow:ellipsis!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){
  min-height:55px
 }
}
@media(min-width:821px) and (max-width:1199px){
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){
  grid-template-columns:repeat(4,minmax(0,1fr))!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){
  grid-column:span 2!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td{
  white-space:normal;line-height:1.55!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2),
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(7){
  display:-webkit-box!important;-webkit-box-orient:vertical;
  -webkit-line-clamp:2;overflow:hidden
 }
}
@media(min-width:561px) and (max-width:820px){
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){
  grid-template-columns:repeat(2,minmax(0,1fr))!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){
  grid-column:span 2!important
 }
}
@media(max-width:560px){
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data){
  grid-template-columns:minmax(0,1fr)!important;
  padding:9px 11px!important;gap:7px!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td,
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){
  display:grid!important;grid-template-columns:minmax(70px,88px) minmax(0,1fr);
  align-items:start;gap:7px!important;grid-column:auto!important
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td::before{
  margin:0!important;font-size:10px!important;padding-top:2px
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td:nth-child(2){
  white-space:pre-wrap
 }
 .adaptive-grid tbody tr:not(.task-edit-row):not(.no-data) td .table-edit{
  justify-self:start
 }
}
