.pp-skel{display:flex;flex-direction:column;gap:12px;padding-top:4px;animation:ppSkIn .3s .12s both}
.pp-sk-s{background:rgba(255,255,255,.027);border-radius:20px;padding:16px 18px;display:flex;flex-direction:column;gap:12px}
.pp-sk-s i,.pp-sk-s b{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.09),rgba(255,255,255,.05));background-size:200% 100%;animation:ppSk 1.4s linear infinite}
.pp-sk-s i{height:14px}.pp-sk-s b{margin-left:34px}
@keyframes ppSk{from{background-position:100% 0}to{background-position:-100% 0}}@keyframes ppSkIn{from{opacity:0}}
@media (prefers-reduced-motion:reduce){.pp-sk-s i,.pp-sk-s b{animation:none}}
:is(#proj-tasks-list,#tasks-list) .ppl,#pp-cmd,#pp-menu{--spr:cubic-bezier(.2,.85,.2,1);--mono:var(--sh-mono,ui-monospace,monospace);font-family:var(--font-ui,inherit)}
:is(#proj-tasks-list,#tasks-list) .ppl button,#pp-cmd button,#pp-menu button{border:0;background:none;font:inherit;color:inherit;cursor:pointer;padding:0}
@keyframes ppIn{from{opacity:0;transform:translateY(8px)}}
/* список: строка заметки — та же геометрия, что у задачи; вместо кружка — листок */
.ppl{color:#f4f4f2}
.ppl .ppl-n{display:flex;align-items:center;gap:14px;padding:11px 12px;border-radius:18px;cursor:pointer;transition:background .2s;min-width:0}
.ppl .ppl-n:hover{background:rgba(255,255,255,.035)}
.ppl .ppl-ni{width:24px;height:24px;border-radius:8px;flex:none;display:grid;place-items:center;background:rgba(185,243,108,.13);color:#b9f36c}
.ppl .ppl-ni svg{width:15px;height:15px;stroke-width:1.9}
.ppl .ppl-nb{flex:1;min-width:0}
.ppl .ppl-nm{font:600 12px var(--font-ui,inherit);color:#8d8d92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ppl .ppl-nt{font:600 15.5px var(--font-ui,inherit);margin-top:2px;color:#f4f4f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ppl .ppl-nt small{font:400 13.5px var(--font-ui,inherit);color:#6d6d72;margin-left:10px}
.ppl .ppl-none{font-size:13.5px;color:#6d6d72;padding:10px 12px 12px}
.ppl .ppl-b{min-height:6px;border-radius:20px;transition:background .2s,box-shadow .2s}
/* секция-аккордеон */
.ppl .ppl-s{margin-top:6px;border-radius:22px;transition:background .25s,box-shadow .2s}
.ppl .ppl-s.open{background:rgba(255,255,255,.028)}
.ppl .ppl-h{display:flex;align-items:center;gap:10px;padding:9px 8px 9px 9px;border-radius:22px;cursor:pointer;user-select:none;-webkit-user-select:none}
.ppl .ppl-h:hover{background:rgba(255,255,255,.04)}
.ppl .ppl-ic{width:30px;height:30px;border-radius:10px;flex:none;display:grid;place-items:center;background:rgba(255,255,255,.07);color:#d8d8da;transition:background .2s,color .2s,transform .14s var(--spr)}
.ppl .ppl-ic svg{width:16px;height:16px}
.ppl button.ppl-ic:hover,.ppl button.ppl-ic.on{background:rgba(255,255,255,.14);color:#fff}
.ppl button.ppl-ic:active{transform:scale(.94)}
.ppl .ppl-hc{width:24px;height:24px;flex:none;display:grid;place-items:center;color:#6d6d72;transition:transform .35s var(--spr),color .2s}
.ppl .ppl-hc svg{width:14px;height:14px;stroke-width:2.2}
.ppl .ppl-s.open .ppl-hc{transform:rotate(90deg);color:#b4b4b8}
.ppl .ppl-h b{font-size:15.5px;font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:2px}
.ppl .ppl-h small{font:500 12px var(--mono);color:#8d8d92;white-space:nowrap;margin-left:4px;opacity:0;transition:opacity .2s}
.ppl .ppl-s.open>.ppl-h small,.ppl .ppl-h:hover small,:root[data-kbd] .ppl .ppl-h:is(:focus-visible,:focus-within) small{opacity:1}   /* 29.10: открыта или под курсором; фокус после клика мышью не держит подписи */
.ppl .ppl-h small .red{color:#ff8a80}
.ppl .ppl-h .sp{flex:1}
.ppl .ppl-hb{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:#8d8d92;flex:none;opacity:0;transition:opacity .15s,background .15s,color .15s}
.ppl .ppl-h:hover .ppl-hb,.ppl .ppl-hb:focus-visible,.ppl .ppl-hb.on{opacity:1}
.ppl .ppl-hb:hover{background:rgba(255,255,255,.09);color:#fff}
.ppl .ppl-hb.on{background:rgba(185,243,108,.16);color:#b9f36c}
.ppl .ppl-hb svg{width:15px;height:15px}
.ppl .ppl-x{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--spr)}
.ppl .ppl-s.open .ppl-x{grid-template-rows:1fr}
.ppl .ppl-in{overflow:hidden;min-height:0;padding:0 6px}
.ppl .ppl-s.open .ppl-in{padding-bottom:8px}
.ppl .ppl-s.open:has(.sh-tk.open) .ppl-in{overflow:visible}   /* раскрытая задача шире строки — не обрезать её тень */
.ppl :is(.ppl-b,.ppl-s).drop{background:rgba(185,243,108,.07);box-shadow:inset 0 0 0 1.5px rgba(185,243,108,.45)}
.ppl .dragging,:is(#proj-tasks-list,#tasks-list) .ppl .task-row.dragging{opacity:.3!important}
@keyframes ppl-ins{from{transform:scaleX(.4);opacity:0}}
.ppl .ppl-ins{animation:ppl-ins .16s cubic-bezier(.23,1,.32,1);height:2px;margin:-1px 6px;background:#b9f36c;border-radius:1px;position:relative;pointer-events:none}.ppl .ppl-ins::before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:#b9f36c}
.ppl-ghost{transform:rotate(-1.5deg);position:fixed;left:-1000px;top:-1000px;max-width:360px;padding:12px 16px;border-radius:14px;background:#38383c;color:#f4f4f2;font:600 14.5px var(--font-ui,system-ui);box-shadow:inset 0 0 0 1.5px rgba(185,243,108,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@keyframes ppFlash{0%,35%{box-shadow:inset 0 0 0 1.5px rgba(185,243,108,.7)}100%{box-shadow:inset 0 0 0 1.5px rgba(185,243,108,0)}}
.ppl .ppl-done{margin-top:18px}
.ppl .ppl-dh{display:block;width:100%;text-align:center;font-size:13px;color:#8d8d92;padding:10px 12px;opacity:.8}
.ppl .ppl-dh:hover{opacity:1;color:#f4f4f2}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-dh{font-size:12.5px;font-weight:400;letter-spacing:.01em;color:#6d6d72;opacity:1;transition:color .2s}   /* 29.10, макет iam-own/16-done-toggle.html, A: тише и мельче (раньше общий стиль кнопок делал её 16 px, белой) */
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-dh:hover{color:#b5b5ba}
/* внизу — панель действий режима выбора (кнопка «+» — в шапке проекта) */
#pp-cmd{display:flex;justify-content:center;color:#f4f4f2;pointer-events:none}
#pp-cmd > *{pointer-events:auto}
#pp-cmd .ppc-sel{height:54px;max-width:100%;border-radius:19px;background:#2f2f32;box-shadow:0 24px 40px -18px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.08);display:flex;align-items:center;gap:4px;padding:0 8px 0 18px;animation:ppIn .25s var(--spr)}
#pp-cmd .ppc-sel b{font-size:14px;font-weight:600;white-space:nowrap;margin-right:8px}
#pp-cmd .ppc-sel button{height:36px;padding:0 12px;border-radius:11px;font-size:13px;font-weight:500;color:#f4f4f2;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;transition:background .15s,transform .14s var(--spr)}
#pp-cmd .ppc-sel button:hover{background:rgba(255,255,255,.08)}
#pp-cmd .ppc-sel button:active{transform:scale(.96)}
#pp-cmd .ppc-sel button svg{width:15px;height:15px}
#pp-cmd .ppc-sel button.red{color:#ff8a80}
#pp-cmd .ppc-sel button.red:hover{background:rgba(255,138,128,.12)}
#pp-cmd .ppc-sel button:disabled{opacity:.35;cursor:default;background:none}
#pp-cmd .ppc-sel button.x{width:36px;padding:0;justify-content:center;color:#8d8d92}
#pp-cmd .ppc-sel i{width:1px;height:22px;background:rgba(255,255,255,.1);margin:0 6px;flex:none}
/* новая строка прямо в списке: задача, заметка или секция */
.ppl .ppl-new{display:flex;align-items:center;gap:14px;padding:9px 8px 9px 12px;margin:2px 0;border-radius:18px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.2);animation:ppIn .25s var(--spr)}
.ppl .ppl-new.sec{margin-top:8px;gap:10px;padding-left:9px;border-radius:22px}
.ppl .ppl-nwi{width:24px;height:24px;flex:none;display:grid;place-items:center;border-radius:8px}
.ppl .ppl-nwi.task{border-radius:50%;box-shadow:inset 0 0 0 1.8px #55555a}
.ppl .ppl-nwi.note{background:rgba(185,243,108,.13);color:#b9f36c}
.ppl .ppl-nwi.sec{width:30px;height:30px;border-radius:10px;background:rgba(255,255,255,.07);color:#d8d8da}
.ppl .ppl-nwi svg{width:15px;height:15px}
.ppl .ppl-new input{flex:1;min-width:0;height:30px;border:0;outline:none;background:none;color:#f4f4f2;font:500 15.5px var(--font-ui,inherit);padding:0}
.ppl .ppl-new input::placeholder{color:#8d8d92;font-weight:400}
.ppl .ppl-new{flex-wrap:wrap;row-gap:0}
.ppl .ppl-new[data-new="task"]{padding-bottom:0;overflow:hidden}
.ppl .ppl-nst{flex:1 0 calc(100% + 20px);order:10;display:flex;align-items:center;gap:6px;margin:10px -8px 0 -12px;padding:8px 14px 9px;border-top:1px solid rgba(255,255,255,.08)}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nst .ppl-nsb{position:relative;width:36px;height:34px;border-radius:11px;display:grid;place-items:center;color:#b5b5ba;flex:none}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nst .ppl-nsb:hover{background:rgba(255,255,255,.07);color:#fff}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nst .ppl-nsb svg{width:19px;height:19px}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nst .ppl-nsb.set::after{content:"";position:absolute;right:6px;top:6px;width:5px;height:5px;border-radius:50%;background:#d8d8da}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nst .ppl-nsb i{width:22px;height:22px;border-radius:50%;overflow:hidden;display:block}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nst .ppl-nwd{height:34px;background:none;color:#b5b5ba;padding:0 9px}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nst .ppl-nwd svg{width:19px;height:19px}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nst .ppl-nwd:hover{background:rgba(255,255,255,.07);color:#fff}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nst .ppl-nwd.set{background:rgba(255,255,255,.08);color:#f4f4f2}
.ppl .ppl-ncard.dk-on .ppl-nd,.ppl .ppl-ncard.dk-on .ppl-nwf{display:none}
.ppl .ppl-ndock{padding:10px 14px 2px;animation:ppIn .22s var(--spr)}
.ppl .ppl-ndh{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.ppl .ppl-ndh .ic{width:28px;height:28px;border-radius:9px;background:#f4f4f2;color:#161618;display:grid;place-items:center;flex:none}.ppl .ppl-ndh .ic svg{width:15px;height:15px}
.ppl .ppl-ndh b{flex:1;font-size:13.5px;font-weight:600}.ppl .ppl-ndh small{font-size:12px;color:#8d8d92}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ndh button{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;color:#8d8d92}:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ndh button:hover{background:rgba(255,255,255,.07);color:#fff}:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ndh button svg{width:14px;height:14px}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ndt [data-nod]{display:none!important}.ppl .ppl-ndt .dh{padding-top:0}:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ndt .dw{grid-template-columns:repeat(14,1fr)}@media (max-width:640px){:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ndt .dw{grid-template-columns:repeat(7,1fr)}}
.ppl .ppl-nppl{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:6px}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nppl button{display:flex;align-items:center;gap:8px;height:36px;padding:0 12px 0 5px;border-radius:12px;background:rgba(255,255,255,.07);font-size:13.5px;font-weight:500}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nppl button:hover{background:rgba(255,255,255,.12)}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nppl button.on{background:#f4f4f2;color:#161618}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-nppl i{width:26px;height:26px;border-radius:50%;overflow:hidden;display:block}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new.ppl-ncard .ppl-nst .ppl-nwd.on,:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ncard .ppl-nst .ppl-nsb.on{background:#f4f4f2;color:#161618}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ncard .ppl-nst .ppl-nsb.on::after{display:none}
.ppl .ppl-new.ppl-ncard{display:block;padding:0;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.14);border-radius:24px;overflow:hidden}
.ppl .ppl-ncard .ppl-ntop{display:flex;flex-wrap:wrap;align-items:center;column-gap:14px;row-gap:0;padding:10px 10px 10px 14px;background:#313134;border-radius:24px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.14),0 10px 22px -14px rgba(0,0,0,.7)}
.ppl .ppl-ncard .ppl-nst{margin:0;padding:7px 12px 8px;border-top:0;gap:4px}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ncard .ppl-nst .ppl-nsb{color:#b5b5ba}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ncard .ppl-nst .ppl-nsb:hover{background:rgba(255,255,255,.07);color:#fff}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-ncard .ppl-nst .ppl-nsb.set::after{background:#d8d8da}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new.ppl-ncard .ppl-nst .ppl-nwd{color:#b5b5ba;background:none}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new.ppl-ncard .ppl-nst .ppl-nwd:hover{background:rgba(255,255,255,.07);color:#fff}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new.ppl-ncard .ppl-nst .ppl-nwd.set{background:rgba(255,255,255,.08);color:#f4f4f2;font-size:13.5px;font-weight:500}
.ppl .ppl-new .ppl-nd{flex:1 0 calc(100% - 52px);max-width:calc(100% - 52px);order:9;min-width:0;height:0;max-height:0;opacity:0;margin:0 0 0 38px;padding:3px 0;border:0;outline:none;background:none;resize:none;overflow:hidden;font:400 14px/20px var(--font-ui,inherit);color:#b5b5ba;transition:max-height .2s,opacity .2s,margin .2s;pointer-events:none}
.ppl .ppl-new.has-t .ppl-nd{height:auto;max-height:240px;opacity:1;margin:-4px 0 2px 38px;pointer-events:auto;overflow-y:auto}   /* 30.10: длинное описание переносится, а не уезжает вбок */
.ppl .ppl-new .ppl-ntop{min-width:0}
.ppl .ppl-new .ppl-nd::placeholder{font-style:italic;color:#6d6d72}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nwd{height:30px;min-width:30px;padding:0 7px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;color:#b5b5ba;background:rgba(255,255,255,.06);font:600 12.5px var(--font-ui,inherit);white-space:nowrap}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nwd:hover{color:#fff;background:rgba(255,255,255,.11)}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nwd.set{background:#e6e6e1;color:#161618;padding:0 10px}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nwd svg{width:16px;height:16px}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nwf{height:28px;padding:0 10px;border-radius:9px;font-size:12.5px;font-weight:500;color:#8d8d92;background:rgba(255,255,255,.06);flex:none;white-space:nowrap}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nwf:hover{color:#f4f4f2;background:rgba(255,255,255,.1)}
.ppl .ppl-nwk{font:500 11px var(--mono);color:#6d6d72;border:1px solid #48484c;border-radius:6px;padding:2px 6px;flex:none}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nwx{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;color:#8d8d92;flex:none}
:is(#proj-tasks-list,#tasks-list) .ppl .ppl-new .ppl-nwx:hover{background:rgba(255,255,255,.09);color:#fff}
.ppl .ppl-nwx svg{width:13px;height:13px}
/* доска (канбан): колонки = секции; внутри — те же строки задач и заметок, оформленные карточками */
.ppk .ppk-cols{display:flex;align-items:flex-start;gap:14px;overflow-x:auto;padding:4px 0 24px;margin-top:6px;scrollbar-width:none}
.ppk .ppk-cols::-webkit-scrollbar{display:none}   /* полоса прокрутки под доской не показывается; вбок листается жестом или Shift+колесо */
#proj-tasks-list .ppk .ppk-col{flex:1 1 0;min-width:258px;max-width:360px;margin:0;border-radius:24px;background:rgba(255,255,255,.028);padding:8px 8px 10px;transition:background .2s,box-shadow .2s}
#proj-tasks-list .ppk .ppk-h{padding:5px 2px 9px 5px;border-radius:16px;cursor:default;gap:10px}
#proj-tasks-list .ppk .ppk-h:hover{background:none}
#proj-tasks-list .ppk .ppk-h b{font-size:15px}
#proj-tasks-list .ppk .ppk-h span.ppl-ic{background:none;color:#8d8d92}
#proj-tasks-list .ppk .ppk-h .ppl-hb{opacity:.55}
#proj-tasks-list .ppk .ppk-h .ppl-hb:hover,#proj-tasks-list .ppk .ppk-h .ppl-hb.on{opacity:1}
/* название колонки — на всю ширину, кнопки «+ …» появляются при наведении (30.10, круг 2, D5) */
#proj-tasks-list .ppk .ppk-col:not(:hover):not(:focus-within) .ppk-h .ppl-hb:not(.on){display:none}
#proj-tasks-list .ppk .ppk-h b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#proj-tasks-list .ppk .ppk-h .ppl-rn{flex:1 1 0;min-width:60px;margin-left:0}
.ppk .ppk-cards{display:flex;flex-direction:column;gap:8px;min-height:44px}
.ppk .ppk-empty{font-size:13px;color:#55555a;padding:12px 10px}
#proj-tasks-list .ppk .ppk-newcol{flex:0 0 132px;height:46px;border-radius:18px;box-shadow:inset 0 0 0 1.5px #343437;color:#6d6d72;font-size:13px;display:flex;align-items:center;justify-content:center;gap:8px;transition:color .15s,box-shadow .15s}
#proj-tasks-list .ppk .ppk-newcol:hover{color:#f4f4f2;box-shadow:inset 0 0 0 1.5px #55555a}
.ppk .ppk-newcol svg{width:14px;height:14px}
#proj-tasks-list .ppk .ppk-draft{flex:0 0 258px;background:none;padding:0}
#proj-tasks-list .ppk .ppk-draft .ppl-new{margin:0}
/* карточки */
:root[data-design="shtab"] #proj-tasks-list .ppk .ppk-cards > .task-row,:root[data-design="shtab"] #proj-tasks-list .ppk .ppk-cards > .ppl-n{background:#2b2b2e!important;border-radius:18px!important;padding:12px!important;margin:0!important;align-items:flex-start!important;gap:11px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05);min-height:0!important;height:auto!important}
:root[data-design="shtab"] #proj-tasks-list .ppk .ppk-cards > .task-row:hover,:root[data-design="shtab"] #proj-tasks-list .ppk .ppk-cards > .ppl-n:hover{background:#313134!important}
:root[data-design="shtab"] #proj-tasks-list .ppk .ppk-cards > .task-row .t-name{white-space:normal!important;font-size:14.5px!important;line-height:1.3!important;overflow-wrap:anywhere}
:root[data-design="shtab"] #proj-tasks-list .ppk .ppk-cards > .task-row .t-info{min-width:0;flex:1}
.ppk .ppk-cards > .ppl-n .ppl-nt{white-space:normal;font-size:14.5px;line-height:1.3;overflow-wrap:anywhere}
.ppk .ppk-cards > .ppl-n .ppl-nt small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:3px 0 0;font-size:12.5px;line-height:1.4;color:#8d8d92}
.ppk .ppk-cards > .ppl-n .ppl-ni{margin-top:1px}
/* раскрытая задача или заметка на доске — внутри своей колонки, как в списке; колонка расширяется под неё */
#proj-tasks-list .ppk .ppk-col{transition:background .2s,box-shadow .2s,flex-basis .4s var(--spr),flex-grow .4s var(--spr),min-width .4s var(--spr),max-width .4s var(--spr)}
#proj-tasks-list .ppk .ppk-col:has(.ppk-cards > .pp-note){flex:0 0 560px;min-width:min(560px,100%);max-width:560px}
/* раскрытая задача на доске — окном поверх доски, колонки не меняют ширину (29.10, прожарка №5 п.6, вариант A); заметка — как была */
:root[data-design="shtab"] #proj-tasks-list .ppk .ppk-cards > .task-wrap.sh-tk.open{position:fixed!important;z-index:900;left:calc(50% - min(360px, 50vw - 40px))!important;top:9vh!important;width:min(720px, calc(100vw - 80px))!important;max-height:82vh;overflow:auto;overscroll-behavior:contain;margin:0!important;border-radius:26px;background:#262628;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 40px 90px -20px #000,0 20px 40px -20px #000}
:root[data-design="shtab"] #proj-tasks-list .ppk:has(.ppk-cards > .task-wrap.sh-tk.open) :is(.ppk-cards > :not(.open), .ppk-col > :not(.ppk-cards), .ppl-done),:root[data-design="shtab"] #page-project:has(.ppk .ppk-cards > .task-wrap.sh-tk.open) > #proj-hero{opacity:.28!important;transition:opacity .25s}
:root[data-design="shtab"] #proj-tasks-list .ppk .ppk-cards > .task-wrap.sh-tk,#proj-tasks-list .ppk .ppk-cards > .pp-note{width:auto!important;max-width:none!important;margin:2px 0 6px!important}
#proj-tasks-list .ppk .ppl-new{padding:8px 6px 8px 10px;gap:9px}
#proj-tasks-list .ppk .ppl-new .ppl-nwk{display:none}
#proj-tasks-list .ppk .ppl-new input{font-size:14.5px}
.ppk .ppl-done{margin-top:0}
/* подпроект на экране проекта: блок как секция, с пометкой; внутри — его задачи и заметки, его секции — подзаголовками */
.ppl .ppl-sub{margin-top:10px}
.ppl .ppl-tag{font:600 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;font-style:normal;color:#8d8d92;background:rgba(255,255,255,.07);border-radius:6px;padding:3px 6px;flex:none}
.ppl .ppl-cap{display:flex;align-items:center;gap:8px;font:600 12px var(--font-ui,inherit);color:#8d8d92;padding:12px 12px 4px}
.ppl .ppl-cap svg{width:14px;height:14px;flex:none}
#proj-tasks-list .ppk .ppk-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin:0 4px;background:#8d8d92}#proj-tasks-list .ppk .ppk-dot.st-in_progress{background:#6ea8ff}#proj-tasks-list .ppk .ppk-dot.st-paused{background:#e6b85c}
#proj-tasks-list .ppk .ppk-col.ppl-sub{margin-top:0;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.07)}
#proj-tasks-list .ppk .ppk-h .ppl-tag{display:none}
/* панель оформления над выделенным текстом заметки */
:root[data-design="shtab"] #pp-fmt{position:fixed;z-index:9000;display:none;gap:2px;padding:4px;border-radius:14px;background:#2f2f32!important;color:#f4f4f2;box-shadow:0 18px 34px -14px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.07);animation:ppIn .18s cubic-bezier(.2,.85,.2,1)}
:root[data-design="shtab"] #pp-fmt.on{display:flex}
#pp-fmt button{width:34px;height:32px;border:0;border-radius:10px;background:none;color:#d8d8da;font:500 14px var(--font-ui,inherit);cursor:pointer;display:grid;place-items:center;transition:background .15s,color .15s}
#pp-fmt button:hover{background:rgba(255,255,255,.09);color:#fff}
#pp-fmt button.on{background:#f4f4f2;color:#161618}
/* режим выбора: клик по строке отмечает её */
.ppl.ppl-sel :is(.task-row,.ppl-n){cursor:pointer}
.ppl.ppl-sel .ppl-n.picked{background:rgba(185,243,108,.1);box-shadow:inset 0 0 0 1.5px rgba(185,243,108,.5)}
:root[data-design="shtab"] :is(#proj-tasks-list,#tasks-list) .ppl.ppl-sel .task-row.picked{background:rgba(185,243,108,.1)!important;box-shadow:inset 0 0 0 1.5px rgba(185,243,108,.5)!important}
/* слои: окно создания задачи 1200, окна проекта 1290+, меню задачи 9000; общий ambient.css красит [data-iam-popup] в --popup-surface — здесь свой тёмный фон */
:root[data-design="shtab"] #pp-menu{position:fixed;z-index:9000;width:236px;max-height:calc(100vh - 16px);overflow-y:auto;padding:6px;border-radius:18px;background:#2f2f32!important;color:#f4f4f2;box-shadow:0 26px 44px -18px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.07);display:none;animation:ppIn .22s var(--spr)}
:root[data-design="shtab"] #pp-menu.on{display:block}
/* выбор значка секции */
:root[data-design="shtab"] #pp-icons{position:fixed;z-index:9000;width:264px;padding:10px;border-radius:20px;background:#2f2f32!important;color:#f4f4f2;box-shadow:0 26px 44px -18px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.07);display:none;animation:ppIn .22s var(--spr)}
:root[data-design="shtab"] #pp-icons.on{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
#pp-icons button{aspect-ratio:1;border:0;padding:0;border-radius:11px;display:grid;place-items:center;background:none;color:#b4b4b8;cursor:pointer;transition:background .15s,color .15s,transform .14s cubic-bezier(.2,.85,.2,1)}
#pp-icons button:hover{background:rgba(255,255,255,.09);color:#fff}
#pp-icons button:active{transform:scale(.92)}
#pp-icons button.on{background:#f4f4f2;color:#161618}
#pp-icons button svg{width:18px;height:18px}
#pp-menu button{width:100%;height:40px;border-radius:12px;display:flex;align-items:center;gap:10px;padding:0 12px;font-size:14px;text-align:left}
#pp-menu button:hover{background:rgba(255,255,255,.07)}
#pp-menu button:has(em){height:auto;min-height:40px;padding-top:7px;padding-bottom:7px}
#pp-menu button em{display:block;font-style:normal;font-size:11.5px;line-height:1.3;color:#8d8d92;margin-top:1px}#pp-menu button:has(em) span{white-space:normal;overflow:visible;min-width:0}#pp-menu button em{white-space:normal}
#pp-menu button svg{width:16px;height:16px;color:#8d8d92;flex:none}
#pp-menu button small{margin-left:auto;font:500 11px var(--mono);color:#6d6d72;white-space:nowrap;padding-left:10px}
#pp-menu button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#pp-menu .sep{display:block;height:1px;background:rgba(255,255,255,.08);margin:4px 8px}
#pp-menu .chips{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:2px 6px 6px}
#pp-menu .chips button{width:100%;min-width:0;height:30px;padding:0 8px;border-radius:9px;justify-content:center;font-size:12.5px;font-weight:500;background:rgba(255,255,255,.07);white-space:nowrap}
#pp-menu .chips button:hover{background:rgba(255,255,255,.13)}
#pp-menu .chips button.on{background:#f4f4f2;color:#161618}
#pp-menu .cap{font:600 11px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#6d6d72;padding:8px 12px 4px}
#pp-menu button.red,#pp-menu button.red svg{color:#ff8a80}
.ppl .ppl-rn{flex:0 1 320px;min-width:120px;height:30px;border:0;outline:none;border-radius:9px;padding:0 9px;margin-left:-6px;background:rgba(255,255,255,.09);color:#f4f4f2;font:600 15.5px var(--font-ui,inherit);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.22)}
/* колонка «Подпроекты» */
#pp-side{color:#f4f4f2;min-width:0;font-family:var(--font-ui,inherit)}
#pp-side button{border:0;background:none;font:inherit;color:inherit;cursor:pointer;padding:0}
#pp-side .pps-k{display:flex;align-items:center;font:600 11px var(--sh-mono,ui-monospace,monospace);letter-spacing:.07em;text-transform:uppercase;color:#8d8d92;margin:0 0 8px;min-height:30px}
#pp-side .pps-k i{font-style:normal;color:#6d6d72;margin-left:7px}
#pp-side .pps-k .sp{flex:1}
#pp-side .pps-k.sp2{margin-top:22px}
#pp-side .pps-plus{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;color:#8d8d92}
#pp-side .pps-plus:hover{background:rgba(255,255,255,.09);color:#fff}
#pp-side .pps-plus svg{width:15px;height:15px}
#pp-side .pps-r{display:flex;align-items:center;gap:11px;padding:8px 8px 8px 10px;border-radius:14px;margin:0 -10px;cursor:pointer;transition:background .2s}
#pp-side .pps-r:hover{background:rgba(255,255,255,.045)}
#pp-side .pps-l{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.07);color:#d8d8da;flex:none}
#pp-side .pps-l svg{width:16px;height:16px}
#pp-side .pps-r b{flex:1;min-width:0;font-size:14.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pp-side .pps-r small{font:500 12px var(--sh-mono,ui-monospace,monospace);color:#8d8d92;white-space:nowrap}
#pp-side .pps-r small.red{color:#ff8a80}
#pp-side .pps-r > svg{width:14px;height:14px;color:#55555a;flex:none}
#pp-side .pps-ed{width:28px;height:28px;border-radius:9px;display:none;place-items:center;color:#8d8d92;flex:none}
#pp-side .pps-r:hover .pps-ed,#pp-side .pps-ed:focus-visible{display:grid}
#pp-side .pps-ed:hover{background:rgba(255,255,255,.1);color:#fff}
#pp-side .pps-ed svg{width:14px;height:14px}
/* заметка раскрывается на своём месте в списке, как задача (09.10) */
.pp-note{margin:6px 0 12px;min-width:0}
:root[data-design="shtab"] #proj-tasks-list .pp-note .ppn-open{min-width:0;display:flex;flex-direction:column;border-radius:26px;overflow:hidden;background:linear-gradient(180deg,#2e2e31,#242426)!important;box-shadow:0 26px 30px -18px rgba(0,0,0,.6);animation:ppIn .32s var(--spr)}
#proj-tasks-list .pp-note .ppn-ob{background:linear-gradient(180deg,#cdf78f,#b9f36c);color:#1c2410;padding:18px 20px 16px;flex:1;min-height:0;display:flex;flex-direction:column;border-radius:0 0 26px 26px}
#proj-tasks-list .pp-note .ppn-oh{display:flex;align-items:flex-start;gap:12px;flex:none}
#proj-tasks-list .pp-note .ppn-ot{flex:1;min-width:0;border:0;background:none;outline:none;color:#1c2410;font:600 20px/1.3 var(--font-ui,inherit);padding:0;caret-color:#1c2410}
#proj-tasks-list .pp-note .ppn-ot::placeholder{color:rgba(28,36,16,.45)}
#proj-tasks-list .pp-note .ppn-oh .re-toolbar{gap:4px;flex:none}
#proj-tasks-list .pp-note .ppn-oh .re-btn{width:30px;height:30px;border-radius:10px;background:rgba(28,36,16,.1);color:#1c2410;font-size:13px}
#proj-tasks-list .pp-note .ppn-oh .re-btn:hover{background:rgba(28,36,16,.18);color:#1c2410}
#proj-tasks-list .pp-note .ppn-ox{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(28,36,16,.1);color:#1c2410;flex:none}
#proj-tasks-list .pp-note .ppn-ox:hover{background:rgba(28,36,16,.18)}
#proj-tasks-list .pp-note .ppn-ox svg{width:15px;height:15px}
#proj-tasks-list .pp-note .ppn-ob .re-editor{color:#222c16;font-size:14.5px;line-height:1.6;min-height:140px;max-height:52vh;overflow-y:auto;margin-top:10px;caret-color:#1c2410}
#proj-tasks-list .pp-note .ppn-ob .re-editor a{color:#1c2410;text-decoration:underline}
#proj-tasks-list .pp-note .ppn-ob .re-editor:empty::before,#proj-tasks-list .pp-note .ppn-ob .re-editor[data-placeholder]:empty::before{color:rgba(28,36,16,.45)!important}
#proj-tasks-list .pp-note .ppn-ob .re-editor img{max-width:min(520px,100%)}
#proj-tasks-list .pp-note .ppn-ob .re-editor,#proj-tasks-list .pp-note .ppn-ob .re-editor:focus,#proj-tasks-list .pp-note .ppn-ob .re-wrap{outline:none!important;box-shadow:none!important;border:0!important;background:none!important;padding-left:0;padding-right:0}
#proj-tasks-list .pp-note .ppn-ul{color:#f4f4f2;min-height:50px;display:flex;align-items:center;gap:4px;padding:8px 10px;font-size:12.5px;font-weight:600;flex:none;flex-wrap:wrap}
#proj-tasks-list .pp-note .ppn-ul button{height:34px;padding:0 11px;border-radius:11px;color:#f4f4f2;display:inline-flex;align-items:center;gap:7px;transition:background .15s,transform .14s var(--spr)}
#proj-tasks-list .pp-note .ppn-ul button:hover{background:rgba(255,255,255,.08)}
#proj-tasks-list .pp-note .ppn-ul button:active{transform:translateY(1px) scale(.97)}
#proj-tasks-list .pp-note .ppn-ul button svg{width:16px;height:16px}
#proj-tasks-list .pp-note .ppn-ul button.on{background:#f4f4f2;color:#161618}
#proj-tasks-list .pp-note .ppn-ul button.go{background:linear-gradient(180deg,#fbfbf9,#e6e6e2);color:#161618;padding:0 16px}
#proj-tasks-list .pp-note .ppn-ul button.go:hover{background:linear-gradient(180deg,#fff,#efefeb)}
#proj-tasks-list .pp-note .ppn-ul button.red{color:#ff8a80}
#proj-tasks-list .pp-note .ppn-ul button.red:hover{background:rgba(255,138,128,.12)}
#proj-tasks-list .pp-note .ppn-ul button:disabled{opacity:.55;cursor:default}
#proj-tasks-list .pp-note .ppn-ul .meta{font:500 11.5px var(--mono);color:#8d8d92;padding:0 8px}
#proj-tasks-list .pp-note .ppn-ul .sp{flex:1}
#proj-tasks-list .pp-note .ppn-ops{flex-basis:100%;display:flex;flex-wrap:wrap;gap:5px;padding:6px 2px 2px}
#proj-tasks-list .pp-note .ppn-ops button{height:30px;border-radius:9px;padding:0 10px;font-size:12.5px;font-weight:500;background:rgba(255,255,255,.08)}
#proj-tasks-list .pp-note .ppn-ops button.on{background:#f4f4f2;color:#161618}
