:root{--red: #d8000f;--red-deep: #ab000c;--red-tint: #fdecec;--ink: #1a1414;--ink-soft: #3a2f2f;--off-white: #fff8f5;--white: #ffffff;--yellow: #ffc400;--amber: #ff9500;--blue: #1f49e5;--muted: #786c6c;--line: #ece2de;--line-strong: #ddd0cb;--st-ongoing: #ffc400;--st-ongoing-fill: #fffaea;--st-ongoing-ink: #6b4e00;--st-done: #0e7c43;--st-done-fill: #f0f8f3;--st-overdue: #d8000f;--st-overdue-fill: #fdf0ef;--serif: "Instrument Serif", Georgia, serif;--sans: "Archivo", system-ui, sans-serif;--accent: "Space Grotesk", var(--sans);--shadow-card: 0 1px 2px rgba(26, 20, 20, .04), 0 10px 28px -16px rgba(26, 20, 20, .22);--shadow-red: 0 6px 18px -8px rgba(216, 0, 15, .55);--radius: 14px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--off-white);color:var(--ink);font-family:var(--sans);font-size:14.5px;line-height:1.55;-webkit-font-smoothing:antialiased}#root{display:flex;flex-direction:column;min-height:100vh}h1,h2,h3{margin:0}h1{font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.05;letter-spacing:-.015em}h2{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}a{color:var(--red);text-decoration:none}a:hover{text-decoration:underline}button{font-family:var(--sans);cursor:pointer}:focus-visible{outline:2px solid var(--red);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.masthead{background:var(--ink);color:var(--off-white)}.masthead-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:14px;padding:10px 22px}.markbadge{background:var(--red);border-radius:9px;padding:8px 11px;display:flex;align-items:center;flex-shrink:0}.markbadge img{height:22px;display:block}.markbadge.sm{padding:6px 8px;border-radius:7px}.markbadge.sm img{height:15px}.usermenu{position:relative;flex-shrink:0}.usertrigger{display:flex;align-items:center;gap:9px;background:none;border:1px solid transparent;border-radius:100px;padding:4px 12px 4px 4px;color:#fff8f5d9}.usertrigger:hover{border-color:#fff8f540}.usertrigger img,.userinitial{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;font-weight:600;font-size:13px;object-fit:cover}.username{font-size:13px;font-weight:500}.usercard{position:absolute;right:0;top:calc(100% + 8px);width:268px;z-index:60;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 44px -14px #1a141466;overflow:hidden}.usercard-head{display:flex;gap:11px;padding:15px;align-items:flex-start}.usercard-head img{width:38px;height:38px;border-radius:50%;flex-shrink:0;object-fit:cover}.usercard-name{font-weight:600;font-size:14px}.usercard-mail{font-family:var(--accent);font-size:11.5px;color:var(--muted);margin-bottom:7px;word-break:break-all}.usercard-action{width:100%;background:none;border:none;border-top:1px solid var(--line);padding:12px 15px;text-align:left;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--red)}.usercard-action:hover{background:var(--red-tint)}.rolechip{font-family:var(--accent);font-size:9.5px;font-weight:500;text-transform:uppercase;letter-spacing:.12em;background:var(--ink);color:var(--off-white);padding:3px 9px;border-radius:100px;display:inline-block}.tabs{display:flex;gap:4px;flex-wrap:wrap;background:#1a14140d;border-radius:100px;padding:4px;margin-bottom:26px;width:fit-content;max-width:100%}.tabs a{font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding:8px 18px;border-radius:100px;transition:color .14s,background .14s;white-space:nowrap}.tabs a:hover{color:var(--ink);text-decoration:none}.tabs a.active,.tabs a.active:hover{background:var(--red);color:#fff;box-shadow:var(--shadow-red)}.shell{max-width:1240px;margin:0 auto;padding:30px 22px 72px;width:100%;flex:1}.btn{font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;background:var(--red);color:var(--white);border:1px solid var(--red);border-radius:100px;padding:9px 20px;box-shadow:var(--shadow-red);transition:background .14s;white-space:nowrap;display:inline-block;text-decoration:none}.btn:hover{background:var(--red-deep);border-color:var(--red-deep);text-decoration:none;color:var(--white)}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line-strong);box-shadow:none}.btn.ghost:hover{background:var(--white);border-color:var(--ink);color:var(--ink)}.btn.danger{background:transparent;color:var(--red);border-color:#d8000f59;box-shadow:none}.btn.danger:hover{background:var(--red-tint);border-color:var(--red);color:var(--red)}.btn.sm{padding:6px 14px;font-size:10px}.btn:disabled{opacity:.45;cursor:default;box-shadow:none}input,select,textarea{font-family:var(--sans);font-size:13.5px;color:var(--ink);background:var(--white);border:1px solid var(--line-strong);border-radius:9px;padding:9px 12px;width:100%;transition:border-color .14s,box-shadow .14s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px #d8000f1f}input:disabled,select:disabled{background:#f6f2f0;color:var(--muted)}textarea{resize:vertical;min-height:66px}label{display:block;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:14px 0 5px}.hint{font-family:var(--accent);font-size:11px;color:var(--muted);margin:5px 0 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.picker{position:relative}.picker-btn{width:100%;text-align:left;background:var(--white);border:1px solid var(--line-strong);border-radius:9px;padding:9px 12px;font-size:13.5px;color:var(--muted);display:flex;align-items:center;gap:8px}.picker-btn.has{color:var(--ink)}.picker-btn:hover{border-color:var(--muted)}.picker-btn span:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-caret{width:0;height:0;flex-shrink:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--muted)}.picker-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;background:var(--white);border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 14px 34px -12px #1a14144d;max-height:240px;overflow:auto;padding:4px 0}.picker-opt{display:flex;align-items:center;gap:9px;padding:7px 12px;margin:0;font-size:13px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink);cursor:pointer}.picker-opt:hover{background:var(--off-white)}.picker-opt input{width:auto;margin:0}.motif{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.motif svg{width:17px;height:17px;display:block}.motif.sm{width:22px;height:22px}.motif.sm svg{width:13px;height:13px}.motif.ongoing{background:var(--st-ongoing);color:var(--st-ongoing-ink)}.motif.finished{background:var(--st-done);color:var(--white)}.motif.overdue{background:var(--st-overdue);color:var(--white)}.ledger{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);overflow:hidden;box-shadow:var(--shadow-card)}.lrow{display:grid;grid-template-columns:26px 30px 52px minmax(200px,1fr) 96px 168px 132px 102px;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line);transition:background .14s}.lrow:not(.lhead){cursor:pointer}.lhead{background:var(--off-white);cursor:default;font-size:9.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line-strong);padding-top:9px;padding-bottom:9px}.lwrap{border-bottom:1px solid var(--line)}.lwrap:last-child{border-bottom:none}.lwrap .lrow{border-bottom:none}.lwrap.open .lrow{background:var(--white)}.lrow.ongoing{background:var(--st-ongoing-fill)}.lrow.finished{background:var(--st-done-fill)}.lrow.overdue{background:var(--st-overdue-fill)}.lrow:not(.lhead):hover{background:var(--white)}.chev{background:none;border:none;padding:0;color:var(--muted);width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;transition:transform .16s,color .14s}.chev svg{width:16px;height:16px}.chev.open{transform:rotate(90deg);color:var(--ink)}.serial{font-family:var(--accent);font-size:11.5px;font-weight:500;color:var(--muted)}.lname{font-weight:600;font-size:14.5px;line-height:1.3;min-width:0}.lname .sub{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-weight:400;margin-top:4px}.chip-mini{font-family:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:.08em;background:#1a141412;color:var(--ink-soft);padding:2px 8px;border-radius:100px}.in-project{font-size:11.5px;color:var(--muted)}.lteam{display:flex;align-items:center;gap:4px}.avatars{display:inline-flex;gap:3px}.avatar{width:24px;height:24px;border-radius:50%;flex-shrink:0;background:#1a141414;color:var(--ink-soft);font-family:var(--accent);font-size:9.5px;font-weight:500;display:inline-flex;align-items:center;justify-content:center}.avatar.owner{background:var(--ink);color:var(--off-white)}.avatar.more{background:none;color:var(--muted)}.ltime{display:flex;flex-direction:column;gap:5px}.progress{display:block;height:5px;width:100%;border-radius:100px;background:#1a141417;overflow:hidden}.progress-fill{display:block;height:100%;border-radius:100px;background:var(--muted)}.progress.ongoing .progress-fill{background:var(--st-ongoing)}.progress.overdue .progress-fill{background:var(--st-overdue)}.progress.finished .progress-fill{background:var(--st-done)}.deadline{font-family:var(--accent);font-size:11.5px;color:var(--muted)}.lact{display:flex;flex-direction:column;line-height:1.35}.count.dim{opacity:.7}.groupbar{display:flex;align-items:center;gap:10px;padding:9px 16px;background:#f8f4f2;border-bottom:1px solid var(--line);border-top:1px solid var(--line)}.lgroup:first-of-type .groupbar{border-top:none}.glabel{font-weight:700;font-size:12.5px;letter-spacing:.02em;flex:1}.glabel a{color:var(--ink)}.glabel a:hover{color:var(--red)}.gcounts{display:flex;gap:6px}.gcount{font-family:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:2px 9px;border-radius:100px}.lpanel{display:grid;grid-template-columns:1fr 260px;gap:24px;padding:4px 18px 20px 68px;background:var(--white);cursor:default}.lpanel-head{display:flex;align-items:center;gap:9px;margin-bottom:12px;flex-wrap:wrap}.pdesc{margin:0 0 12px;font-size:13.5px;color:var(--ink-soft)}.lpanel-side{border-left:1px solid var(--line);padding-left:20px}.meta.tight dt{margin-top:10px}.meta.tight{grid-template-columns:1fr}.thread{margin-top:4px}.composer{background:var(--off-white);border:1px solid var(--line);border-radius:12px;padding:12px}.composer textarea{background:var(--white)}.composer-row{display:flex;align-items:center;gap:8px;margin-top:9px;flex-wrap:wrap}.attach{display:inline-flex;align-items:center;gap:6px;background:var(--white);border:1px solid var(--line-strong);border-radius:100px;padding:6px 13px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;margin:0;max-width:220px}.attach:hover{border-color:var(--ink);color:var(--ink)}.attach.on{border-color:var(--red);color:var(--red)}.attach svg{width:13px;height:13px;flex-shrink:0}.attach span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linkfield{margin-top:9px}.update{border-left:2px solid var(--line-strong);padding:3px 0 3px 16px;margin:16px 0}.update.latest{border-left-color:var(--red)}.update .who{font-family:var(--accent);font-size:11.5px;color:var(--muted);margin-bottom:3px}.update .who .exact{display:none}.update:hover .who .exact{display:inline}.utext{white-space:pre-wrap}.attachments{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.attachment{display:inline-flex;align-items:center;gap:6px;background:var(--off-white);border:1px solid var(--line);border-radius:100px;padding:4px 11px;font-size:12px;max-width:280px}.attachment svg{width:13px;height:13px;color:var(--muted);flex-shrink:0}.attachment a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment button{background:none;border:none;color:var(--muted);font-size:14px;padding:0 2px;line-height:1}.attachment button:hover{color:var(--red)}details.pastlog summary{cursor:pointer;color:var(--red);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-top:12px}.toolbar{display:flex;gap:8px;align-items:center;margin:18px 0 14px;flex-wrap:wrap}.toolbar select,.toolbar input{width:auto;border-radius:100px;font-size:12.5px;padding:8px 14px}.spacer{flex:1}.count{font-family:var(--accent);font-size:12px;color:var(--muted)}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-bottom:18px;box-shadow:var(--shadow-card)}.card h2{margin-bottom:14px}.meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:2px 24px;margin:0}.meta dt{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:14px}.meta dd{margin:2px 0 0;font-size:14px}.meta dd.mono{font-family:var(--accent);font-size:13px}.pagehead{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.eyebrow{font-family:var(--accent);font-size:10.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin:0 0 6px}.subhead{color:var(--muted);margin:8px 0 0;font-size:13.5px}.stats{display:flex;gap:34px;margin:22px 0 4px;flex-wrap:wrap}.stat{display:flex;align-items:baseline;gap:9px}.stat b{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1;letter-spacing:-.02em}.stat.ongoing b{color:var(--st-ongoing-ink)}.stat.finished b{color:var(--st-done)}.stat.overdue b{color:var(--red)}.stat span{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.pill{font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;border-radius:100px;display:inline-block;white-space:nowrap}.pill.ongoing{background:var(--st-ongoing);color:var(--st-ongoing-ink)}.pill.finished{background:var(--st-done);color:var(--white)}.pill.overdue{background:var(--st-overdue);color:var(--white)}.pill.impact{background:#1a141412;color:var(--ink-soft)}.bellfloat{position:fixed;right:22px;bottom:22px;z-index:70}.bellbtn{width:52px;height:52px;border-radius:50%;border:none;background:var(--ink);color:var(--off-white);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px -6px #1a141473;transition:transform .14s,background .14s}.bellbtn:hover{transform:translateY(-2px)}.bellbtn.on{background:var(--red)}.bellbtn svg{width:21px;height:21px}.bellbtn .dot{position:absolute;top:-2px;right:-2px;background:var(--red);color:#fff;font-family:var(--accent);font-size:11px;font-weight:500;border-radius:100px;padding:2px 7px;border:2px solid var(--off-white)}.bellbtn.on .dot{background:var(--ink)}.drawer{position:absolute;right:0;bottom:64px;width:min(360px,calc(100vw - 44px));max-height:min(60vh,460px);overflow:auto;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 22px 50px -14px #1a14146b;color:var(--ink)}.drawer-head{padding:12px 16px;border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);position:sticky;top:0;background:var(--white)}.notif{padding:11px 16px;border-bottom:1px solid var(--line);font-size:13px}.notif:last-child{border-bottom:none}.notif.unread{background:var(--red-tint)}.notif time{display:block;font-family:var(--accent);font-size:11px;color:var(--muted);margin-top:3px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a14148c;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px;z-index:50;overflow:auto}.modal{background:var(--white);border-radius:var(--radius);padding:26px;width:100%;max-width:560px;box-shadow:0 30px 70px -20px #1a141480}.modal.wide{max-width:660px}.modal-title{font-family:var(--serif);font-size:30px;font-weight:400;letter-spacing:-.015em;line-height:1.1;margin:0 0 4px}.modal .actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.loginpage{min-height:100vh;background:var(--red);color:var(--off-white);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;text-align:center}.loginpage .mark{width:min(210px,52vw);margin-bottom:24px}.loginpage .eyebrow{color:#fff8f5b8;margin-bottom:34px}.loginpage .gbtn{display:flex;justify-content:center}.loginerr{background:#1a141447;color:var(--off-white);border:1px solid rgba(255,248,245,.3);padding:12px 20px;border-radius:12px;font-size:13.5px;max-width:430px;margin-bottom:24px}.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--red);color:var(--off-white);font-family:var(--accent);letter-spacing:.1em;text-transform:uppercase;font-size:12px}.empty{padding:40px;text-align:center;color:var(--muted);font-size:13.5px}.err{color:var(--red);font-size:13px;margin-top:10px;font-weight:500}.chiplist{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.chip{background:#1a14140f;border-radius:100px;padding:5px 8px 5px 14px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;gap:4px;align-items:center}.chip.static{padding:5px 14px}.chip button{background:none;border:none;color:var(--muted);padding:0 4px;font-size:14px;line-height:1}.chip button:hover{color:var(--red)}table.plain{width:100%;border-collapse:collapse}table.plain th{text-align:left;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);padding:9px 12px;border-bottom:1px solid var(--line-strong)}table.plain td{padding:11px 12px;border-bottom:1px solid var(--line);font-size:13.5px}table.plain tr:last-child td{border-bottom:none}.filters{display:contents}.filtertoggle{display:none}.searchbox{max-width:190px}@media (max-width: 1180px){.lrow{grid-template-columns:24px 30px 48px minmax(160px,1fr) 92px 158px 98px}.lrow .lact{display:none}}@media (max-width: 980px){.lrow{grid-template-columns:24px 30px 46px minmax(150px,1fr) 150px 98px}.lrow .lteam{display:none}.lpanel{grid-template-columns:1fr;gap:14px;padding:4px 16px 18px 52px}.lpanel-side{border-left:none;border-top:1px solid var(--line);padding-left:0;padding-top:4px}.meta.tight{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.shell{padding:24px 16px 56px}.masthead-inner{padding:12px 16px}}@media (max-width: 900px){.username{display:none}.usertrigger{padding:4px}.filtertoggle{display:inline-flex;align-items:center;gap:6px;background:var(--white);border:1px solid var(--line-strong);border-radius:100px;padding:8px 16px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.filtertoggle.has,.filtertoggle.on{border-color:var(--red);color:var(--red)}.filters{display:none}.filters.open{display:flex;flex-wrap:wrap;gap:7px;width:100%;order:5;margin-top:2px}.filters.open select{flex:1 1 150px;min-width:0}.searchbox{flex:1 1 140px;max-width:none}.toolbar{gap:7px}}@media (max-width: 760px){.lrow{grid-template-columns:24px 28px minmax(120px,1fr) auto;gap:10px;padding:12px 14px}.lrow .hide-m,.lrow .serial,.lrow .ltime{display:none}.sub-deadline{display:inline}.lhead{display:none}.lpanel{padding:4px 14px 18px}h1{font-size:30px}.modal-title{font-size:24px}.form-grid{grid-template-columns:1fr;gap:0}.stats{gap:22px}.stat b{font-size:28px}.card{padding:18px}.overlay{padding:16px 12px}.drawer{width:min(320px,calc(100vw - 32px))}.pagehead{gap:10px}.pagehead .btn{flex-shrink:0}}@media (max-width: 560px){.shell{padding:20px 12px 84px}.tabs{width:100%;justify-content:space-between;gap:2px}.tabs a{padding:8px 12px;font-size:11px;flex:1;text-align:center}.bellfloat{right:14px;bottom:14px}.bellbtn{width:48px;height:48px}.masthead-inner{padding:10px 12px}.markbadge{padding:7px 9px}.markbadge img{height:20px}.lrow{grid-template-columns:22px 26px minmax(90px,1fr) auto;padding:11px 12px}.motif{width:26px;height:26px}.motif svg{width:15px;height:15px}.lname{font-size:13.5px}.pill{font-size:8.5px;padding:4px 9px;letter-spacing:.09em}.groupbar{padding:9px 12px;gap:7px}.gcounts{display:none}h1{font-size:26px}.stats{gap:18px}.stat b{font-size:24px}.stat span{font-size:9px}.composer-row{gap:6px}.attach{padding:6px 11px;font-size:10px;max-width:150px}.card{padding:15px;border-radius:12px}.modal{padding:20px}.meta{grid-template-columns:1fr}.lpanel-head{gap:7px}.btn{padding:8px 16px}}@media (pointer: coarse){.chev{width:28px;height:28px}.picker-opt{padding:11px 13px}.attachment button,.chip button{padding:4px 6px}}.completion{display:flex;flex-direction:column;gap:5px}.completion-label{font-family:var(--accent);font-size:11.5px;color:var(--muted)}.completion-label strong{color:var(--ink);font-weight:500}.projprogress{margin-top:18px;max-width:320px}.projprogress label{margin-top:0}.picked-list,.picked-one{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:7px}.chip.person{background:#1a141412;color:var(--ink);font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;padding:5px 7px 5px 13px}.picker-opt{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;text-align:left;background:none;border:none;padding:8px 13px;margin:0;cursor:pointer;font-size:13px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink)}.picker-opt.check{flex-direction:row;align-items:center;gap:9px}.picker-opt.check input{width:auto;margin:0}.picker-opt:hover,.picker-opt.active{background:var(--off-white)}.picker-opt:disabled{opacity:.6;cursor:default}.popt-name{font-weight:500}.popt-mail{font-family:var(--accent);font-size:11px;color:var(--muted)}.picker-opt.invite{border-top:1px solid var(--line)}.picker-opt.invite .popt-name{color:var(--red);font-weight:700}.picker-note{padding:10px 13px;margin:0;font-size:12.5px;color:var(--muted)}.hint.ok{color:var(--st-done)}.backlink{display:inline-flex;align-items:center;gap:3px;background:none;border:none;padding:0;margin:0 0 14px -4px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.backlink svg{width:15px;height:15px}.backlink:hover{color:var(--red)}.sub-deadline{display:none;font-family:var(--accent);font-size:11.5px;color:var(--muted)}.sub-deadline.hot{color:var(--red);font-weight:500}.docframe{width:100%;height:min(62vh,560px);border:1px solid var(--line);border-radius:10px;background:var(--off-white);display:block}.attachment.doc svg{color:var(--blue)}.attachment.sheet svg{color:var(--st-done)}.linklike{background:none;border:none;padding:0;font:inherit;color:var(--red);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linklike:hover{text-decoration:underline}.reading{display:flex;align-items:center;gap:12px;padding:26px 0}.spinner{width:20px;height:20px;border-radius:50%;flex-shrink:0;border:2px solid var(--line-strong);border-top-color:var(--red);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.draft-task{display:grid;grid-template-columns:1fr 150px 34px;gap:8px;align-items:center;margin-top:8px}.draft-res{grid-column:1 / -1;font-family:var(--accent);font-size:11px;color:var(--muted);margin-top:-2px}code{font-family:var(--accent);font-size:12px;background:#1a141412;padding:1px 6px;border-radius:5px}@media (max-width: 560px){.draft-task{grid-template-columns:1fr 34px}.draft-task input[type=date]{grid-column:1}}.workingbar{position:fixed;top:0;left:0;right:0;height:3px;z-index:90;background:#d8000f2e;overflow:hidden}.workingbar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--red);transform-origin:left;animation:sweep 1.1s ease-in-out infinite}@keyframes sweep{0%{transform:translate(-100%) scaleX(.4)}50%{transform:translate(20%) scaleX(.6)}to{transform:translate(100%) scaleX(.4)}}.inline-load{display:inline-flex;align-items:center;gap:9px;padding:10px 0}.skrow{display:grid;grid-template-columns:30px 1fr 90px;gap:14px;align-items:center;padding:15px 16px;border-bottom:1px solid var(--line)}.skrow:last-child{border-bottom:none}.sk{display:block;border-radius:100px;background:linear-gradient(90deg,#f0eae7 25%,#f8f4f2,#f0eae7 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.sk-circle{width:30px;height:30px;border-radius:50%}.sk-line{height:12px}.sk-pill{height:20px;width:84px}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.workingbar:after{animation:none}.sk{animation:none}}.historyblock{margin:6px 0 26px}.historyblock summary{cursor:pointer;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;padding:6px 0;list-style:none}.historyblock summary::-webkit-details-marker{display:none}.historyblock summary:before{content:"▸ ";color:var(--line-strong)}.historyblock[open] summary:before{content:"▾ "}.historyblock summary:hover{color:var(--red)}.loglist{list-style:none;margin:8px 0 0;padding:0}.logline{display:flex;align-items:baseline;gap:8px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.45}.logline:last-child{border-bottom:none}.log-who{font-weight:600;white-space:nowrap}.log-what{flex:1;color:var(--ink-soft)}.log-target{font-weight:500;color:var(--ink)}.log-detail{color:var(--muted)}.log-when{font-family:var(--accent);font-size:11px;color:var(--muted);white-space:nowrap;flex-shrink:0}@media (max-width: 560px){.logline{flex-wrap:wrap;gap:4px}.log-when{width:100%}}.motif.isproject{border-radius:8px}.pill.outline{background:transparent;border:1.5px solid currentColor;letter-spacing:.08em}.pill.ongoing.outline{color:var(--st-ongoing-ink);border-color:var(--st-ongoing)}.pill.finished.outline{color:var(--st-done);border-color:var(--st-done)}.pill.overdue.outline{color:var(--st-overdue);border-color:var(--st-overdue)}.ltime{display:flex;flex-direction:column;gap:2px;justify-content:center}.deadline{font-family:var(--accent);font-size:12.5px;color:var(--ink-soft)}.deadline.hot{color:var(--red);font-weight:500}.deadline-date{font-family:var(--accent);font-size:11px;color:var(--muted)}.attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;align-items:flex-start}.attwrap{display:inline-flex;align-items:flex-start;gap:2px}.attdel{background:none;border:none;color:var(--muted);font-size:15px;line-height:1;padding:4px 3px;cursor:pointer}.attdel:hover{color:var(--red)}.filechip{display:inline-flex;align-items:center;gap:9px;background:var(--white);border:1px solid var(--line-strong);border-radius:10px;padding:7px 10px;max-width:340px}.filechip.master{border-color:var(--red);box-shadow:0 0 0 3px #d8000f14}.filechip.final{border-color:var(--st-done)}.fileicon{width:28px;height:28px;border-radius:7px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:#1a141412;color:var(--ink-soft)}.fileicon svg{width:15px;height:15px}.fileicon.doc{background:#e6ecfd;color:var(--blue)}.fileicon.sheet{background:var(--st-done-fill);color:var(--st-done)}.fileicon.link{background:#f1ece9;color:var(--muted)}.filechip-name{display:flex;flex-direction:column;min-width:0;text-decoration:none}.filechip-name:hover .filechip-label{text-decoration:underline}.filechip-label{font-size:13px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filechip-kind{font-family:var(--accent);font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.peek{background:none;border:none;padding:3px;color:var(--muted);display:inline-flex;flex-shrink:0}.peek svg{width:15px;height:15px}.peek:hover{color:var(--red)}.rolemenu{display:inline-flex;gap:3px;flex-shrink:0;margin-left:2px}.roletag{background:none;border:1px solid var(--line-strong);border-radius:100px;font-family:var(--accent);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:2px 8px}.roletag:hover{border-color:var(--ink);color:var(--ink)}.roletag.on{background:var(--red);border-color:var(--red);color:#fff}.linkcard-wrap{display:inline-flex;align-items:flex-start;gap:4px}.linkcard{display:flex;align-items:stretch;gap:0;border:1px solid var(--line-strong);border-radius:10px;overflow:hidden;text-decoration:none;max-width:340px;background:var(--white)}.linkcard:hover{border-color:var(--ink);text-decoration:none}.linkcard-img{width:72px;flex-shrink:0;background-size:cover;background-position:center;background-color:#efe9e6}.linkcard-body{display:flex;flex-direction:column;padding:8px 11px;min-width:0}.linkcard-site{font-family:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.linkcard-title{font-size:13px;font-weight:500;color:var(--ink);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.masterfile{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--red-tint);border:1px solid rgba(216,0,15,.25);border-radius:12px;padding:11px 14px;margin-bottom:14px}.masterlabel{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--red)}.repogroup{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);overflow:hidden;box-shadow:var(--shadow-card);margin-bottom:14px}.repogroup .groupbar{border-top:none}.repolist{padding:4px 0}.repoitem{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:11px 16px;border-bottom:1px solid var(--line)}.repoitem:last-child{border-bottom:none}.repometa{font-size:13px;color:var(--ink-soft)}@media (max-width: 560px){.filechip,.linkcard{max-width:100%}.repoitem{gap:8px}}.switchacct{margin-top:18px;background:none;border:none;color:#fff8f5d9;font-size:12.5px;text-decoration:underline;text-underline-offset:3px}.switchacct:hover{color:var(--off-white)}.spinner.light{border-color:#fff8f559;border-top-color:var(--off-white);width:24px;height:24px}.empty .btn{display:inline-block}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.markall{background:none;border:none;padding:0;font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--red)}.markall:hover{text-decoration:underline}.lrow .pill{width:100%;box-sizing:border-box;text-align:center;letter-spacing:.08em;padding:5px 8px}.gsummary{font-family:var(--accent);font-size:11.5px;color:var(--muted);white-space:nowrap}.gsummary em{font-style:normal}.gsummary em.late{color:var(--red);font-weight:500}.finals{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-bottom:18px;box-shadow:var(--shadow-card)}.finals-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.finals-head h2{margin:0;flex:1}.finals-prompt{font-size:13px;color:var(--ink-soft);margin:0;background:var(--st-ongoing-fill);border:1px solid var(--st-ongoing);border-radius:10px;padding:10px 13px}.finals-list{display:flex;flex-direction:column;gap:10px}.finals-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.modeswitch{display:flex;gap:8px;margin:14px 0 4px}.modeswitch button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--white);border:1px solid var(--line-strong);border-radius:10px;padding:11px;font-size:12px;font-weight:600;color:var(--muted)}.modeswitch button svg{width:15px;height:15px}.modeswitch button.on{border-color:var(--red);color:var(--red);background:var(--red-tint)}.notif{line-height:1.5}.notiflink{font-weight:600;color:var(--ink)}.notiflink:hover,.notif.unread .notiflink{color:var(--red)}.selecthint{font-size:12.5px;color:var(--muted);margin:0 0 4px}.rowpick{width:16px;height:16px;margin:0;accent-color:var(--red);cursor:pointer}.lrow.picked{background:var(--act-soft, #eef4f2);box-shadow:inset 3px 0 0 var(--red)}.lrow.picked.ongoing,.lrow.picked.overdue,.lrow.picked.finished{background:#f3ecea}.bulkbar{position:fixed;left:50%;transform:translate(-50%);bottom:22px;z-index:65;display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--off-white);border-radius:100px;padding:10px 12px 10px 20px;box-shadow:0 12px 32px -8px #1a141480;max-width:calc(100vw - 32px)}.bulkcount{font-size:13px;font-weight:500;white-space:nowrap}.bulkbar .btn.ghost{color:var(--off-white);border-color:#fff8f559}.bulkbar .btn.ghost:hover{background:#fff8f51f;color:var(--off-white);border-color:var(--off-white)}.bulkclear{background:none;border:none;color:#fff8f5b3;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:0 8px}.bulkclear:hover{color:var(--off-white)}.projectpanel .lpanel-main{min-width:0}.childtasks{border:1px solid var(--line);border-radius:10px;overflow:hidden}.childtasks-head{padding:8px 14px;background:var(--off-white);border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.childtask{display:grid;grid-template-columns:22px 1fr 110px 92px;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.childtask:last-child{border-bottom:none}.childtask:hover{background:var(--off-white);text-decoration:none}.childtask-name{font-size:13.5px;font-weight:500;min-width:0}.childtask-sub{display:block;font-size:11.5px;color:var(--muted);font-weight:400}.childtask .pill{width:100%;text-align:center}.personcard{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px;box-shadow:var(--shadow-card);overflow:hidden}.personcard.behind{border-color:#d8000f59}.personhead{width:100%;display:flex;align-items:center;gap:12px;background:none;border:none;padding:13px 16px;text-align:left}.personhead:hover{background:var(--off-white)}.personname{flex:1;font-weight:600;font-size:14px;min-width:0}.personsub{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:2px}.personcounts{display:flex;gap:6px;flex-shrink:0}.gcount{font-family:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:.07em;padding:3px 9px;border-radius:100px;white-space:nowrap}.gcount.ongoing{background:var(--st-ongoing);color:var(--st-ongoing-ink)}.gcount.finished{background:var(--st-done-fill);color:var(--st-done)}.gcount.overdue{background:var(--st-overdue);color:var(--white)}.persontasks{border-top:1px solid var(--line)}.persontasks .childtask{padding-left:16px}.filtertoggle.always{display:inline-flex}@media (max-width: 760px){.childtask{grid-template-columns:22px 1fr 88px}.childtask .deadline,.personcounts .gcount.finished{display:none}.bulkbar{flex-wrap:wrap;border-radius:16px;padding:12px 14px;justify-content:center}.bulkcount{width:100%;text-align:center}}.ledger.pickable .lrow{grid-template-columns:22px 26px 30px 52px minmax(180px,1fr) 96px 168px 132px 102px}@media (max-width: 1180px){.ledger.pickable .lrow{grid-template-columns:22px 24px 30px 48px minmax(150px,1fr) 92px 158px 98px}}@media (max-width: 980px){.ledger.pickable .lrow{grid-template-columns:22px 24px 30px 46px minmax(140px,1fr) 150px 98px}}@media (max-width: 760px){.ledger.pickable .lrow{grid-template-columns:22px 24px 28px minmax(110px,1fr) auto}}@media (max-width: 560px){.ledger.pickable .lrow{grid-template-columns:20px 22px 26px minmax(80px,1fr) auto}}.imph{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--ink);margin:22px 0 4px}.impgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;margin-top:10px}.improw{display:flex;align-items:center;gap:10px}.impname{font-weight:600;font-size:13px;min-width:76px}.impfix{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-top:10px}.impfix-name{font-weight:600;font-size:13.5px;margin-bottom:6px}.impfix-fields{display:flex;gap:12px;flex-wrap:wrap}.impfix-fields label{display:flex;flex-direction:column;gap:4px;flex:1 1 160px;margin:0;font-size:10px}.impdupes{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.impdupe{display:inline-flex;align-items:center;gap:7px;margin:0;background:var(--off-white);border:1px solid var(--line-strong);border-radius:100px;padding:6px 13px;font-size:12px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink)}.impdupe input{width:auto;margin:0;accent-color:var(--red)}.impnotes{margin-top:18px}.impnotes summary{cursor:pointer;color:var(--red);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.impnotes ul{margin:10px 0 0;padding-left:18px;font-size:12.5px;color:var(--ink-soft)}.impnotes li{margin-bottom:4px}.impfoot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.presence{position:relative;flex-shrink:0}.presencebtn{display:flex;align-items:center;gap:6px;background:none;border:1px solid transparent;border-radius:100px;padding:4px 8px}.presencebtn:hover{border-color:#fff8f540}.presencedots{display:flex}.pdot{width:26px;height:26px;border-radius:50%;background:#3a3230;color:var(--off-white);font-family:var(--accent);font-size:9.5px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--ink);margin-left:-8px}.pdot:first-child{margin-left:0}.pdot.solid{background:var(--ink);border-color:transparent;margin-left:0;flex-shrink:0}.pmore{font-family:var(--accent);font-size:11px;color:#fff8f5b3}.presencecard{position:absolute;right:0;top:calc(100% + 8px);width:272px;z-index:60;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 44px -14px #1a141466;overflow:hidden}.presencecard-head{padding:11px 15px;border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.presencerow{display:flex;align-items:center;gap:10px;padding:10px 15px;border-bottom:1px solid var(--line)}.presencerow:last-child{border-bottom:none}.presencename{flex:1;font-size:13px;font-weight:500;min-width:0}.presencemail{display:block;font-family:var(--accent);font-size:11px;color:var(--muted);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 560px){.presencebtn{padding:4px}.pmore{display:none}.pdot{width:22px;height:22px;font-size:8.5px}}
