/* Портал Staleks. Белый фон, текст #212322, серые #3f423e и #6b6f69, линии #e7e8e4, лайм #C0DF16 только на главной кнопке. */
@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;
  src:url(/static/fonts/montserrat-cyrillic.woff2) format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;
  src:url(/static/fonts/montserrat-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{--ink:#212322;--ink2:#3f423e;--mute:#6b6f69;--line:#e7e8e4;--lime:#C0DF16;--hover:#f4f5f2}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font-family:Montserrat,system-ui,sans-serif;font-size:13px;
  font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
[hidden]{display:none!important}

/* шапка */
.hdr{border-bottom:1px solid var(--line)}
.hdr-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 24px;max-width:1360px;margin:0 auto;padding:0 24px}
.hdr-left{display:flex;flex-wrap:wrap;align-items:center;gap:0 32px}
.brand{display:flex;align-items:center;height:44px;padding-bottom:2px;font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--ink)}
.nav{display:flex;align-items:center;gap:0 24px}
.tab{display:inline-flex;align-items:center;height:44px;border-bottom:2px solid transparent;font-size:13px;font-weight:400;color:var(--mute)}
.tab:hover{color:var(--ink)}
.tab.on{border-bottom-color:var(--ink);font-weight:600;color:var(--ink)}
.tab .cnt{margin-left:6px;font-size:11px;font-weight:600;color:var(--ink)}
.hdr-right{display:flex;align-items:center;gap:0 16px;height:44px;padding-bottom:2px}
.who{font-size:13px;color:var(--mute)}
.who:hover{color:var(--ink)}
.linkbtn{padding:0;border:0;background:transparent;font:inherit;font-size:13px;color:var(--mute);cursor:pointer}
.linkbtn:hover{color:var(--ink)}

.main{max-width:1360px;margin:0 auto;padding:20px 24px 24px}
.main.narrow{max-width:720px}
.pagehead{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px}
.pagehead-l{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 16px;min-width:0}
h1{margin:0;font-size:20px;line-height:28px;font-weight:700;color:var(--ink)}
h2{margin:28px 0 8px;font-size:14px;line-height:20px;font-weight:700;color:var(--ink)}
.sub{margin:0;font-size:13px;line-height:20px;color:var(--mute)}
.note{margin:12px 0 0;font-size:12px;line-height:16px;color:var(--mute)}
.mute{color:var(--mute)}

/* кнопки */
.btn,.btn-primary{display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 14px;border-radius:6px;
  font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}
