.prj-page>.toolbar{margin-block: 12px}.prj-lv{min-width: 0}.prj-page .btn.on{border-color: var(--accent);background: var(--accent-soft);color: var(--accent-d)}.prj-strip .stat.prj-bad .stat-value{color: var(--danger-ink)}.prj-strip .stat.prj-good .stat-value{color: var(--ok-ink)}.prj-h1{display: flex;align-items: center;gap: 10px;flex-wrap: wrap}.prj-dot{display: inline-block;width: 10px;height: 10px;border-radius: 50%;background: var(--accent);flex: 0 0 auto}.prj-dot.lg{width: 16px;height: 16px}.prj-chip{display: inline-flex;align-items: center;gap: 4px;padding: 2px 9px;border-radius: 999px;font-size: 12px;font-weight: 700;white-space: nowrap;max-width: 100%;text-decoration: none;background: var(--info-soft);color: var(--info-ink)}.prj-chip.tone-warn{background: var(--warn-soft);color: var(--warn-ink)}.prj-chip.tone-danger{background: var(--danger-soft);color: var(--danger-ink)}.prj-chip.tone-ok{background: var(--ok-soft);color: var(--ok-ink)}.prj-chip.tone-muted{background: var(--panel-3);color: var(--muted)}.prj-link-txt{overflow: hidden;text-overflow: ellipsis;max-width: 160px}a.prj-link:hover{text-decoration: underline}.prj-gone span:last-child{text-decoration: line-through}.prj-tags{display: inline-flex;flex-wrap: wrap;gap: 4px}.prj-tag{padding: 1px 8px;font-size: 12px}.prj-pill{display: inline-flex;align-items: center;gap: 6px;max-width: 100%;padding: 2px 10px;border: 1px solid var(--line);border-radius: 999px;background: var(--panel);color: var(--ink);font-size: 12.5px;font-weight: 650;text-decoration: none}.prj-pill:hover{border-color: var(--accent)}.prj-pill>span{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.prj-avs{display: inline-flex;align-items: center}.prj-av{box-shadow: inset 0 0 0 40px rgba(0,0,0,.35),0 0 0 2px var(--panel)}.prj-av + .prj-av{margin-inline-start: -8px}.prj-av-more{background: var(--muted);font-size: 11px}.prj-tick{appearance: none;-webkit-appearance: none;position: relative;display: inline-grid;place-content: center;flex: 0 0 auto;width: 22px;height: 22px;margin: 0;border: 2px solid var(--muted);border-radius: 50%;background: var(--panel);cursor: pointer}.prj-tick::before{content: "";position: absolute;inset: -11px}.prj-tick::after{content: "";width: 12px;height: 12px;background: var(--panel);clip-path: polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);transform: scale(0);transition: transform .12s}.prj-tick:checked{background: var(--ok);border-color: var(--ok)}.prj-tick:checked::after{transform: scale(1)}.prj-tick:disabled{cursor: not-allowed;opacity: .55}.prj-tick:focus-visible,.prj-swatch:focus-visible{outline: 2px solid var(--accent);outline-offset: 2px}.prj-name{min-width: 0;overflow-wrap: anywhere;line-height: 1.3}.prj-closed .prj-name{color: var(--muted);text-decoration: line-through}.prj-name-line{display: flex;align-items: center;gap: 10px;min-width: 0}.prj-sub-line{display: flex;flex-wrap: wrap;align-items: center;gap: 4px 6px;margin-top: 4px;padding-inline-start: 32px}.prj-sub-line:empty{display: none}.error-box .btn{margin-top: 8px}.prj-grid{display: grid;grid-template-columns: repeat(auto-fill,minmax(270px,1fr));gap: 14px}.prj-grid>.empty,.prj-grid>.error-box{grid-column: 1 / -1}.prj-pcard{display: grid;grid-template-rows: auto 1fr auto;min-width: 0;border: 1px solid var(--line);border-radius: var(--r);background: var(--panel);box-shadow: var(--shadow);overflow: hidden;cursor: pointer}.prj-pcard:hover,.prj-pcard:focus-visible{border-color: var(--accent);outline: 0}.prj-pcard.is-archived{opacity: .75}.prj-pbar{height: 6px;background: var(--accent)}.prj-pbody{display: grid;gap: 10px;align-content: start;padding: 14px 16px 12px;min-width: 0}.prj-phead{display: flex;align-items: center;justify-content: space-between;gap: 8px}.prj-phead h3{font-size: 16px;overflow-wrap: anywhere}.prj-pdesc{display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;font-size: 13px}.prj-pmeta,.prj-pcount{display: flex;flex-wrap: wrap;align-items: center;gap: 6px 10px}.prj-pmgr,.prj-pmembers{display: inline-flex;align-items: center;gap: 6px;font-size: 13px;color: var(--muted)}.prj-pfoot{display: flex;justify-content: flex-end;gap: 2px;padding: 4px 8px;border-top: 1px solid var(--line-2)}.prj-board{min-width: 0}.prj-kb .kb-col{flex: 1 0 272px;min-width: 250px;max-width: 340px}.prj-card{display: grid;gap: 8px;min-width: 0}.prj-card-name{overflow-wrap: anywhere;line-height: 1.3}.prj-card-chips,.prj-card-meta{display: flex;flex-wrap: wrap;align-items: center;gap: 4px 6px}.prj-card-chips:empty{display: none}.prj-card-foot{display: flex;align-items: center;justify-content: space-between;gap: 8px}.prj-card-meta{min-width: 0}.prj-card.is-cancelled .prj-card-name{text-decoration: line-through;color: var(--muted)}.prj-kb .kb-card:has(.prj-card.is-overdue){box-shadow: inset 3px 0 0 var(--danger),var(--shadow)}[dir="rtl"] .prj-kb .kb-card:has(.prj-card.is-overdue){box-shadow: inset -3px 0 0 var(--danger),var(--shadow)}.prj-stage-sel{display: none;width: 100%;min-height: 44px}.kb-card.prj-landed{animation: prj-land .26s ease-out}@keyframes prj-land{from{opacity: .35;transform: translateY(-10px) scale(.97)}to{opacity: 1;transform: none}}@media (prefers-reduced-motion: reduce){.kb-card.prj-landed{animation: none}}.prj-c-main{min-width: 220px}.prj-lv .data-table tr.prj-late>td:first-child{box-shadow: inset 3px 0 0 var(--danger)}[dir="rtl"] .prj-lv .data-table tr.prj-late>td:first-child{box-shadow: inset -3px 0 0 var(--danger)}.prj-lv .data-table .prj-sub-line{margin-top: 2px}.prj-stage{font-weight: 650}.prj-lv>.prj-board[hidden]{display: none}.prj-lv.prj-board-on>.list>:is(.list-body,.list-foot,.bulk-bar,.list-summary){display: none}.prj-lv>.prj-board{padding: 0 12px 12px}.prj-my{display: grid;gap: 18px;margin-top: 12px}.prj-grp>h3{display: flex;align-items: center;gap: 8px;margin-bottom: 8px;font-size: 15px}.prj-grp.tone-danger>h3{color: var(--danger-ink)}.prj-grp.tone-warn>h3{color: var(--warn-ink)}.prj-grp.tone-ok>h3{color: var(--ok-ink)}.prj-grp-n{padding: 0 9px;border-radius: 999px;background: var(--panel-3);color: var(--ink);font-size: 12px;font-weight: 800}.prj-my-list{list-style: none;margin: 0;padding: 0;display: grid;gap: 8px}.prj-my-item{display: flex;align-items: flex-start;gap: 12px;padding: 12px 14px;border: 1px solid var(--line);border-radius: var(--r-sm);background: var(--panel);cursor: pointer}.prj-my-item:hover,.prj-my-item:focus-visible{border-color: var(--accent);outline: 0}.prj-my-item.prj-late{box-shadow: inset 3px 0 0 var(--danger)}[dir="rtl"] .prj-my-item.prj-late{box-shadow: inset -3px 0 0 var(--danger)}.prj-my-main{min-width: 0;flex: 1}.prj-my-main .prj-sub-line{padding-inline-start: 0}.prj-stg-list{display: grid;gap: 10px;margin-block: 10px}.prj-stg-row{display: grid;gap: 8px;padding: 10px;border: 1px solid var(--line);border-radius: var(--r-sm);background: var(--panel-2)}.prj-stg-names{display: grid;grid-template-columns: 1fr 1fr;gap: 8px}.prj-stg-names input{min-width: 0;width: 100%}.prj-stg-opts{display: flex;flex-wrap: wrap;align-items: center;gap: 8px 14px}.prj-stg-done{display: inline-flex;align-items: center;gap: 6px;min-height: 40px;font-size: 13px;font-weight: 650}.prj-stg-color{display: inline-flex;align-items: center;gap: 2px}.prj-stg-color input[type=color]{width: 40px;height: 36px;padding: 2px;border: 1px solid var(--line);border-radius: var(--r-sm);background: var(--panel)}.prj-stg-btns{display: inline-flex;margin-inline-start: auto}.prj-stg-add,.prj-add{display: flex;gap: 8px;align-items: center}.prj-stg-add input,.prj-add input{flex: 1;min-width: 0}.prj-palette{display: flex;flex-wrap: wrap;align-items: center;gap: 8px}.prj-swatch{width: 32px;height: 32px;border: 2px solid transparent;border-radius: 50%;cursor: pointer}.prj-swatch.on{border-color: var(--ink);box-shadow: inset 0 0 0 2px var(--panel)}.prj-palette input[type=text]{width: 110px}.prj-main{display: grid;gap: 14px;min-width: 0}.prj-savebar{display: flex;justify-content: flex-end;min-height: 24px}.prj-save{display: inline-flex;align-items: center;gap: 6px;font-size: 12.5px;font-weight: 650;color: var(--muted)}.prj-save.ok{color: var(--ok-ink)}.prj-save.warn{color: var(--warn-ink)}.prj-save.bad{color: var(--danger-ink)}.prj-retry{min-height: 32px;padding-inline: 10px}.prj-title-in{width: 100%;min-height: 48px;padding: 6px 10px;border: 1px solid transparent;border-radius: var(--r-sm);background: transparent;color: var(--ink);font-size: 22px;font-weight: 750}.prj-title-in:hover:not(:disabled){border-color: var(--line)}.prj-title-in:focus{border-color: var(--accent);background: var(--panel);outline: 0;box-shadow: 0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.prj-title-in[aria-invalid="true"]{border-color: var(--danger)}.prj-linkrow{display: flex;flex-wrap: wrap;align-items: center;gap: 8px}.prj-banners{display: grid;gap: 8px}.prj-banner{display: flex;align-items: flex-start;gap: 10px;padding: 10px 14px;border-radius: var(--r-sm);background: var(--info-soft);border: 1px solid color-mix(in srgb,var(--info) 35%,var(--line));font-size: 13.5px}.prj-banner>div{display: grid;gap: 2px;min-width: 0;overflow-wrap: anywhere}.prj-banner.danger{background: var(--danger-soft);border-color: color-mix(in srgb,var(--danger) 35%,var(--line))}.prj-banner a{color: var(--accent-d);font-weight: 650}.prj-tagedit{display: flex;flex-wrap: wrap;align-items: center;gap: 6px;min-height: 40px}.prj-tagedit input,.prj-add input,.prj-cl-item input[type=text]{min-height: 40px;padding-inline: 10px;border: 1px solid var(--line);border-radius: var(--r-sm);background: var(--panel);color: var(--ink)}.prj-tagedit input{width: 150px}.prj-sec{display: grid;gap: 10px}.prj-sec-head{display: flex;align-items: center;flex-wrap: wrap;gap: 6px 12px}.prj-sec-head h4{margin: 0}.prj-progress{flex: 1 1 120px;max-width: 220px;height: 6px;border-radius: 999px;background: var(--panel-3);overflow: hidden}.prj-progress>i{display: block;height: 100%;background: var(--ok);border-radius: inherit;transition: width .2s}.prj-cl-list,.prj-sub-list{list-style: none;margin: 0;padding: 0;display: grid;gap: 6px}.prj-cl-item,.prj-sub-item{display: flex;align-items: center;gap: 10px;min-width: 0}.prj-cl-item input[type=text]{flex: 1;min-width: 0;border-color: transparent;background: transparent}.prj-cl-item input[type=text]:hover:not(:disabled),.prj-cl-item input[type=text]:focus{border-color: var(--line);background: var(--panel)}.prj-cl-item.is-done input[type=text],.prj-sub-item.is-done .prj-sub-name{color: var(--muted);text-decoration: line-through}.prj-sub-item{padding: 8px 10px;border: 1px solid var(--line);border-radius: var(--r-sm);background: var(--panel-2)}.prj-sub-name{flex: 1;min-width: 0;overflow-wrap: anywhere;font-weight: 650;color: var(--ink);text-decoration: none}.prj-sub-item.is-done .prj-sub-name{font-weight: 500}.prj-sub-name:hover{color: var(--accent-d)}.prj-empty-line{padding-block: 4px}.prj-side{display: grid;gap: 12px}.prj-mbar{display: none}@media (max-width: 720px){.prj-strip .stat-strip{flex-wrap: nowrap;overflow-x: auto;scroll-snap-type: x proximity;padding-bottom: 4px}.prj-strip .stat{flex: 0 0 auto;min-width: 124px;scroll-snap-align: start}.prj-kb .kb-board{scroll-snap-type: x mandatory;scroll-padding-inline: 4px}.prj-kb .kb-col{flex-basis: 86%;max-width: 86%}.prj-stage-sel{display: block}.prj-lv .list-body .data-table td.prj-c-main{display: block;text-align: start}.prj-lv .list-body .data-table td.prj-c-main[data-label]::before{content: none}.prj-lv .list-body .data-table tr.row{gap: 6px;padding: 14px}.prj-lv .data-table tr.prj-late>td:first-child{box-shadow: none}.prj-lv .data-table tr.prj-late{box-shadow: inset 3px 0 0 var(--danger)}[dir="rtl"] .prj-lv .data-table tr.prj-late{box-shadow: inset -3px 0 0 var(--danger)}.prj-lv>.prj-board{padding: 0 8px 8px}:root:root .prj-pfoot .icon-btn,:root:root .prj-stg-btns .icon-btn,:root:root .prj-cl-item .icon-btn{width: 44px;height: 44px}.prj-stg-names{grid-template-columns: 1fr}.prj-doc{padding-bottom: 76px}.prj-doc .dh-actions{display: none}.prj-title-in{font-size: 19px}.prj-mbar{display: flex;gap: 8px;position: fixed;inset-inline: 0;bottom: var(--bn-h);z-index: 30;padding: 10px max(14px,env(safe-area-inset-left));background: var(--panel);border-top: 1px solid var(--line);box-shadow: var(--shadow-lg)}:root:root .prj-mbar .btn{flex: 1 1 0;min-height: 48px;font-size: 15px;padding-inline: 8px}:root:root .prj-mbar .btn.btn-danger-ghost{flex: 0 1 auto}}@media (max-width: 900px) and (max-height: 520px){.prj-mbar{bottom: 0}}.chip-x[data-help="project.task.tag_remove"]{position: relative}.chip-x[data-help="project.task.tag_remove"]::after{content: "";position: absolute;inset: -14px}.prj-page .icon-btn.is-busy{position: relative;pointer-events: none}.prj-page .icon-btn.is-busy>*{opacity: .25}.prj-page .icon-btn.is-busy::after{content: "";position: absolute;inset: 0;margin: auto;width: 16px;height: 16px;border-radius: 50%;border: 2px solid var(--muted);border-top-color: var(--accent);animation: erp-spin .7s linear infinite}@media (prefers-reduced-motion: reduce){.prj-page .icon-btn.is-busy::after{animation-duration: 1.4s}}.prj-doc .field .date-box,.modal .field .date-box{width: 100%;height: auto;min-height: 40px}.prj-extras{display: inline-flex;align-items: center;gap: 6px}.prj-extras:empty{display: none}.prj-card-meta .act-progress{min-width: 70px}.prj-doc .form-grid .field-custom,.prj-doc .form-grid .field-multi{min-width: 0}.prj-doc .act-hist-list{max-height: 420px;overflow-y: auto;padding-inline-end: 2px}.prj-status small{font-size: 11px;font-weight: 800;opacity: .85}.prj-h1 .prj-status{align-self: center}.prj-pplan{display: flex;flex-wrap: wrap;align-items: center;gap: 6px}.prj-pplan:empty{display: none}.prj-ms-strip{margin-block: 12px}.prj-ms-strip[hidden]{display: none}.prj-ms-row{display: flex;align-items: stretch;gap: 8px;overflow-x: auto;padding-bottom: 4px;scroll-snap-type: x proximity}.prj-ms-row>.icon-btn{align-self: center;flex: 0 0 auto}.prj-ms{position: relative;display: flex;flex: 0 0 auto;min-width: 190px;max-width: 280px;border: 1px solid var(--line);border-radius: var(--r-sm);background: var(--panel);scroll-snap-align: start;transition: border-color .12s,box-shadow .12s}.prj-ms:hover,.prj-ms.on{border-color: var(--accent)}.prj-ms.on{box-shadow: 0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent)}.prj-ms.is-reached{background: var(--ok-soft)}.prj-ms.is-late:not(.on){border-color: color-mix(in srgb,var(--danger) 40%,var(--line))}.prj-ms-main{display: grid;gap: 6px;flex: 1;min-width: 0;padding: 8px 10px;border: 0;background: transparent;color: inherit;font: inherit;text-align: start;cursor: pointer}.prj-ms-main:focus-visible{outline: 2px solid var(--accent);outline-offset: -2px;border-radius: var(--r-sm)}.prj-ms-name{display: flex;align-items: center;gap: 6px;min-width: 0}.prj-ms-name b{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.prj-ms.is-reached .prj-ms-name svg{color: var(--ok-ink)}.prj-ms-line{display: flex;align-items: center;justify-content: space-between;gap: 6px;flex-wrap: wrap}.prj-ms-bar{display: block;height: 5px;border-radius: 999px;background: var(--panel-3);overflow: hidden}.prj-ms-bar>i{display: block;height: 100%;background: var(--ok);border-radius: inherit;transition: width .2s}.prj-ms-acts{display: flex;flex-direction: column;justify-content: center;padding-inline-end: 2px}.prj-ms-first{margin-block: 12px}.prj-banner.warn{background: var(--warn-soft);border-color: color-mix(in srgb,var(--warn) 35%,var(--line))}.prj-dep-list{display: flex;flex-wrap: wrap;gap: 6px;align-items: center}.prj-dep-item{display: inline-flex;align-items: center;gap: 2px;max-width: 100%}.prj-dep{min-width: 0;font-weight: 650}.prj-dep-name{overflow: hidden;text-overflow: ellipsis;max-width: 220px}.prj-dep small{font-weight: 500;opacity: .8}.prj-dep:hover{text-decoration: underline}.prj-dep-block{display: grid;gap: 6px;margin-top: 6px}.prj-dep-sub{display: flex;align-items: center;gap: 8px;margin: 0;font-size: 13px}.prj-sec .ss{max-width: 420px}.prj-upd{display: grid;gap: 18px}.prj-upd-form{display: grid;gap: 12px}.prj-upd-field{display: grid;gap: 4px}.prj-upd-field textarea{width: 100%;min-height: 80px}.prj-upd-choice{flex-wrap: wrap;height: auto}.prj-upd-choice .seg{display: inline-flex;align-items: center;gap: 5px;min-height: 36px}.prj-upd-choice .seg.on.tone-ok{background: var(--ok-soft);color: var(--ok-ink)}.prj-upd-choice .seg.on.tone-warn{background: var(--warn-soft);color: var(--warn-ink)}.prj-upd-choice .seg.on.tone-danger{background: var(--danger-soft);color: var(--danger-ink)}.prj-upd-choice .seg.on.tone-info{background: var(--info-soft);color: var(--info-ink)}.prj-upd-btns{display: flex;justify-content: flex-end;gap: 8px}.prj-upd-list{display: grid;gap: 10px;align-content: start}.prj-upd-item{display: grid;gap: 6px;padding: 12px 14px;border: 1px solid var(--line);border-radius: var(--r-sm);background: var(--panel-2)}.prj-upd-head{display: flex;align-items: center;flex-wrap: wrap;gap: 6px 10px}.prj-upd-who{flex: 1;min-width: 0}.prj-upd-note{margin: 0;white-space: pre-wrap;overflow-wrap: anywhere}.prj-upd-snap{margin: 0}.prj-tpl-list{display: grid;gap: 10px}.prj-tpl{display: flex;align-items: flex-start;gap: 12px;padding: 12px;border: 1px solid var(--line);border-radius: var(--r-sm);background: var(--panel-2)}.prj-tpl .prj-dot{margin-top: 4px}.prj-tpl-main{flex: 1;min-width: 0}.prj-tpl-main p{margin: 2px 0 0}.prj-tpl-desc{overflow-wrap: anywhere}.prj-tpl-acts{display: flex;align-items: center;gap: 2px;flex-wrap: wrap;justify-content: flex-end}@media (max-width: 720px){.prj-ms{min-width: 170px}.prj-tpl{flex-wrap: wrap}.prj-tpl-acts{width: 100%;justify-content: flex-start}:root:root .prj-ms-acts .icon-btn,:root:root .prj-upd-head .icon-btn,:root:root .prj-dep-item .icon-btn,:root:root .prj-tpl-acts .icon-btn{width: 44px;height: 44px}}@media (prefers-reduced-motion: reduce){.prj-ms,.prj-ms-bar>i{transition: none}}