:root{--bg:#f1e2e5;--surface:#fff;--ink:#151922;--muted:#5d6574;--line:#e2cfd4;--accent:#2f49b8;--late:#c2410c;--wait:#9a6a00;--ok:#2e7a4e;--wine:#8a2846;--f-display:"Unbounded", "Manrope", system-ui, sans-serif;--f-body:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--r:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#191015;--surface:#22171c;--ink:#e7e9ef;--muted:#9aa1b0;--line:#352630;--accent:#93a6ff;--late:#ff8f5e;--wait:#e2b54a;--ok:#6cc28e;--wine:#e094a8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.45}body:before{content:"";z-index:-1;pointer-events:none;opacity:.5;background:url(/ganesha.webp) 50%/contain no-repeat;width:236px;height:333px;position:absolute;top:64px;right:max(16px,50vw - 586px);-webkit-mask-image:radial-gradient(closest-side,#000 55%,#0000 100%);mask-image:radial-gradient(closest-side,#000 55%,#0000 100%)}@media (width<=760px){body:before{opacity:.35;width:148px;height:209px;top:56px;right:6px}}body:after{content:"я люблю нику";z-index:1;pointer-events:none;right:max(14px, env(safe-area-inset-right));font-family:var(--f-display);letter-spacing:.04em;color:var(--wine);opacity:.6;font-size:13px;font-style:italic;position:fixed;bottom:10px}@media (width<=560px){body:after{font-size:12px;bottom:6px}}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:13px}.center-note{text-align:center;color:var(--muted);padding:80px 16px}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:5;position:sticky;top:0}.topbar-in{max-width:1180px;padding:10px max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));flex-wrap:wrap;align-items:center;gap:18px;margin:0 auto;display:flex}.brand{font-family:var(--f-display);color:var(--ink);align-items:center;gap:8px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.brand.big{font-size:20px}.brand-mark{background:var(--accent);border-radius:6px;flex:none;width:22px;height:22px;position:relative}.brand-mark:after{content:"";border-left:2.5px solid var(--surface);border-bottom:2.5px solid var(--surface);width:9px;height:5px;position:absolute;top:5px;left:6px;transform:rotate(-45deg)}.nav-links{gap:4px;display:flex}.nav-links a{color:var(--muted);border-radius:8px;padding:6px 12px;font-weight:600;text-decoration:none}.nav-links a.active{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--ink)}.who{flex-direction:column;align-items:flex-end;margin-left:auto;line-height:1.2;display:flex}.who-name{font-weight:700}.who-role{color:var(--muted);font-size:12px}.top-actions{gap:6px;display:flex}.link-btn{border:1px solid var(--line);cursor:pointer;color:var(--ink);background:0 0;border-radius:8px;padding:6px 12px;font-size:14px;font-weight:600;text-decoration:none}@media (width<=560px){.who{align-items:flex-start;margin-left:0}}.wrap{max-width:1180px;padding:24px max(16px, env(safe-area-inset-right)) 64px max(16px, env(safe-area-inset-left));margin:0 auto}.board{flex-direction:column;gap:18px;display:flex}.board-head{flex-direction:column;gap:14px;display:flex}.eyebrow{font-family:var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12px}h1,.h-page{font-family:var(--f-display);letter-spacing:-.01em;text-wrap:balance;margin:0;font-size:clamp(26px,5vw,34px);font-weight:700;line-height:1.1}.sub{color:var(--muted);max-width:70ch;margin:0}.quote{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--wait);flex-direction:column;gap:6px;max-width:72ch;margin:0;padding:14px 18px;display:flex}.quote .ql{letter-spacing:.08em;text-transform:uppercase;color:var(--wait);font-size:11px;font-weight:700}.quote blockquote{font-family:var(--f-display);text-wrap:balance;margin:0;font-size:clamp(15px,2.2vw,18px);font-weight:500;line-height:1.4}.quote figcaption{color:var(--muted);font-size:13px}.controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.seg{border:1px solid var(--line);background:var(--surface);border-radius:9px;display:inline-flex;overflow:hidden}.seg button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:8px 16px;font-size:14px;font-weight:600}.seg button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.nav{background:var(--surface);border:1px solid var(--line);border-radius:9px;align-items:center;gap:4px;padding:3px;display:inline-flex}.nav button{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 10px;font-weight:600}.nav button:hover{background:color-mix(in srgb, var(--accent) 10%, transparent)}.nav .lbl{font-family:var(--f-mono);text-align:center;font-variant-numeric:tabular-nums;min-width:9.5em;font-size:13px}.nav .now{color:var(--accent);font-size:13px}.stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}@media (width<=760px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=440px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:2px;padding:12px 14px;display:flex}.stat .n{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:24px;font-weight:500;line-height:1.1}.stat .l{color:var(--muted);font-size:13px}.stat.ok .n{color:var(--ok)}.stat.late .n{color:var(--late)}.stat.wait .n{color:var(--wait)}.stat.doing .n{color:var(--accent)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:600;display:inline-flex}.chip .c{color:var(--muted);font-family:var(--f-mono);font-size:12px;font-weight:400}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip[aria-pressed=true] .c{color:inherit;opacity:.7}.banner{background:color-mix(in srgb, var(--late) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--late) 35%, transparent);border-radius:var(--r);padding:10px 14px}.empty{background:var(--surface);border:1px dashed var(--line);border-radius:var(--r);text-align:center;color:var(--muted);padding:28px 18px}.empty b{color:var(--ink);margin-bottom:4px;font-size:16px;display:block}.team-h{font-family:var(--f-display);margin:8px 0 0;font-size:18px;font-weight:500}.people{grid-template-columns:repeat(auto-fill,minmax(min(100%,430px),1fr));align-items:start;gap:14px;display:grid}.person{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;min-width:0;display:flex}.person.mine{border:2px solid var(--accent)}.person.mine .phead{background:color-mix(in srgb, var(--accent) 9%, var(--surface));border-radius:10px 10px 0 0;padding:14px 16px 12px}.person.mine .pname{font-size:21px}.mylab{font-family:var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:3px;font-size:11px;font-weight:700;display:block}.phead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px 10px;display:flex}.pname{font-family:var(--f-display);overflow-wrap:anywhere;min-width:0;font-size:15px;font-weight:500;line-height:1.25}.role{font-family:var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-left:6px;font-size:11px;font-weight:700}.prog{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.prog span{font-family:var(--f-mono);color:var(--muted);font-size:12px}.pbar{background:color-mix(in srgb, var(--muted) 18%, transparent);border-radius:3px;width:84px;height:5px;overflow:hidden}.pbar i{background:var(--ok);height:100%;display:block}.none{color:var(--muted);padding:14px;font-size:14px}.row{border-top:1px solid var(--line);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:10px 14px;display:grid}.row:first-child{border-top:0}.row:hover{background:color-mix(in srgb, var(--accent) 5%, transparent)}.check{appearance:none;border:1.5px solid var(--muted);cursor:pointer;background:0 0;border-radius:6px;place-content:center;width:20px;height:20px;margin:1px 0 0;display:grid}.check:disabled{cursor:default;opacity:.6}.check:checked{background:var(--ok);border-color:var(--ok)}.check:checked:after{content:"";border-left:2px solid var(--surface);border-bottom:2px solid var(--surface);width:10px;height:6px;transform:rotate(-45deg)translate(1px,-1px)}.main{flex-direction:column;gap:4px;min-width:0;display:flex}.title{overflow-wrap:anywhere;font-weight:600}.row.is-done .title{color:var(--muted);text-decoration:line-through}.meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:12px;display:flex}.tag{border:1px solid var(--line);border-radius:6px;padding:0 7px}.pill{border-radius:6px;padding:0 7px;font-weight:600}.pill.doing{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.pill.waiting{color:var(--wait);background:color-mix(in srgb, var(--wait) 14%, transparent)}.pill.todo{color:var(--muted);background:color-mix(in srgb, var(--muted) 12%, transparent)}.pill.done{color:var(--ok);background:color-mix(in srgb, var(--ok) 14%, transparent)}.flag{color:var(--late);font-weight:600}.pri{color:var(--late);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.lastc{color:var(--muted);overflow-wrap:anywhere;-webkit-line-clamp:2;border-left:2px solid var(--line);-webkit-box-orient:vertical;padding-left:8px;font-size:13px;display:-webkit-box;overflow:hidden}.lastc b{color:var(--ink);font-weight:600}form.add{border-top:1px solid var(--line);gap:6px;padding:8px 10px;display:flex}form.add input{background:0 0;border:0;flex:1;min-width:0;padding:6px 4px;font-size:14px}form.add button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:7px;padding:4px 10px;font-size:13px;font-weight:600}form.add button:disabled{opacity:.5;cursor:default}.btn{cursor:pointer;background:var(--accent);color:var(--surface);border:1px solid #0000;border-radius:8px;padding:8px 16px;font-weight:600}.btn.sm{padding:5px 12px;font-size:13px}.btn.ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn.danger{color:var(--late);border-color:color-mix(in srgb, var(--late) 40%, transparent);background:0 0}.btn.danger.armed{background:var(--late);color:var(--surface)}.btn:disabled{opacity:.5;cursor:default}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field>span{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.field input,.field select,.field textarea{background:var(--bg);border:1px solid var(--line);border-radius:8px;width:100%;min-width:0;padding:8px 10px}.field textarea{resize:vertical;min-height:64px}.field :disabled{opacity:.75}.error{color:var(--late);font-size:14px}.dialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;width:min(600px,100vw - 32px);max-height:calc(100vh - 32px);padding:0}.dialog::backdrop{background:#0a0c1273}.dlg{flex-direction:column;gap:14px;padding:20px;display:flex}.dlg h3{font-family:var(--f-display);margin:0;font-size:17px;font-weight:500}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=460px){.grid2{grid-template-columns:1fr}}.actions{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.actions .r{gap:8px;margin-left:auto;display:flex}.comments{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:14px;display:flex}.comments h4{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:0;font-size:12px;font-weight:600}.cm{background:var(--bg);border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.cm .h{color:var(--muted);align-items:center;gap:4px;font-size:12px;display:flex}.cm .h b{color:var(--ink)}.cm .t{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.cm-del{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:16px;line-height:1}.cadd{align-items:flex-end;gap:8px;display:flex}.cadd textarea{background:var(--bg);border:1px solid var(--line);resize:vertical;border-radius:8px;flex:1;min-width:0;min-height:44px;padding:8px 10px;font-size:14px}.auth-screen{flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:100vh;padding:24px 16px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:14px;width:min(400px,100%);padding:24px;display:flex}.auth-card.inline{margin:0 auto}.auth-quote{width:min(400px,100%)}.admin{flex-direction:column;gap:18px;display:flex}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.panel h2{margin:0;font-size:15px;font-weight:700}.legend p{margin:0;font-size:14px}.user-form{grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));align-items:end;gap:12px;display:grid}.user-form .narrow{max-width:120px}.user-form .full{grid-column:1/-1;margin:0}.form-actions{gap:8px;display:flex}.users{flex-direction:column;gap:8px;display:flex}.user-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 14px;display:flex}.user-card.off{opacity:.6}.user-card.editing{display:block}.user-card .full{flex-basis:100%}.u-main{flex-direction:column;flex:320px;gap:4px;min-width:0;display:flex}.u-name{flex-wrap:wrap;align-items:center;gap:8px;font-weight:700;display:flex}.u-meta{color:var(--muted);overflow-wrap:anywhere;flex-wrap:wrap;gap:4px 14px;font-size:13px;display:flex}.you{color:var(--accent);font-size:12px;font-weight:600}.badge{letter-spacing:.05em;text-transform:uppercase;border-radius:6px;padding:1px 7px;font-size:11px;font-weight:700}.badge.admin{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.badge.viewer{color:var(--wait);background:color-mix(in srgb, var(--wait) 14%, transparent)}.badge.rop{color:var(--muted);background:color-mix(in srgb, var(--muted) 12%, transparent)}.row-actions{flex-wrap:wrap;gap:6px;display:flex}.notice{background:color-mix(in srgb, var(--ok) 9%, var(--surface));border:1px solid color-mix(in srgb, var(--ok) 35%, transparent);border-radius:12px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.notice p{margin:0}.pw{font-family:var(--f-mono);background:var(--surface);border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin:0;padding:10px 12px;font-size:14px}@media (prefers-reduced-motion:no-preference){.row,.chip,.btn{transition:background-color .15s,border-color .15s}}