.btn-primary{border:0;background:var(--lime);color:var(--ink)}
.btn-primary:hover{opacity:.85}
.btn{border:1px solid var(--line);background:#fff;color:var(--ink)}
.btn:hover{background:var(--hover)}
.btn[disabled],.btn-primary[disabled]{opacity:.4;cursor:default}
.btn-sm{height:28px;padding:0 10px;font-size:12px}

/* таблицы */
.tablewrap{margin-top:16px;overflow-x:auto}
.tbl{font-size:13px;line-height:18px;color:var(--ink)}
.tr{display:grid;column-gap:12px;align-items:center;border-bottom:1px solid var(--line)}
.tr.th{height:32px;font-size:12px;line-height:16px;color:var(--mute)}
.tr.rw{min-height:44px;padding:6px 0}
.right{text-align:right;white-space:nowrap}
.num{font-size:12px;line-height:16px;color:var(--mute)}

.t-proj{min-width:1262px}
.t-proj .tr{grid-template-columns:28px minmax(280px,1fr) 84px 168px 150px 72px 96px 64px 148px 64px}
.pname{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px;line-height:18px;font-weight:600;color:var(--ink)}
a.pname:hover{text-decoration:underline}
.pwhy{margin-top:2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:16px;color:var(--mute)}
.cell-min{min-width:0}
.area{color:var(--ink2)}
.badges{display:flex;align-items:center;gap:4px}
.badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:4px;font-size:12px;line-height:16px;font-weight:600;white-space:nowrap}
.badge.staff{background:#eceee9;color:var(--ink2)}
.badge.rev{background:#eef5c9;color:#3d4a00}
.status{color:var(--mute)}
.stale{margin-top:1px;white-space:nowrap;font-size:11px;line-height:14px;color:var(--mute)}
.arrows{display:flex;align-items:center;justify-content:flex-start;gap:4px}
.arrow,.check{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;padding:0;margin:0;border:0;border-radius:6px;
  background:transparent;color:var(--mute);cursor:pointer}
.arrow:hover,.check:hover{background:var(--hover)}
.arrow[aria-disabled=true],.check[aria-disabled=true]{opacity:.3;cursor:default}
.arrow[aria-disabled=true]:hover,.check[aria-disabled=true]:hover{background:transparent}
.prop{margin-top:3px;font-size:11px;line-height:16px;color:var(--ink2)}
.prop button{padding:0 0 0 8px;border:0;background:transparent;font:inherit;font-size:11px;font-weight:600;color:var(--ink);cursor:pointer;text-decoration:underline}
.prop-own{margin-top:3px;font-size:11px;line-height:16px;color:var(--mute)}

.t-task{min-width:1040px}
.t-task .tr{grid-template-columns:28px minmax(280px,1fr) 208px 168px 140px 112px 28px}
.t-task .tr.rw{height:44px;padding:0}
.t-task .tname{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px;line-height:18px;font-weight:600}
.t-task .tproj{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--mute)}
.t-task .tproj:hover{color:var(--ink)}
.due{display:flex;align-items:baseline;gap:6px;white-space:nowrap;color:var(--ink2)}
.due small{font-size:11px;line-height:14px;color:var(--mute)}
.tstatus{color:var(--ink2)}
.t-ptask{min-width:900px}
.t-ptask .tr{grid-template-columns:28px minmax(240px,1fr) 168px 140px 112px 28px}
.t-ptask .tr.rw{height:44px;padding:0}

/* селект, выглядящий как текст */
.sel{max-width:100%;padding:3px 14px 3px 0;border:0;border-bottom:1px dashed transparent;border-radius:0;background:transparent;font:inherit;color:var(--ink2);
  -webkit-appearance:none;appearance:none;cursor:pointer;background-repeat:no-repeat;background-position:right 1px center}
.sel:hover,.sel:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%236b6f69' stroke-width='1.4'/%3E%3C/svg%3E")}
.sel:hover{border-bottom-color:var(--mute)}

/* переключатель Мои / Все */
.seg-group{display:flex;align-items:center;gap:4px}
.seg{display:inline-flex;align-items:center;height:32px;padding:0 10px;border-bottom:2px solid transparent;font-size:13px;font-weight:400;color:var(--mute)}
.seg:hover{color:var(--ink)}
.seg.on{border-bottom-color:var(--ink);font-weight:600;color:var(--ink)}

/* формы */
.card{max-width:420px;margin:72px auto 0;padding:0 24px}
.card h1{margin-bottom:8px}
.card p{margin:0 0 20px;font-size:13px;line-height:20px;color:var(--mute)}
.field{display:block;margin:0 0 14px}
.field>span{display:block;margin-bottom:4px;font-size:12px;line-height:16px;color:var(--mute)}
.input,.textarea,.select{width:100%;height:32px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#fff;font-family:inherit;font-size:13px;color:var(--ink)}
.textarea{height:auto;min-height:76px;padding:8px 10px;resize:vertical;line-height:18px}
.input[readonly]{background:var(--hover);color:var(--ink2)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.radios{display:flex;gap:16px;height:32px;align-items:center}
.radios label{display:flex;align-items:center;gap:6px;cursor:pointer}
.actions{display:flex;gap:8px;align-items:center;margin-top:18px}
.err{min-height:18px;margin-top:10px;font-size:12px;line-height:16px;color:#8a2b1f}
.hint{font-size:12px;line-height:18px;color:var(--mute)}

dialog{width:min(560px,calc(100vw - 32px));padding:20px 22px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}
dialog::backdrop{background:rgba(33,35,34,.35)}
dialog h2{margin:0 0 14px;font-size:16px}

.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:min(560px,calc(100vw - 32px));padding:10px 14px;border-radius:6px;
  background:var(--ink);color:#fff;font-size:13px;line-height:18px;z-index:50}

/* страница проекта */
.meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px 24px;margin:16px 0 0;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.meta dt{margin:0 0 2px;font-size:12px;line-height:16px;color:var(--mute)}
.meta dd{margin:0;font-size:13px;line-height:18px;color:var(--ink)}
.lead{margin:12px 0 0;max-width:820px;font-size:14px;line-height:22px;color:var(--ink2)}
details.edit{margin-top:20px}
details.edit summary{cursor:pointer;font-size:13px;font-weight:600}
.addtask{margin-top:12px;display:grid;grid-template-columns:minmax(220px,1fr) 200px 150px auto;gap:8px;align-items:end;max-width:900px}

/* люди */
.t-people{min-width:1100px}
.t-people .tr{grid-template-columns:minmax(200px,1.2fr) 140px 190px 150px 110px 180px 230px}
.t-people .tr.rw{padding:8px 0}
.t-journal{min-width:1100px}
.t-journal .tr{grid-template-columns:128px 160px 90px 250px 200px minmax(240px,1fr)}
.t-journal .tr.rw{padding:8px 0;align-items:start}
.wrap{overflow-wrap:anywhere}
.filters{display:flex;gap:16px;margin-top:12px}

/* токены, код */
pre.code{margin:8px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--hover);font:12px/18px ui-monospace,Menlo,Consolas,monospace;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}
.tokenbox{margin-top:12px;padding:12px;border:1px solid var(--ink);border-radius:6px}
.tokenbox b{display:block;margin-bottom:6px}
.t-tok{min-width:640px}
.t-tok .tr{grid-template-columns:minmax(160px,1fr) 100px 120px 190px 90px}
.t-tok .tr.rw{padding:8px 0}

@media (max-width:700px){
  .hdr-in,.main{padding-left:16px;padding-right:16px}
  .row2,.row3,.addtask{grid-template-columns:1fr}
}

h3.h3{margin:28px 0 8px;font-size:13px;line-height:18px;font-weight:700}
.tokform{grid-template-columns:minmax(220px,1fr) auto;max-width:640px}

.actions+.hint{margin-top:12px}
