@font-face{font-family:'Google Sans';font-weight:400 700;font-display:swap;src:url(fonts/cyrillic-1.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Google Sans';font-weight:400 700;font-display:swap;src:url(fonts/latin-4.woff2) format('woff2')}
:root{--ink:#1d1d1f;--text:#2b2b2f;--mut:#6b6b73;--noise:#8a8a93;--line:#ececf0;--line2:#e2e2e7;--soft:#f6f6f7;
--brand:#EF5603;--brand2:#C94400;--brands:#fff1e8;--ok:#1f8a4c;--oks:#e8f5ed;--warn:#a8650f;--warns:#fdf3e2;--bad:#c8372d;--bads:#fcebea;--card:#fff;--bg:#f1f1f1;--h:#303030}
*{box-sizing:border-box;margin:0;padding:0}
html,body{font-family:'Google Sans',system-ui,'Segoe UI',sans-serif;color:var(--text);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45;background:var(--bg)}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:0;cursor:pointer}
.num{font-variant-numeric:tabular-nums}.mut{color:var(--mut)}.r{text-align:right}.mt{margin-top:16px}
.ic{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;flex:none;overflow:hidden}.ic svg{width:100%;height:100%}
.ic-avito{box-shadow:inset 0 0 0 1px var(--line)}.ic.lgi{width:30px;height:30px;border-radius:8px}
.u{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.spark{width:100%;height:24px;display:block}.spark polyline{fill:none;stroke-width:1.8;stroke-linejoin:round}
.spark.up polyline{stroke:var(--brand)}.spark.down polyline{stroke:var(--bad)}
.stt{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:1px 8px;border-radius:99px;white-space:nowrap;background:var(--soft);color:var(--mut)}
.stt.ok{background:var(--oks);color:var(--ok)}.stt.warn{background:var(--warns);color:var(--warn)}.stt.bad{background:var(--bads);color:var(--bad)}
.up{color:var(--ok)}.down{color:var(--bad)}.bad-t{color:var(--bad);font-weight:600}
.lc{width:100%;display:block;height:220px}.lc .g{stroke:var(--line);stroke-width:1}.lc text{font-size:10px;fill:var(--noise);font-family:inherit}
.lc .pv{fill:none;stroke:#c4c4cc;stroke-width:1.6;stroke-dasharray:4 4}
.empty{color:var(--mut);padding:28px 8px;text-align:center}.empty.sm{padding:12px 0;text-align:left;font-size:13px}.empty a{color:var(--brand2)}
.nd{color:var(--noise)!important;font-weight:500!important;font-size:14px!important}

/* верхняя панель */
.top{height:56px;background:#1a1a1a;display:flex;align-items:center;gap:14px;padding:0 16px;color:#e3e3e3;position:sticky;top:0;z-index:20}
.lg{display:flex;align-items:center;gap:8px;font-weight:700;color:#fff;width:224px}.lg i{width:28px;height:28px;border-radius:7px;background:var(--brand);display:grid;place-items:center;font-style:normal;font-size:10px}
.sr{flex:1;max-width:560px;margin:0 auto;height:34px;background:#303030;border-radius:9px;display:flex;align-items:center;gap:8px;padding:0 12px;color:#b5b5b5;font-size:13px;border:1px solid #404040;text-align:left}
.sr:hover{background:#383838;border-color:#4a4a4a}.sr span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sr kbd,.pal kbd{font:11px inherit;background:#444;border-radius:4px;padding:1px 6px;color:#ccc}
.me{display:flex;align-items:center;gap:10px;font-size:13px}.me b{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;color:#fff;font-size:11px;background:#5a5a5f}
.bell{position:relative;display:grid;place-items:center;width:30px;height:30px;border-radius:8px}.bell:hover{background:#303030}.bell i{position:absolute;top:1px;right:0;background:var(--brand);color:#fff;font-style:normal;font-size:10px;border-radius:99px;padding:0 5px;line-height:15px}
.lo{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:#b5b5b5}.lo:hover{background:#303030;color:#fff}

/* меню */
.wrap{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 56px)}
.nv{background:#ebebeb;padding:12px 10px;font-size:13.5px;color:#303030;display:flex;flex-direction:column;gap:1px;position:sticky;top:56px;height:calc(100vh - 56px);overflow:auto}
.nv a{display:flex;align-items:center;gap:9px;padding:5px 9px;border-radius:8px;font-weight:500;cursor:pointer}.nv a:hover{background:#e0e0e0}
.nv a span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nv a.on{background:#fff;box-shadow:0 1px 0 #d4d4d4}.nv .u{width:17px;height:17px;color:#4a4a4a}
.nv a.s{padding-left:35px;font-weight:400;color:#616161}.nv a .ic{flex:none}.nv a.s .ic{width:16px;height:16px;border-radius:4px}
.nv a em{margin-left:auto;font-style:normal;font-size:11px;background:#dcdcdc;border-radius:6px;padding:0 6px}
.nv a.off{opacity:.5;cursor:default}.nv a.off:hover{background:none}
.nv h6{font-size:12px;color:#616161;font-weight:500;padding:14px 9px 4px;display:flex;justify-content:space-between}
.nv .grow{flex:1}

/* контент */
.mn{padding:22px 32px 48px;max-width:1240px;width:100%}
.hd{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.hd h1{font-size:20px;font-weight:700;color:var(--h);margin-right:6px}.hd .sp{flex:1}
.bt{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border-radius:8px;background:#fff;font-size:13px;font-weight:500;box-shadow:inset 0 -1px 0 #b5b5b5,inset 0 0 0 1px #e3e3e3;white-space:nowrap}
.bt:hover{background:#fafafa}.bt .u{width:15px;height:15px}.bt.dk{background:#303030;color:#fff;box-shadow:inset 0 -1px 0 #000}.bt.dk:hover{background:#1a1a1a}
.bt.ghost{background:none;box-shadow:none;color:var(--mut);padding:0 4px}.bt.danger{color:var(--bad)}.bt.wide{width:100%;justify-content:center;height:38px;font-size:14px}
.seg{display:inline-flex;background:#e3e3e3;border-radius:9px;padding:2px}.seg a{padding:3px 10px;border-radius:7px;font-size:13px;color:#4a4a4a}.seg a.on{background:#fff;color:var(--h);box-shadow:0 1px 1px #0000001a;font-weight:500}
.cd{background:var(--card);border-radius:12px;box-shadow:0 1px 0 #1a1a1a12,0 0 0 1px #1a1a1a0d;padding:16px}
.cd h3{font-size:14px;font-weight:600;color:var(--h);margin-bottom:12px;display:flex;align-items:center;gap:8px}.cd h3 span{margin-left:auto;font-weight:400;color:#8a8a8a;font-size:12px}
.k4{display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin-bottom:16px}
.k4>div{padding:14px 18px;border-right:1px solid #ebebeb}.k4>div:last-child{border:0}.k4>div.on{background:#f7f7f7;border-radius:12px 0 0 12px}
.k4 label{font-size:13px;color:#616161;border-bottom:1px dashed #b5b5b5;font-weight:500}
.k4 .v{display:flex;align-items:baseline;gap:8px;margin:6px 0 4px;min-height:30px}.k4 .v b{font-size:20px;font-weight:700;color:var(--h)}.dl{font-size:12px}
.g2{display:grid;grid-template-columns:1.55fr 1fr;gap:16px;margin-bottom:16px}
.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.big{font-size:22px;font-weight:700;color:var(--h);margin-bottom:6px}.big .dl{font-size:13px;margin-left:6px}
.lgd{display:flex;gap:16px;font-size:12px;color:#616161;margin-top:8px}.lgd i{display:inline-block;width:14px;height:2px;background:var(--brand);vertical-align:middle;margin-right:6px}.lgd i.p{background:none;border-top:2px dashed #b5b5b5}
.br{display:grid;grid-template-columns:1fr auto 52px;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f1f1f1;font-size:13.5px}
.br:last-child{border:0}.br>span:first-child{display:flex;gap:8px;align-items:center;color:var(--brand2)}.br b{font-weight:500;color:var(--h)}.dl-w{text-align:right}
a.br:hover>span:first-child{text-decoration:underline}
.at{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid #f1f1f1;font-size:13.5px}.at:last-child{border:0}.at .tx{flex:1}
.at .dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex:none;background:#b5b5b5}.at .dot.bad{background:var(--bad)}.at .dot.warn{background:#e8a33a}
.x{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;color:var(--noise);opacity:0}.at:hover .x{opacity:1}.x:hover{background:var(--soft)}.x .u{width:14px;height:14px}
.fr{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:7px 0;border-bottom:1px solid #f1f1f1;font-size:13.5px;align-items:center}.fr:last-child{border:0}
.tk{display:flex;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid #f1f1f1;font-size:13.5px}.tk:last-child{border:0}
.chk{width:16px;height:16px;border:1.5px solid #8a8a8a;border-radius:5px;flex:none}.chk:hover{border-color:var(--h)}
.tk.d .chk{background:#303030;border-color:#303030}.tk.d a{color:#8a8a8a;text-decoration:line-through}.tk time{color:#8a8a8a;width:40px}
.tbl{width:100%;border-collapse:collapse;font-size:13.5px}.tbl th{text-align:left;font-weight:500;color:var(--mut);font-size:12.5px;padding:6px 8px;border-bottom:1px solid var(--line)}
.tbl td{padding:9px 8px;border-bottom:1px solid #f4f4f4;vertical-align:middle}.tbl tr:last-child td{border:0}.tbl td .ic{vertical-align:middle;margin-right:4px}
.chg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.chc:hover{box-shadow:0 1px 0 #1a1a1a12,0 0 0 1px #1a1a1a26}.chc .mut{font-size:12.5px;margin-bottom:8px}

/* доска задач */
.flt{height:30px;border:1px solid #d4d4d4;border-radius:8px;padding:0 10px;background:#fff;width:220px}
.board{display:grid;grid-template-columns:repeat(5,minmax(200px,1fr));gap:12px;align-items:start;overflow-x:auto;padding-bottom:8px}
.col{background:#e9e9e9;border-radius:12px;padding:8px;min-height:120px}
.col header{display:flex;align-items:center;gap:8px;padding:4px 6px 8px;font-size:13px;color:#4a4a4a}.col header .cnt{margin-left:auto;font-size:12px;color:var(--noise)}
.col.over{background:#dedede;outline:2px dashed #b5b5b5}
.cards{display:flex;flex-direction:column;gap:8px;min-height:20px}
.card{background:#fff;border-radius:10px;padding:10px 11px;box-shadow:0 1px 0 #1a1a1a14,0 0 0 1px #1a1a1a0d;cursor:grab;font-size:13.5px}
.card:hover{box-shadow:0 1px 0 #1a1a1a14,0 0 0 1px #1a1a1a26}.card.drag{opacity:.4}.card.hl{box-shadow:0 0 0 2px var(--brand)}
.card .t{color:var(--h);font-weight:500;word-break:break-word}.card .m{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px;font-size:11.5px;color:var(--mut)}
.card .m span{background:var(--soft);border-radius:5px;padding:0 6px}.card .m .pr-urgent{background:var(--bads);color:var(--bad)}.card .m .pr-high{background:var(--warns);color:var(--warn)}
.card .m .late{color:var(--bad);background:var(--bads)}
.col[data-status=done] .card .t{color:var(--noise);text-decoration:line-through}
.add{display:flex;align-items:center;gap:6px;width:100%;padding:7px 8px;border-radius:8px;color:#616161;font-size:13px;margin-top:6px}.add:hover{background:#dedede}.add .u{width:15px;height:15px}

/* диалог */
.dlg{border:0;border-radius:14px;padding:0;width:min(560px,94vw);box-shadow:0 20px 60px #0000004d;margin:auto}
.dlg::backdrop{background:#0000004d}
.dlg form{padding:20px;display:flex;flex-direction:column;gap:12px}.dlg h2{font-size:17px;color:var(--h)}
.dlg label,.auth-f label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--mut);font-weight:500}
.dlg input,.dlg select,.dlg textarea,.auth-f input{border:1px solid #d4d4d4;border-radius:8px;padding:7px 10px;font-size:14px;color:var(--text);background:#fff;width:100%}
.dlg input:focus,.dlg select:focus,.dlg textarea:focus,.auth-f input:focus,.flt:focus{outline:2px solid #ef560366;border-color:var(--brand)}
.dlg textarea{resize:vertical}.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.dlg-ft{display:flex;gap:8px;align-items:center;margin-top:4px}.dlg-ft .sp{flex:1}

/* календарь */
.mon{font-size:15px;min-width:130px;text-align:center;color:var(--h)}
.cal{display:grid;grid-template-columns:repeat(7,1fr);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 0 #1a1a1a12,0 0 0 1px #1a1a1a0d}
.dow{padding:8px 10px;font-size:12px;color:var(--mut);border-bottom:1px solid var(--line);background:#fafafa}
.cell{min-height:112px;border-right:1px solid #f1f1f1;border-bottom:1px solid #f1f1f1;padding:6px;display:flex;flex-direction:column;gap:3px;cursor:pointer}
.cell:nth-child(7n){border-right:0}.cell:hover{background:#fcfcfc}.cell.out{background:#fafafa;cursor:default}
.cell .dn{font-size:12px;color:var(--mut);width:22px;height:22px;display:grid;place-items:center;border-radius:50%}
.cell.today .dn{background:var(--brand);color:#fff;font-weight:600}
.ev{font-size:12px;background:var(--soft);border-left:3px solid #b5b5b5;border-radius:4px;padding:2px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--h)}
.ev time{color:var(--mut);margin-right:4px}.ev.p-urgent{border-color:var(--bad)}.ev.p-high{border-color:#e8a33a}.ev.d{opacity:.5;text-decoration:line-through}

/* поиск Ctrl K */
.pal{position:fixed;inset:0;background:#0000004d;z-index:50;display:flex;justify-content:center;align-items:flex-start;padding-top:12vh}
.pal[hidden]{display:none}
.pal-box{width:min(640px,94vw);background:#fff;border-radius:14px;box-shadow:0 20px 60px #00000059;overflow:hidden}
.pal-in{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line)}.pal-in .u{color:var(--mut)}
.pal-in input{flex:1;border:0;outline:0;font-size:16px}.pal-in kbd{background:var(--soft);color:var(--mut)}
.pal-res{max-height:52vh;overflow:auto;padding:6px}
.pal-res a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;font-size:14px}.pal-res a small{margin-left:auto;color:var(--noise);font-size:12px;white-space:nowrap}
.pal-res a.on{background:var(--brands)}.pal-res .none{padding:18px;color:var(--mut);text-align:center}
.pal-ft{display:flex;gap:16px;padding:8px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--noise);background:#fafafa}

/* вход */
body.bare{display:grid;place-items:center;min-height:100vh}
.auth{width:min(380px,92vw)}.auth-lg{display:flex;align-items:center;gap:8px;font-weight:700;font-size:16px;justify-content:center;margin-bottom:18px;color:var(--h)}
.auth-lg i{width:30px;height:30px;border-radius:8px;background:var(--brand);color:#fff;display:grid;place-items:center;font-style:normal;font-size:10px}
.auth-f{background:#fff;border-radius:14px;padding:24px;box-shadow:0 1px 0 #1a1a1a12,0 0 0 1px #1a1a1a0d;display:flex;flex-direction:column;gap:14px}
.auth-f h1{font-size:19px;color:var(--h)}.auth-f p{font-size:13.5px}.err{color:var(--bad);background:var(--bads);padding:8px 10px;border-radius:8px}

.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#303030;color:#fff;padding:9px 16px;border-radius:9px;font-size:13.5px;z-index:60;box-shadow:0 8px 24px #0000004d}

@media (max-width:1100px){.g2,.g3{grid-template-columns:1fr}.chg{grid-template-columns:1fr 1fr}.k4{grid-template-columns:1fr 1fr}.k4>div:nth-child(2){border-right:0}}
@media (max-width:760px){.wrap{grid-template-columns:1fr}.nv{display:none}.mn{padding:16px}.lg{width:auto}.sr span,.me .nm{display:none}.chg{grid-template-columns:1fr}.board{grid-template-columns:repeat(5,82vw)}.row3{grid-template-columns:1fr}}
