:root{
  --brand:#113a77;--brand-deep:#0b2d61;--blue:#2868ed;--blue-soft:#edf4ff;
  --canvas:#f4f7fb;--surface:#fff;--text:#172238;--muted:#77849a;--hairline:#e7ecf3;
  --shadow-xs:0 1px 2px rgba(15,39,73,.025),0 4px 12px rgba(15,39,73,.035);
  --shadow-md:0 14px 34px rgba(22,51,91,.09);--ease:cubic-bezier(.2,.8,.2,1)
}
body{letter-spacing:.005em;background:var(--canvas)}
button{transition:background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgba(40,104,237,.34);outline-offset:2px}
.sidebar{width:224px;border-right:1px solid rgba(216,224,235,.9);box-shadow:4px 0 22px rgba(33,56,91,.025)}
.shell{padding-left:224px}.brand{height:78px;padding:12px 21px}.brand img{width:160px;height:53px}
.main-nav{padding:12px}.nav-item{height:44px;border-radius:9px;font-size:13px;font-weight:520;color:#56647a;position:relative}
.nav-item.active{color:var(--brand);background:linear-gradient(90deg,#e9f1ff,#f4f8ff);font-weight:680}
.nav-item.active:before{content:"";position:absolute;left:0;width:3px;height:20px;border-radius:4px;background:var(--blue)}
.topbar{height:66px;border-color:rgba(225,231,239,.9);padding:0 27px}.breadcrumb{font-size:15px}.global-search{height:40px;border-radius:10px;background:#f4f6f9}
.primary-btn{height:38px;border-radius:8px;font-weight:620;box-shadow:0 6px 14px rgba(36,103,235,.2)}.primary-btn:hover{transform:translateY(-1px);box-shadow:0 9px 18px rgba(36,103,235,.24)}
.ghost-btn,.subtle-btn,.filter-chip{border-color:#e0e6ef}.ghost-btn:hover,.subtle-btn:hover,.filter-chip:hover{color:var(--blue);border-color:#b9cdf3;background:#f7faff}
.content{padding:25px 28px 56px}.card{border-color:rgba(222,229,238,.92);box-shadow:var(--shadow-xs)}
.eyebrow,.section-kicker{display:block;font-size:9px;letter-spacing:.16em;color:#7690b8;font-weight:750;text-transform:uppercase;margin-bottom:6px}
.premium-hero{min-height:186px;padding:29px 31px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(112deg,#fff 0%,#f4f8ff 64%,#eaf2ff 100%);border-color:#dce7f7;box-shadow:0 10px 28px rgba(35,69,113,.06)}
.premium-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(32,91,181,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(32,91,181,.035) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(90deg,transparent 35%,#000);pointer-events:none}
.premium-hero h1{font-size:27px;letter-spacing:-.6px}.premium-hero p{font-size:13px;color:#667994}.premium-hero .quick-row button{height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 13px;border-radius:8px;font-weight:600}.premium-hero .quick-row svg{width:15px;height:15px}
.hero-orbit{width:150px;height:150px;border:1px solid rgba(50,105,190,.14);border-radius:50%;position:relative;margin-right:55px;box-shadow:inset 0 0 0 28px rgba(255,255,255,.42),0 0 50px rgba(53,111,202,.08)}
.hero-orbit:before,.hero-orbit:after{content:"";position:absolute;border:1px dashed rgba(45,103,194,.16);border-radius:50%;inset:16px}.hero-orbit:after{inset:43px;background:rgba(255,255,255,.86);border-style:solid}
.hero-orbit b{position:absolute;inset:0;display:grid;place-items:center;color:var(--brand);font-size:16px;z-index:2}.hero-orbit span{position:absolute;background:#fff;color:#315a94;border:1px solid #dae6f7;border-radius:14px;padding:4px 9px;font-size:10px;z-index:3;box-shadow:0 5px 12px rgba(26,59,101,.06)}.hero-orbit span:nth-child(1){left:-12px;top:30px}.hero-orbit span:nth-child(2){right:-14px;top:38px}.hero-orbit span:nth-child(3){bottom:-3px;left:54px}
.metric-grid{gap:13px}.metric{appearance:none;text-align:left;min-height:126px;padding:17px 18px;background:#fff;color:var(--text);position:relative;border:1px solid var(--hairline);box-shadow:var(--shadow-xs)}
.metric:hover{transform:translateY(-2px);border-color:#c9d8ef;box-shadow:var(--shadow-md)}.metric:before{width:2px}.metric .metric-icon{position:absolute;right:16px;top:15px;width:31px;height:31px;border-radius:9px;background:#edf4ff;color:var(--blue);display:grid;place-items:center}.metric-icon svg{width:16px;height:16px}.metric strong{font-size:29px;line-height:1;margin-top:11px}.metric small{font-size:10px}.metric-arrow{position:absolute;right:15px;bottom:13px;color:#a3afbf}.metric.danger .metric-icon{background:#fff1f0;color:#d85b55}.metric.warning .metric-icon{background:#fff6e8;color:#d68b1d}.metric.success .metric-icon{background:#eaf8f2;color:#21966a}
.section-head{padding:19px 20px 14px}.section-head h2{font-size:16px;letter-spacing:-.15px}.calendar-card{border-radius:13px;overflow:hidden}.calendar-card>.section-head{min-height:72px}.event-legend{display:flex;gap:12px;color:#768397;font-size:10px;margin-left:auto;margin-right:16px}.event-legend span{display:flex;align-items:center;gap:4px}.dot{width:6px;height:6px;border-radius:50%;background:#2c70f2}.dot.meeting{background:#805de8}.dot.report{background:#25a67a}.dot.delivery{background:#e59b2e}
.calendar-week{background:#f9fafc}.calendar-week span{text-align:center;text-transform:uppercase;font-weight:620;letter-spacing:.04em}.calendar-day{min-height:120px;padding:8px 9px}.calendar-day:hover{box-shadow:inset 0 0 0 1px #c8d9f5;background:#fbfdff}.event{border:0;border-left:2px solid #2c70f2;padding:4px 6px;background:#eef4ff;color:#234f91}.event span{font-size:9px;margin-right:4px}.event-meeting{border-color:#805de8;background:#f3efff;color:#6245b5}.event-report{border-color:#25a67a;background:#ecf9f4;color:#21785a}.event-delivery{border-color:#e59b2e;background:#fff6e8;color:#9b671e}.event-asset{border-color:#718096;background:#f1f4f7;color:#566274}
.premium-page-head{align-items:center;margin-bottom:17px}.premium-page-head h1{font-size:25px}.business-switch{display:inline-flex;padding:3px;background:#e9eef6;border-radius:10px;margin-bottom:14px}.business-switch button{border:0;background:transparent;height:37px;padding:0 20px;border-radius:8px;color:#637187;display:flex;align-items:center;gap:7px}.business-switch svg{width:15px;height:15px}.business-switch button.active{background:#fff;color:var(--brand);font-weight:680;box-shadow:0 3px 10px rgba(34,61,98,.08)}
.module-layout{grid-template-columns:182px minmax(0,1fr);gap:15px}.view-panel{padding:11px 9px;border-radius:11px}.view-panel-title{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 10px;font-size:11px;font-weight:720;color:#52627a}.view-panel-title button{border:0;background:transparent;color:#8d99aa}.view-panel h3{font-size:9px;letter-spacing:.1em;margin-top:16px}.view-link{height:38px;padding:0 9px;font-size:12px}.view-link svg{width:15px;height:15px}.view-toolbar{height:55px;border-radius:11px;padding:9px 11px}.view-types button{display:flex;align-items:center;gap:6px;font-size:11px}.view-types button svg{width:14px;height:14px}.record-count{padding:0 6px;color:#8995a7}
.data-card{border-radius:11px;max-height:calc(100vh - 208px)}.data-table{font-size:11px}.data-table th{height:43px;padding:0 12px;background:#f8fafc;text-transform:none;letter-spacing:.02em}.data-table td{height:47px;padding:7px 12px}.data-table tbody tr:hover{background:#f6f9ff}.entity-title{font-size:12px}.tag{font-size:10px;padding:2px 7px;min-height:21px;border:1px solid rgba(123,139,160,.08)}
.cards-grid{grid-template-columns:repeat(3,minmax(270px,1fr));gap:14px}.entity-card{padding:17px 18px;border-radius:11px;min-height:190px}.entity-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.entity-card h3{font-size:15px;margin:11px 0 6px}.entity-card p{min-height:39px}.card-topline{display:flex;align-items:center;justify-content:space-between}.card-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:11px 0;margin:10px 0;border-top:1px solid #eef1f5;border-bottom:1px solid #eef1f5;font-size:10px;color:#415067}.card-facts span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-facts small{display:block;font-size:9px;color:#98a3b2;margin-bottom:3px}
.board{gap:14px}.board-col{background:#eef2f7;border:1px solid #e6ebf2;padding:10px;border-radius:12px}.board-head{padding:4px 5px 12px}.board-head>div{display:grid;gap:3px}.board-head small{font-weight:400;color:#95a0af;font-size:9px}.board-count{min-width:22px;height:22px;border-radius:11px;background:#fff;display:grid;place-items:center;color:#708096;font-size:10px}.board-card{padding:13px;border-radius:9px;box-shadow:0 2px 5px rgba(31,55,88,.03)}.board-card .card-facts{grid-template-columns:1fr 1fr}.board-add{width:100%;border:1px dashed #ccd5e2;background:transparent;color:#8490a2;border-radius:8px;height:34px;font-size:11px}.board-add:hover{background:#fff;color:var(--blue);border-color:#aac3ef}
.modal{border-radius:15px;padding:24px;box-shadow:0 30px 90px rgba(16,38,70,.22)}.modal-title{display:flex;gap:12px;align-items:center;margin-bottom:19px}.modal-title h2{margin:0 0 3px}.modal-title p{margin:0;color:var(--muted);font-size:11px}.modal-icon{width:40px;height:40px;border-radius:11px;background:#edf4ff;color:var(--blue);display:grid;place-items:center}.modal-icon svg{width:19px;height:19px}.form-grid{gap:14px}.form-field{font-size:11px;font-weight:570}.form-field input,.form-field select,.form-field textarea{font-weight:400;border-color:#dce3ec;border-radius:8px}.form-field select[multiple]{min-height:86px}.form-field small{font-weight:400;color:#929dac}.reference-hint{padding:9px 11px;border-radius:8px;background:#f3f7fd;color:#607392;font-size:11px}.create-menu{display:grid;grid-template-columns:1fr 1fr;gap:10px}.create-menu button{border:1px solid #e1e7ef;border-radius:10px;background:#fff;display:grid;grid-template-columns:36px 1fr 18px;grid-template-rows:auto auto;text-align:left;padding:13px;column-gap:10px}.create-menu button:hover{border-color:#b7caf0;background:#f9fbff;transform:translateY(-1px);box-shadow:0 8px 20px rgba(26,56,96,.06)}.create-menu button>span{grid-row:1/3;width:35px;height:35px;border-radius:9px;background:#eef4ff;color:var(--blue);display:grid;place-items:center}.create-menu svg{width:17px;height:17px}.create-menu b{font-size:12px}.create-menu small{font-size:9px;color:#8b97a8;margin-top:4px}.create-menu i{grid-column:3;grid-row:1/3;align-self:center;color:#9aa5b4;font-style:normal}.upload-dropzone{padding:18px;border:1px dashed #b9c9df;border-radius:10px;background:#f8fbff}.upload-dropzone span{display:block;color:#8190a6;margin-top:7px}.day-event-list{display:grid;gap:7px}.day-event{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;border:1px solid #e5eaf1;background:#fff;border-radius:9px;padding:9px;text-align:left}.day-event:hover{background:#f8fbff;border-color:#c6d7f2}.day-event div{display:grid;gap:3px}.day-event b{font-size:12px}.day-event small{font-size:9px;color:#8995a6}.event-badge{width:28px;height:28px;border-radius:8px;background:#edf4ff;color:#2868ed;display:grid;place-items:center}.event-badge.meeting{background:#f2edff;color:#7353cf}.event-badge.report{background:#eaf8f2;color:#21845f}.event-badge.delivery{background:#fff4e3;color:#b87918}
.drawer{width:min(790px,94vw)}.drawer-head{padding:22px 25px 14px}.drawer-head h2{font-size:21px}.drawer-body{padding:22px 25px 55px}.drawer-tabs button{font-size:11px}.detail-grid{gap:10px 20px}.field{padding:11px 3px}.process{background:#f8faff;border:1px solid #e7edf6;border-radius:11px;margin-bottom:15px}.process-step b{font-size:10px}.timeline-item p{background:#f8fafc;border-radius:8px;padding:9px 11px}
@media(max-width:1280px){.hero-orbit{margin-right:15px}.cards-grid{grid-template-columns:repeat(2,minmax(270px,1fr))}.event-legend{display:none}.metric strong{font-size:25px}}
@media(max-width:760px){.premium-hero{min-height:auto}.hero-orbit{display:none}.metric-grid{grid-template-columns:1fr 1fr}.metric{min-height:112px}.create-menu{grid-template-columns:1fr}.cards-grid{grid-template-columns:1fr}.calendar-day{min-height:86px}.view-types button span{display:none}.module-layout{display:block}.premium-page-head{align-items:flex-start}.head-actions{flex-wrap:wrap}.card-facts{grid-template-columns:1fr 1fr}}
.project-card-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0;padding:12px;background:#f7f9fd;border:1px solid #e9eef6;border-radius:10px}.project-card-stats span{min-width:0}.project-card-stats small{display:block;color:#8a96aa;font-size:9px;margin-bottom:4px}.project-card-stats b{display:block;color:#23324a;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.risk-note{margin-top:12px;padding:9px 11px;border-radius:8px;background:#fff3f1;color:#b6423b;font-size:11px;border-left:3px solid #e45d57}.data-card{overflow:auto}.data-table{min-width:1120px}.data-table th{position:sticky;top:0;z-index:1;background:#f8fafe;box-shadow:inset 0 -1px #e8edf5}
.process-v31{overflow:auto;padding:18px 8px}.process-v31 .process-step{min-width:112px}.process-v31 .process-step small{white-space:normal;line-height:1.45;min-height:42px;padding:0 5px}.process-v31 .process-step em{font-style:normal;font-size:9px;color:#8996a9;margin-top:6px}.process-v31 .process-step.current em{color:#246bfe;font-weight:700}.process-v31 .process-step.done em{color:#23976b}
.task-row{grid-template-columns:30px minmax(0,1fr);padding:0;border-top:1px solid #eef2f7;cursor:default}.task-row>.check{margin-left:6px;display:grid;place-items:center;transition:.16s}.task-row>.check span{opacity:0;color:#fff;font-size:11px;font-weight:800}.task-row>.check:hover{border-color:#4e83e7;background:#edf4ff;box-shadow:0 0 0 4px #f1f5fc}.task-row.done>.check span{opacity:1}.task-open{min-width:0;border:0;background:transparent;display:grid;grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:12px;text-align:left;padding:12px 8px;color:inherit}.task-open:hover{background:#f8faff}.task-row.done .task-title{text-decoration:line-through;color:#8995a7}.row-arrow{font-size:18px;color:#a1acba}.text-link{border:0;background:transparent;color:#246bfe;font-size:11px}.project-quick-list{padding:0 16px 14px}.project-quick-row{width:100%;display:grid;grid-template-columns:8px minmax(150px,1.5fr) minmax(110px,1fr) 62px 86px 35px 12px;align-items:center;gap:10px;border:0;border-top:1px solid #eef2f6;background:#fff;padding:12px 4px;text-align:left;color:#344158}.project-quick-row:hover{background:#f8faff}.project-quick-row>div:nth-child(2){min-width:0;display:grid;gap:4px}.project-quick-row b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-quick-row small{font-size:9px;color:#8b97a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-health{width:7px;height:7px;border-radius:50%;background:#27ae7a}.project-health.warning{background:#f2a93b}.project-health.danger{background:#e45d57}.project-stage{font-size:10px;color:#526582;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-task-count{font-size:10px;color:#7a8799}.project-mini-progress{height:5px;background:#edf1f6;border-radius:4px;overflow:hidden}.project-mini-progress i{display:block;height:100%;background:#246bfe;border-radius:4px}.project-quick-row>strong{font-size:11px;color:#304565}.toolbar-actions{display:flex;align-items:center;gap:7px;min-width:0}.filter-chip{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;flex:0 0 auto}.filter-chip svg{width:14px!important;height:14px!important;min-width:14px;display:block}.filter-chip.active{box-shadow:inset 0 0 0 1px #8cb0f5}.view-toolbar{height:auto;min-height:55px;flex-wrap:wrap;overflow:visible}.view-types{flex:0 0 auto}.task-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.task-kpis>div{background:#fff;border:1px solid #e0e7f0;border-radius:11px;padding:17px}.task-kpis small{color:#8591a3}.task-kpis b{display:block;font-size:25px;margin-top:7px}.task-kpis .danger b{color:#d7544e}.dashboard-panel{padding-bottom:18px}.status-bars{display:grid;gap:12px;padding:0 20px}.status-bar{display:grid;grid-template-columns:82px 1fr 30px;align-items:center;gap:12px;border:0;background:transparent;text-align:left}.status-bar>i{height:8px;background:#edf1f6;border-radius:5px;overflow:hidden}.status-bar>i b{display:block;height:100%;background:linear-gradient(90deg,#246bfe,#75a5ff);border-radius:5px}.status-bar>strong{text-align:right;color:#3b4a60}.gantt-v31 .gantt-head,.gantt-v31 .gantt-row{grid-template-columns:230px minmax(850px,1fr)}.gantt-v31 .gantt-days{grid-template-columns:repeat(35,1fr)}.gantt-v31 .gantt-label{display:grid;gap:3px}.gantt-v31 .gantt-label small{font-size:9px;color:#8c98a8;font-weight:400}.gantt-v31 .gantt-track{background:repeating-linear-gradient(90deg,transparent,transparent calc(2.857% - 1px),#edf1f6 2.857%)}.gantt-v31 .gantt-bar{display:flex;justify-content:space-between;gap:8px}.gantt-v31 .gantt-bar em{font-style:normal;opacity:.8}.gantt-v31 .gantt-bar.done{background:linear-gradient(90deg,#27ae7a,#65caa4)}
@media(max-width:1000px){.project-quick-row{grid-template-columns:8px minmax(140px,1fr) 80px 55px 12px}.project-quick-row .project-task-count,.project-mini-progress{display:none}.toolbar-actions{width:100%;overflow:auto}.task-kpis{grid-template-columns:repeat(2,1fr)}}
.task-row>.check{position:relative;display:block;padding:0;line-height:0}.task-row>.check span{display:none!important}.task-row>.check:after{content:"";position:absolute;display:none;left:50%;top:45%;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:translate(-50%,-50%) rotate(45deg);transform-origin:center}.task-row.done>.check:after{display:block}
.edit-hint{margin-bottom:14px;padding:10px 12px;border-radius:8px;background:#f2f7ff;color:#526b91;font-size:11px;border:1px solid #dce8fa}.field-value{width:100%;min-height:32px;border:0;background:transparent;padding:4px 3px;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;color:#26344a;border-radius:6px}.field-value strong{font-size:13px;line-height:1.55}.field-editable .field-value:hover{background:#edf4ff;box-shadow:inset 0 0 0 1px #b9cff6}.field-pencil{opacity:.45;color:#246bfe;font-size:14px}.field-editable .field-value:hover .field-pencil{opacity:1}.event.more{cursor:pointer;border:1px dashed #aac4ef!important;background:#f7faff!important;color:#246bfe!important;text-align:center}.event.more:hover{background:#eaf2ff!important}
.operations-card{margin-top:16px;padding:24px}.backup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.backup-grid>div{padding:18px;border:1px solid var(--line,#e6ebf2);border-radius:12px;background:#f8faff;display:flex;flex-direction:column;gap:8px}.backup-grid small{color:#7b879b}.backup-grid b{font-size:17px;color:#1d2638}.conversion-card{margin-top:20px;padding:20px;border:1px solid #cbdcff;border-radius:14px;background:#f4f8ff}.conversion-card p{color:#65738a}.business-switch{overflow-x:auto;white-space:nowrap}@media(max-width:800px){.backup-grid{grid-template-columns:1fr}}
.home-task-categories{margin:0 0 16px;overflow:hidden}.task-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 20px 20px}.task-category-card{min-width:0;border:1px solid #e2e8f1;border-radius:12px;background:#fff;padding:15px;text-align:left;color:var(--text);box-shadow:0 3px 10px rgba(21,49,86,.025)}.task-category-card:hover{transform:translateY(-2px);border-color:#b8cef2;box-shadow:0 12px 25px rgba(25,57,100,.08)}.task-category-card.customer_follow{background:linear-gradient(145deg,#fff,#f4f8ff)}.task-category-card.project_execution{background:linear-gradient(145deg,#fff,#f2fbf7)}.task-category-card.internal{background:linear-gradient(145deg,#fff,#faf7ff)}.task-category-card.unclassified{background:linear-gradient(145deg,#fff,#f8f9fb)}.task-category-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-category-top strong{font-size:26px;line-height:1;color:#273750}.task-category-card>p{min-height:32px;margin:10px 0 8px;color:#7c899c;font-size:10px;line-height:1.55}.task-category-summary{display:flex;gap:10px;color:#53637a;font-size:9px}.task-category-preview{display:grid;gap:5px;margin:12px 0;min-height:43px}.task-category-preview>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:9px;position:relative;color:#33435b;font-size:10px}.task-category-preview>span:before{content:"";position:absolute;left:0;top:6px;width:3px;height:3px;border-radius:50%;background:#87a8dd}.task-category-preview .empty-preview{color:#9aa5b4}.task-category-card>small{display:flex;justify-content:space-between;color:#6b7d96;font-size:9px}.task-category-card>small i{font-style:normal;color:#246bfe}.task-type-badge,.task-subtype-badge{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border-radius:5px;font-size:9px;font-weight:680;line-height:1.2;white-space:nowrap}.task-type-badge.customer{color:#1f5dbd;background:#eaf2ff;border:1px solid #d7e6ff}.task-type-badge.project{color:#167451;background:#e9f8f1;border:1px solid #d2efe2}.task-type-badge.internal{color:#6848aa;background:#f2edff;border:1px solid #e4dbfb}.task-type-badge.unclassified{color:#6d7786;background:#f0f2f5;border:1px solid #e2e6eb}.task-subtype-badge{color:#6d788a;background:#f6f7f9;border:1px solid #e7eaee;font-weight:520}.task-row-classification{display:flex;gap:5px;align-items:center;margin-top:6px}.task-row-classification+.task-meta{margin-top:5px}
.home-task-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:3px 1px}.home-task-group{border:1px solid #e4eaf2;border-radius:11px;overflow:hidden;background:#fff}.home-task-group>header{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid #e9edf3}.home-task-group>header strong{font-size:10px;color:#77859a}.home-task-group.customer{border-top:3px solid #4d83e5;background:#fbfdff}.home-task-group.project{border-top:3px solid #2eae7c;background:#fbfefc}.home-task-group.internal{border-top:3px solid #8667d4;background:#fdfcff}.home-task-group.unclassified{border-top:3px solid #9ca6b4;background:#fcfcfd}.home-task-group .task-row{background:transparent}.home-task-group .task-row:first-child{border-top:0}.home-task-group .task-open{padding:11px 7px}.home-task-group .task-row-classification{flex-wrap:wrap}.home-insight{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.insight-card{overflow:hidden}.insight-list{padding:0 16px 15px}.insight-row{width:100%;display:grid;grid-template-columns:32px minmax(0,1fr) 12px;gap:10px;align-items:center;border:0;border-top:1px solid #edf1f6;background:transparent;padding:11px 3px;text-align:left;color:#334158}.insight-row:hover{background:#f8faff}.insight-row>span:nth-child(2){min-width:0;display:grid;gap:4px}.insight-row b,.insight-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.insight-row b{font-size:11px}.insight-row small{font-size:9px;color:#8895a7}.insight-row>i{font-style:normal;color:#a0acbb;font-size:17px}.insight-icon{width:30px;height:30px;border-radius:8px;background:#edf4ff;color:#246bfe;display:grid;place-items:center;font-size:11px;font-weight:750}.health-dot{width:8px;height:8px;margin-left:11px;border-radius:50%;background:#27ae7a}.health-dot.warning{background:#f2a93b}.health-dot.danger{background:#e45d57}.empty-inline{padding:28px;text-align:center;color:#929daf;font-size:11px}
@media(max-width:1100px){.task-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-task-groups{grid-template-columns:1fr}}@media(max-width:760px){.home-insight{grid-template-columns:1fr}}@media(max-width:640px){.task-category-grid{grid-template-columns:1fr}.task-category-card>p{min-height:0}}

/* Reader Data V6 — configurable Feishu-style business grid */
.feishu-grid{table-layout:auto;min-width:max-content}.feishu-grid th{height:42px;border-right:1px solid #e8edf4;white-space:nowrap}.feishu-grid td{height:46px;border-right:1px solid #f0f3f7;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feishu-grid .frozen-cell:first-child{position:sticky;left:0;z-index:3;background:#fff;box-shadow:1px 0 #e5eaf1}.feishu-grid th.frozen-cell:first-child{z-index:5;background:#f8fafc}.column-grip{float:right;margin-left:10px;color:#b7c0ce}.v6-cell[data-editable]{cursor:cell}.v6-cell[data-editable]:hover{background:#eef5ff;box-shadow:inset 0 0 0 1px #86aefb}.cell-editor{width:100%;min-width:90px;border:1px solid #246bfe;border-radius:5px;padding:6px 7px;background:#fff;outline:3px solid rgba(36,107,254,.12)}.compact-grid .feishu-grid td{height:34px;padding-top:5px;padding-bottom:5px}.grid-add-row{position:sticky;left:0;width:100%;height:40px;border:0;border-top:1px solid #e7ebf2;background:#fff;text-align:left;padding-left:16px;color:#6a7890}.grid-add-row:hover{background:#f6f9ff;color:#246bfe}.grid-progress{display:flex;align-items:center;gap:7px}.grid-progress>span{width:34px}.grid-progress>i{width:58px;height:6px;border-radius:4px;background:#edf1f6;overflow:hidden}.grid-progress>i>b{display:block;height:100%;background:#246bfe}.field-config-list{display:grid;gap:6px;margin-bottom:16px;max-height:390px;overflow:auto}.field-config-row{display:grid;grid-template-columns:24px 1fr 86px 30px 30px;align-items:center;gap:7px;padding:8px;border:1px solid #e7ecf3;border-radius:8px}.field-config-row input[type=number]{width:80px;border:1px solid #dfe5ed;border-radius:6px;padding:5px}.field-config-row button{height:28px;border:1px solid #dfe5ed;border-radius:6px;background:#fff;color:#637188}.process-v6{padding:18px 2px 24px}.process-v6 .process-step{min-width:136px}.process-v6 .process-step small{display:block;max-width:116px;margin:5px auto 0;line-height:1.35}.process-v6 .process-step em{display:inline-block;margin-top:5px;padding:2px 7px;border-radius:10px;background:#f1f4f8;color:#8a96a8;font-size:9px;font-style:normal}.process-v6 .current em{background:#e9f1ff;color:#246bfe}.process-v6 .conversion-node .process-dot{box-shadow:0 0 0 5px #fff4db}.project-conversion-banner{display:grid;grid-template-columns:1.3fr auto auto auto;align-items:center;gap:20px;border:1px solid #dfe6f0;border-radius:12px;padding:14px 16px;margin-bottom:14px;background:#f8fafc}.project-conversion-banner.success{border-color:#bfe7d6;background:#f0faf6}.project-conversion-banner div{display:grid;gap:4px}.project-conversion-banner small{color:#7d899b}.project-conversion-banner b{font-size:17px}.project-conversion-banner strong{font-size:19px;color:#123f82}.business-checkpoints{display:grid;grid-template-columns:1fr 40px 1fr 40px 1fr;align-items:center;margin:6px 0 24px}.business-checkpoints>div{display:grid;grid-template-columns:36px 1fr;column-gap:10px;align-items:center;padding:14px;border:1px solid #e1e7ef;border-radius:11px}.business-checkpoints>div>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#edf1f6;color:#7c899b}.business-checkpoints>div.done{border-color:#bce5d4;background:#f0faf6}.business-checkpoints>div.done>span{background:#27ae7a;color:#fff}.business-checkpoints small{color:#8792a3}.business-checkpoints>i{height:2px;background:#dfe5ed}.v6-business-metrics{grid-template-columns:repeat(3,1fr)}.execution-mode{padding:17px;border:1px solid #dce6f5;border-radius:12px;background:#f8fbff;margin-bottom:18px}.execution-template{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.execution-template>div{display:flex;align-items:center;gap:9px;padding:12px;background:#fff;border:1px solid #e4eaf2;border-radius:9px}.execution-template span{width:25px;height:25px;border-radius:7px;background:#eaf1ff;color:#246bfe;display:grid;place-items:center}.v6-operating-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin:-3px 0 16px;border:1px solid #e1e7f0;border-radius:12px;overflow:hidden;background:#e7ebf2}.v6-operating-strip button{border:0;background:#fff;padding:14px 12px;text-align:left}.v6-operating-strip button:hover{background:#f2f7ff}.v6-operating-strip small{display:block;color:#8490a2}.v6-operating-strip b{display:block;margin-top:6px;font-size:18px;color:#1e2d44}.v6-operating-strip button:nth-child(3) b{color:#e09a2f}.v6-operating-strip button:nth-child(4) b{color:#22976b}
@media(max-width:1100px){.v6-operating-strip{grid-template-columns:repeat(4,1fr)}.execution-template{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.v6-operating-strip{grid-template-columns:repeat(2,1fr)}.project-conversion-banner{grid-template-columns:1fr 1fr}.business-checkpoints{grid-template-columns:1fr;gap:8px}.business-checkpoints>i{display:none}.execution-template{grid-template-columns:1fr}}
.grid-group-row td{position:relative!important;left:auto!important;height:34px!important;padding:7px 12px!important;background:#f4f7fb!important;border-top:1px solid #dfe6ef;border-bottom:1px solid #e4eaf2;color:#40516b}.grid-group-row b{font-size:11px}.grid-group-row span{margin-left:9px;color:#8a96a8;font-size:9px}.sort-indicator{display:inline-block;margin-left:6px;color:#246bfe;font-weight:800}.filter-chip.active{background:#eaf2ff!important;color:#1f62df!important;border-color:#aac4f2!important}

/* Reader Data V6.1 — explicit single/multi/reference input semantics */
.typed-choice-form .form-grid{align-items:start}.choice-legend{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:9px 16px;padding:11px 13px;border:1px solid #dce6f4;border-radius:10px;background:#f7faff;color:#65758d;font-size:10px}.choice-legend b{color:#263750}.choice-legend span{display:inline-flex;align-items:center;gap:5px}.choice-legend i{width:7px;height:7px;border-radius:50%;display:inline-block}.single-dot{background:#246bfe}.multi-dot{background:#7357c8}.relation-dot{background:#26a877}.typed-choice-field{position:relative}.field-mode{display:inline-flex;align-items:center;margin-left:7px;padding:2px 6px;border-radius:9px;background:#eaf2ff;color:#246bfe;font-size:8px;font-weight:700;vertical-align:1px}.field-mode.multi{background:#f1edff;color:#694bb5}.field-mode.relation{background:#eaf8f2;color:#19845d}.choice-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;padding:0!important;border:0!important}.smart-choice{position:relative;margin-top:6px}.choice-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;border:1px solid #dce3ed;border-radius:8px;background:#fff;overflow:hidden;transition:.16s}.choice-search-row:focus-within{border-color:#6e9cf1;box-shadow:0 0 0 3px rgba(36,107,254,.1)}.choice-search{height:37px!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0 11px!important}.choice-clear{border:0;border-left:1px solid #e5eaf1;background:#f8fafc;padding:0 11px;color:#728098;font-size:9px}.choice-selected{display:flex;align-items:center;flex-wrap:wrap;gap:5px;min-height:25px;margin-bottom:5px}.choice-placeholder{color:#9aa5b4;font-size:9px}.choice-tag{display:inline-flex;align-items:center;gap:5px;max-width:100%;border:1px solid #cfe0fa;border-radius:6px;background:#edf4ff;color:#285da9;padding:4px 7px;font-size:9px}.choice-tag i{font-style:normal;color:#7892b8}.choice-options{position:absolute;left:0;right:0;top:69px;z-index:80;max-height:230px;overflow:auto;padding:5px;background:#fff;border:1px solid #dbe3ee;border-radius:9px;box-shadow:0 16px 36px rgba(22,45,78,.16)}.choice-options.hidden{display:none}.choice-option{width:100%;min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;border-radius:6px;background:#fff;padding:7px 9px;text-align:left;color:#34445c;font-size:10px}.choice-option:hover{background:#f1f6ff}.choice-option.selected{background:#eaf2ff;color:#205fc8;font-weight:650}.choice-option i{font-style:normal;color:#246bfe}.choice-empty{padding:20px;text-align:center;color:#98a3b3;font-size:10px}.smart-choice>small{display:block;margin-top:6px!important;color:#8996a8!important;line-height:1.45}.task-dynamic .smart-choice,.task-more .smart-choice{width:100%}
@media(max-width:640px){.choice-legend{display:grid;grid-template-columns:1fr 1fr}.choice-legend b{grid-column:1/-1}}

/* Reader Data V6.2 — Feishu-style cell-first editing */
.grid-edit-guide{position:sticky;left:0;display:flex;align-items:center;gap:18px;min-height:38px;padding:8px 13px;border-bottom:1px solid #e7ecf3;background:#f8faff;color:#738198;font-size:9px}.grid-edit-guide span{display:inline-flex;align-items:center;gap:5px}.grid-edit-guide i{min-width:18px;height:18px;display:grid;place-items:center;border-radius:5px;background:#eaf2ff;color:#246bfe;font-style:normal}.v6-cell{position:relative;padding-right:25px!important}.v6-cell .cell-affordance{position:absolute;right:7px;top:50%;transform:translateY(-50%);opacity:0;color:#8da1bf;font-size:10px;pointer-events:none}.v6-cell:hover .cell-affordance,.v6-cell.cell-selected .cell-affordance{opacity:1}.v6-cell.cell-can-edit{cursor:text}.v6-cell.cell-can-edit:hover{background:#f0f6ff;box-shadow:inset 0 0 0 1px #8eb4f6}.v6-cell.cell-readonly{cursor:default}.v6-cell.cell-readonly:hover{background:#f8fafc}.v6-cell.cell-selected{background:#edf4ff!important;box-shadow:inset 0 0 0 2px #4f86ea!important}.v6-cell.cell-editing{padding:3px 5px!important;background:#fff!important;box-shadow:inset 0 0 0 2px #246bfe!important}.v6-cell.cell-editing .cell-editor{height:34px;margin:0;outline:0;border:0;border-radius:3px}.grid-action-head{position:sticky!important;right:0;z-index:6!important;min-width:76px;background:#f8fafc!important;box-shadow:-1px 0 #e4eaf1}.grid-row-action{position:sticky;right:0;z-index:4;min-width:76px;padding:0 8px!important;background:#fff;box-shadow:-1px 0 #edf1f5}.grid-row-action button{width:100%;height:29px;border:0;border-radius:6px;background:transparent;color:#4d6f9f;font-size:9px}.grid-row-action button:hover{background:#eaf2ff;color:#1f63dc}.compact-grid .grid-edit-guide{min-height:32px}.compact-grid .grid-row-action button{height:25px}
.grid-action-head,.grid-row-action{position:static!important;right:auto!important;z-index:auto!important}

/* Reader Data V6.3 — interactive project stage map and project asset library */
.modal:has(.stage-modal-title){width:min(980px,94vw)}.project-stage-map{margin:0 0 18px;border:1px solid #dfe7f2;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f6f9fe);overflow:hidden}.stage-map-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 18px;border-bottom:1px solid #e8edf4}.stage-map-head h3{margin:3px 0 2px;font-size:16px}.stage-map-head p{margin:0;color:#8190a5;font-size:10px}.stage-map-legend{display:flex;gap:12px;flex-wrap:wrap}.stage-map-legend span{display:inline-flex;align-items:center;gap:5px;color:#768398;font-size:9px}.stage-map-legend span:before{content:"";width:8px;height:8px;border-radius:50%;background:#cbd4e0}.stage-map-legend .done:before{background:#27ae7a}.stage-map-legend .current:before{background:#246bfe}.stage-map-legend .risk:before{background:#e45d57}.stage-flow-scroll{overflow-x:auto;padding:19px 17px 22px}.stage-flow-line{display:flex;align-items:center;min-width:max-content}.stage-node-card{width:190px;min-height:190px;display:flex;flex-direction:column;align-items:stretch;text-align:left;border:1px solid #dfe5ed;border-radius:12px;background:#fff;padding:13px;position:relative;box-shadow:0 4px 14px rgba(33,57,90,.035);transition:.18s}.stage-node-card:hover{transform:translateY(-2px);border-color:#91b2ef;box-shadow:0 10px 25px rgba(31,76,143,.11)}.stage-node-card.done{border-color:#bfe5d4;background:#f5fcf8}.stage-node-card.current{border:2px solid #3f7cf0;background:#f4f8ff;box-shadow:0 8px 24px rgba(36,107,254,.15)}.stage-node-card.risk{border-color:#e77974;background:#fff8f7}.stage-node-index{position:absolute;right:11px;top:11px;width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:#edf1f6;color:#6d7b90;font-weight:800}.stage-node-card.done .stage-node-index{background:#27ae7a;color:#fff}.stage-node-card.current .stage-node-index{background:#246bfe;color:#fff}.stage-node-card.risk .stage-node-index{background:#e45d57;color:#fff}.stage-node-copy{display:grid;gap:4px;padding-right:34px}.stage-node-copy small{font-size:8px;color:#7f8da2;letter-spacing:.08em}.stage-node-copy b{min-height:34px;font-size:13px;line-height:1.35;color:#24334a}.stage-node-copy em{min-height:28px;color:#7b889b;font-size:9px;line-height:1.45;font-style:normal}.stage-node-facts{display:grid;gap:4px;margin-top:12px;padding-top:10px;border-top:1px dashed #dfe6ef}.stage-node-facts i,.stage-node-counts i{font-size:8px;color:#6f7e93;font-style:normal}.stage-node-counts{display:flex;justify-content:space-between;margin-top:auto;padding-top:11px}.stage-node-counts i{padding:3px 6px;border-radius:8px;background:#eef3f9}.stage-flow-arrow{width:32px;text-align:center;color:#a8b5c6;font-size:18px}.stage-modal-title{align-items:center}.stage-modal-title .modal-icon{font-size:14px;font-weight:800}.stage-status-pill{margin-left:auto;padding:5px 9px;border-radius:12px;background:#eef2f7;color:#647389;font-size:9px}.stage-status-pill.current{background:#eaf2ff;color:#246bfe}.stage-status-pill.done{background:#eaf8f2;color:#21845e}.stage-modal-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:18px}.stage-modal-grid>aside{border-left:1px solid #e8edf3;padding-left:18px}.stage-panel-head{display:flex;align-items:center;justify-content:space-between;margin:4px 0 9px}.stage-panel-head h3{margin:0;font-size:13px}.stage-panel-head button{height:29px;font-size:9px}.stage-condition-card{display:grid;gap:7px;margin-top:13px;padding:12px;border:1px solid #dfe7f2;border-radius:10px;background:#f7faff}.stage-condition-card b{font-size:11px}.stage-condition-card span{position:relative;padding-left:15px;color:#6f7e92;font-size:9px}.stage-condition-card span:before{content:"✓";position:absolute;left:0;color:#27ae7a}.stage-task-list,.stage-asset-list{display:grid;gap:6px;margin-bottom:17px}.stage-task-list button,.stage-asset-list button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;width:100%;border:1px solid #e4e9f0;border-radius:8px;background:#fff;padding:8px;text-align:left}.stage-task-list button:hover,.stage-asset-list button:hover{border-color:#aac4f1;background:#f7faff}.stage-task-list b,.stage-asset-list b{font-size:10px}.stage-task-list small,.stage-asset-list small{display:block;color:#8894a5;font-size:8px}.stage-task-list>button>small{white-space:nowrap}.stage-task-check{width:19px;height:19px;display:grid;place-items:center;border:1px solid #cbd4e1;border-radius:50%;font-size:9px}.stage-task-check.done{background:#27ae7a;border-color:#27ae7a;color:#fff}.stage-asset-list button>span svg{width:17px;color:#246bfe}.stage-asset-list button>i{font-size:8px;color:#5173a5;font-style:normal}.stage-empty{padding:18px;border:1px dashed #dce3ec;border-radius:9px;background:#fafbfd;text-align:center;color:#96a1b1;font-size:9px}.stage-modal-actions{position:sticky;bottom:-21px;margin:18px -21px -21px;padding:13px 21px;border-top:1px solid #e7ebf1;background:#fff}.danger-text{color:#c9504b!important}.project-assets-summary{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;margin-bottom:12px;border:1px solid #dce6f4;border-radius:12px;background:#f7faff}.project-assets-summary h3{margin:3px 0;font-size:15px}.project-assets-summary p{margin:0;color:#8491a4;font-size:9px}.project-assets-summary>strong{font-size:27px;color:#123f82}.project-assets-summary>strong small{display:block;font-size:8px;color:#8793a4;text-align:center}.project-asset-group{margin-bottom:12px;border:1px solid #e3e9f1;border-radius:11px;overflow:hidden}.project-asset-group-head{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;background:#fafbfd;border-bottom:1px solid #edf0f4}.project-asset-group-head h3{display:inline;margin:0 8px 0 0;font-size:12px}.project-asset-group-head span{color:#8a96a7;font-size:8px}.project-asset-group-head button{height:27px;font-size:8px}.project-asset-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px}.project-asset-cards>button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;border:1px solid #e4eaf2;border-radius:9px;background:#fff;padding:10px;text-align:left}.project-asset-cards>button:hover{border-color:#9db9ea;background:#f8fbff}.asset-file-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#eaf2ff;color:#246bfe}.asset-file-icon svg{width:18px}.project-asset-cards b{display:block;font-size:10px}.project-asset-cards small,.project-asset-cards em{display:block;margin-top:3px;color:#8390a3;font-size:8px;font-style:normal}.project-asset-cards>button>i{font-size:8px;color:#5475a5;font-style:normal}.service-report-head>div:last-child{display:flex;gap:7px}.client-report-list{display:grid;gap:7px;margin:10px 0 20px}.client-report-list>button{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;border:1px solid #e2e8f0;border-radius:9px;background:#fff;padding:10px;text-align:left}.client-report-list>button:hover{border-color:#9db9ea;background:#f8fbff}.client-report-list b{font-size:11px}.client-report-list small{display:block;margin-top:3px;color:#8490a2;font-size:8px}.client-report-list i,.client-report-list em{font-size:8px;color:#5776a4;font-style:normal}
@media(max-width:850px){.stage-modal-grid{grid-template-columns:1fr}.stage-modal-grid>aside{border-left:0;border-top:1px solid #e8edf3;padding:16px 0 0}.project-asset-cards{grid-template-columns:1fr}.stage-map-head{align-items:flex-start;flex-direction:column}.stage-node-card{width:170px}.stage-map-legend{gap:8px}}

/* Reader Data V6.4 — project-center-first node flow */
.project-flow-view{display:grid;gap:12px}.project-flow-command{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:center;gap:14px;padding:17px 19px;background:linear-gradient(110deg,#fff 0,#f7faff 100%)}.project-flow-command h2{margin:3px 0 4px;font-size:17px}.project-flow-command p{margin:0;color:#7d899b;font-size:10px}.project-flow-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.project-flow-actions button{height:31px;padding:0 10px;border:1px solid #e0e6ef;border-radius:7px;background:#fff;color:#65738a;font-size:9px}.project-flow-actions button:hover,.project-flow-actions button.active{border-color:#a9c3f0;background:#eaf2ff;color:#205fc8}.project-flow-legend{grid-column:1/-1;display:flex;align-items:center;gap:15px;padding-top:10px;border-top:1px solid #edf1f6}.project-flow-legend span{display:inline-flex;align-items:center;gap:6px;color:#7a8799;font-size:9px}.project-flow-legend span:before{content:"";width:8px;height:8px;border-radius:50%;background:#c9d1dd}.project-flow-legend .done:before{background:#27ae7a}.project-flow-legend .current:before{background:#246bfe}.project-flow-legend .warning:before{background:#f2a93b}.project-flow-legend .risk:before{background:#e45d57}.project-flow-row{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:204px;overflow:hidden;box-shadow:0 5px 18px rgba(27,54,91,.045);transition:.18s}.project-flow-row:hover{border-color:#cbd9ee;box-shadow:0 10px 30px rgba(27,54,91,.075)}.project-flow-row.converted{border-left:3px solid #27ae7a}.project-flow-summary{display:flex;flex-direction:column;gap:10px;padding:15px 16px;background:linear-gradient(150deg,#fbfdff,#f5f8fd);border-right:1px solid #e5eaf1}.project-flow-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.project-flow-title>button{min-width:0;display:grid;gap:3px;border:0;background:transparent;padding:0;text-align:left;color:#223149}.project-flow-title>button:hover strong{color:#246bfe}.project-flow-title strong{display:block;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.project-flow-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px}.project-flow-meta button{min-width:0;display:grid;gap:2px;border:1px solid #e5eaf1;border-radius:7px;background:#fff;padding:7px;text-align:left;color:#33435b}.project-flow-meta button[data-flow-customer],.project-flow-meta button[data-flow-person]{cursor:pointer}.project-flow-meta button[data-flow-customer]:hover,.project-flow-meta button[data-flow-person]:hover{border-color:#a8c3f2;background:#f7faff}.project-flow-meta small,.project-flow-latest small{color:#8b96a6;font-size:8px}.project-flow-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.project-flow-tags{display:flex;gap:5px;flex-wrap:wrap}.project-flow-tags .tag{min-height:19px;padding:2px 6px;font-size:8px}.project-flow-latest{min-height:42px}.project-flow-latest p{display:-webkit-box;margin:3px 0 0;overflow:hidden;color:#66748a;font-size:9px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.project-flow-detail{display:flex;align-items:center;justify-content:space-between;margin-top:auto;border:0;border-top:1px solid #e7ecf3;background:transparent;padding:8px 0 0;color:#3f679f;font-size:9px}.project-flow-detail:hover{color:#246bfe}.project-flow-track-wrap{min-width:0;overflow-x:auto;padding:14px 15px 17px;background:#fff}.project-flow-track{display:flex;align-items:stretch;min-width:max-content;height:100%}.project-flow-node-wrap{display:flex;align-items:center}.project-flow-node{width:128px;min-height:172px;display:flex;flex-direction:column;align-items:stretch;border:1px solid #dfe5ed;border-radius:10px;background:#fff;padding:10px;text-align:left;color:#334157;transition:.16s}.project-flow-node:hover{transform:translateY(-2px);border-color:#8fb1ee;box-shadow:0 9px 20px rgba(31,72,132,.12)}.project-flow-node.done{border-color:#bfe3d2;background:#f5fcf8}.project-flow-node.current{border:2px solid #3678ef;background:#f3f7ff;box-shadow:0 6px 18px rgba(36,107,254,.14)}.project-flow-node.warning{border-color:#efc36e;background:#fffaf1}.project-flow-node.risk{border-color:#e57772;background:#fff7f6}.project-flow-node.conversion{box-shadow:0 0 0 4px #fff6df}.project-flow-node-top{display:flex;align-items:center;justify-content:space-between;gap:5px}.project-flow-node-top>i{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;background:#edf1f6;color:#6f7d90;font-size:9px;font-style:normal;font-weight:800}.project-flow-node.done .project-flow-node-top>i{background:#27ae7a;color:#fff}.project-flow-node.current .project-flow-node-top>i{background:#246bfe;color:#fff}.project-flow-node.warning .project-flow-node-top>i{background:#f2a93b;color:#fff}.project-flow-node.risk .project-flow-node-top>i{background:#e45d57;color:#fff}.project-flow-node-top>em{font-size:8px;color:#7d899b;font-style:normal}.project-flow-node.warning .project-flow-node-top>em{color:#b87918}.project-flow-node.risk .project-flow-node-top>em{color:#c64c47}.project-flow-node>b{display:flex;align-items:center;min-height:37px;margin:8px 0 2px;font-size:10px;line-height:1.35}.project-flow-node>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8390a3;font-size:8px}.project-flow-counts{display:flex;gap:4px;flex-wrap:wrap;margin-top:auto;padding-top:9px}.project-flow-counts i{padding:3px 5px;border-radius:6px;background:#eef2f7;color:#64738a;font-size:7px;font-style:normal}.project-flow-node time{display:block;margin-top:6px;padding-top:6px;border-top:1px dashed #dfe5ed;color:#77859a;font-size:7px}.project-flow-connector{width:22px;text-align:center;color:#b2bdca;font-size:15px}.project-flow-connector.done{color:#27ae7a}.project-flow-view.compact .project-flow-row{min-height:166px}.project-flow-view.compact .project-flow-node{width:112px;min-height:138px;padding:8px}.project-flow-view.compact .project-flow-node>b{min-height:29px;margin-top:5px}.project-flow-view.compact .project-flow-latest{display:none}.project-flow-view.compact .project-flow-summary{padding-top:11px;padding-bottom:11px}
@media(max-width:1200px){.project-flow-row{grid-template-columns:218px minmax(0,1fr)}.project-flow-node{width:120px}.project-flow-command{grid-template-columns:1fr}.project-flow-actions{justify-content:flex-start}}
@media(max-width:760px){.project-flow-command{padding:14px}.project-flow-legend{gap:9px;flex-wrap:wrap}.project-flow-row{grid-template-columns:1fr}.project-flow-summary{position:relative;border-right:0;border-bottom:1px solid #e5eaf1}.project-flow-title strong{max-width:240px}.project-flow-track-wrap{overflow:visible;padding:13px}.project-flow-track{display:grid;min-width:0;gap:0}.project-flow-node-wrap{display:grid;grid-template-columns:1fr}.project-flow-node{width:100%;min-height:0;display:grid;grid-template-columns:70px minmax(110px,1fr) 90px auto;align-items:center;gap:8px;border-radius:8px}.project-flow-node>b{min-height:0;margin:0}.project-flow-node>small{display:none}.project-flow-counts{margin:0;padding:0}.project-flow-node time{margin:0;padding:0;border:0;text-align:right}.project-flow-connector{width:auto;height:17px;display:grid;place-items:center;transform:rotate(90deg)}.project-flow-view.compact .project-flow-node{width:100%;min-height:0}.project-flow-view.compact .project-flow-latest{display:block}}
@media(max-width:480px){.project-flow-node{grid-template-columns:58px 1fr}.project-flow-counts,.project-flow-node time{grid-column:2;text-align:left}.project-flow-actions{display:grid;grid-template-columns:1fr 1fr}.project-flow-actions button{width:100%}}
