:root{--navw:216px;--serif:"Playfair Display","Iowan Old Style",Palatino,Georgia,serif;--sans:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--r-s:8px;--r-m:12px;--r-l:16px;--r-pill:999px;--shadow-sm:0 1px 2px rgba(46,36,40,.06);--shadow:0 10px 30px -18px rgba(46,36,40,.35);--shadow-lg:0 24px 60px -32px rgba(46,36,40,.45);--cream:#f6f2ec;--cream2:#eee8df;--panel:#fbf8f4;--card:#fffefb;--card2:#f8f4ed;--sunk:#f1ebe2;--sunk2:#e8e1d6;--line:#e6ded2;--line-strong:#d5c8b6;--line-strong2:#e4d9c8;--line-mute:#cec4b6;--ink:#2e2428;--ink2:#6b5c60;--ink3:#7f7173;--ink4:#b3a9a6;--on-brand:#fffdfb;--brand:#7a2038;--brand-d:#540721;--brand-dd:#3c0417;--brand-line:#d8b8c0;--brand-tint:#f8eff1;--attn-ink:#8a451a;--attn-line:#ddb489;--attn-line2:#cf9a65;--attn-tint:#fdf3ea;--attn-tint2:#f8e8d8;--warn:#a8571f;--warn-ink:#8a451a;--warn-str:#c07434;--warn-line:#cf9a65;--warn-on-dark:#f2c49c;--gold:#b89152;--gold-str:#a8813f;--gold-line:#dcc38c;--gold-line2:#e8dcbe;--gold-ink:#7a5c22;--gold-tint:#fbf6ea;--gold-tint2:#f6eeda;--good:#3f6b4f;--good-str:#4f8a62;--good-ink:#2f5540;--good-line:#a8c4ad;--good-line2:#d0e0d3;--good-tint:#f0f5f1;--good-tint2:#e4eee7;--info:#3f6d94;--info-str:#33597a;--info-ink:#2c4a63;--info-line:#a5bdd0;--info-line2:#cddce8;--info-tint:#eef3f8;--info-tint2:#e6eef5;--size-s:#a8a094;--size-m:#8a7f70;--size-l:#5f544a;--plum:#7a5f9c;--plum-line:#cdc0dd;--plum-tint:#f2eef7;--plum-ink:#5f4680;--teal-tint:#edf3f3;--teal-line:#bcd2d4;--teal-ink:#355a5f}*{box-sizing:border-box}button,select,textarea{font-family:inherit}body{margin:0;background:radial-gradient(120% 90% at 50% 0%,var(--cream) 55%,var(--cream2));font-family:var(--sans);color:var(--ink);min-height:100vh}.boot{display:grid;place-items:center;min-height:100vh;color:var(--ink2)}.apperror{max-width:460px;margin:14vh auto 0;text-align:center;padding:28px 24px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l)}.apperror h2{font-family:var(--serif);margin:0 0 10px}.apperror .btn{margin-top:14px}.auth-wrap{display:grid;place-items:center;min-height:100vh;padding:24px}.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow);padding:36px 32px 30px;width:100%;max-width:420px}.logo{font-family:var(--serif);font-size:34px;font-weight:700;letter-spacing:.5px;margin:0}.logo .ai{color:var(--brand)}.tagline{color:var(--ink2);font-size:14px;margin:4px 0 26px}label{display:block;font-size:13px;font-weight:600;margin:16px 0 7px}input{width:100%;font-size:16px;font-family:var(--sans);color:var(--ink);padding:12px 14px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);outline:none;transition:border .18s}input:focus{border-color:var(--brand)}.btn{display:inline-block;width:100%;margin-top:22px;font:inherit;font-weight:600;font-size:15px;background:var(--brand-d);color:var(--on-brand);border:none;border-radius:var(--r-m);padding:13px 18px;cursor:pointer;transition:.15s;box-shadow:none}.btn:hover{transform:translateY(-1px);background:var(--brand-dd)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none;width:auto}.switch{margin-top:16px;font-size:13.5px;color:var(--ink2);text-align:center}.switch a{color:var(--brand-d);cursor:pointer;font-weight:600;text-decoration:none}.msg{margin-top:14px;font-size:13.5px;border-radius:var(--r-m);padding:10px 12px;display:none}.msg.err{display:block;background:var(--attn-tint);border:1px solid var(--attn-line);color:var(--attn-ink)}.msg.ok{display:block;background:var(--good-tint);border:1px solid var(--good-line);color:var(--good-ink)}.home{max-width:680px;margin:0 auto;padding:40px 24px}.topline{display:flex;align-items:center;gap:14px}.topline .logo{font-size:26px}.spacer{flex:1}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow);padding:24px;margin-top:22px}.card h2{font-family:var(--serif);margin:0 0 6px}.beans{display:inline-flex;align-items:center;gap:8px;background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-pill);padding:8px 16px;font-weight:700}.muted{color:var(--ink2);font-size:14px;line-height:1.6}.office-wrap{max-width:1040px;margin:0 auto;padding:22px 24px 40px}.office-wrap .topline{gap:16px}.office-wrap .who{display:flex;flex-direction:column;line-height:1.25}.office-wrap .who b{font-family:var(--serif);font-size:17px}.office-wrap .who span{font-size:12.5px;color:var(--ink2)}.livedot{width:11px;height:11px;border-radius:50%;background:var(--warn-str);align-self:center;flex:none;box-shadow:0 0 0 2px var(--card);transition:background .3s}.livedot.on{background:var(--good-str)}.beanpill{display:inline-flex;align-items:center;gap:7px;background:var(--sunk);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:8px 15px;font-weight:700;font-size:14.5px;white-space:nowrap}.hint{text-align:center;color:var(--ink2);font-size:13.5px;margin:14px 0 4px}.roomtabs{display:flex;gap:6px;background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-pill);padding:4px;overflow-x:auto;max-width:56vw;scrollbar-width:none}.roomtabs::-webkit-scrollbar{display:none}.rtab{position:relative;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink2);background:transparent;border:none;border-radius:var(--r-pill);padding:8px 15px;cursor:pointer;transition:.15s;white-space:nowrap}.rtab .ncount{top:-1px;right:-1px}.rtab:hover{color:var(--ink)}.rtab.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow-sm)}#inviteForm{display:flex;gap:9px;margin:14px 0 18px}#inviteForm input{flex:1}#inviteForm select{font:inherit;padding:0 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}#inviteForm .btn{width:auto;margin-top:0;padding:12px 18px}@media (max-width:860px){.roomtabs{order:3;width:100%;justify-content:center}}.stage{display:grid;place-items:center}.stage svg{width:100%;max-width:1160px;height:auto;cursor:crosshair}.stage svg image{pointer-events:none}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2e242866;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;padding:20px;z-index:50}.overlay.open{display:flex}.sheet{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:86vh;overflow:auto;animation:rise .3s cubic-bezier(.2,.7,.2,1)}@keyframes rise{0%{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}.sheet-inner{padding:26px 26px 20px}.panel-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}.panel-head h2{font-family:var(--serif);font-size:22px;margin:0;flex:1}.tasklist{display:flex;flex-direction:column;gap:8px;min-height:60px}.task{display:flex;align-items:center;gap:11px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:11px 13px}.task .ttl{flex:1;font-size:14.5px;line-height:1.4}.task.done{opacity:.55}.task.done .ttl{text-decoration:line-through;text-decoration-color:var(--line-mute)}.chip{width:24px;height:24px;border-radius:var(--r-s);display:grid;place-items:center;font-size:10.5px;font-weight:700;color:var(--ink2);background:transparent;border:1px solid var(--line);flex:none}.chip.sS{border-color:var(--line)}.chip.sM{border-color:var(--line-strong);color:var(--ink)}.chip.sL{border-color:var(--ink3);color:var(--ink);font-weight:800}.reward{font-size:12px;font-weight:600;color:var(--ink2);white-space:nowrap;font-variant-numeric:tabular-nums}.donebtn{width:30px;height:30px;border-radius:50%;border:1px solid var(--ink3);background:transparent;color:var(--ink2);font-size:14px;font-weight:700;cursor:pointer;flex:none;transition:.15s}.donebtn:hover{background:var(--good);border-color:var(--good);color:var(--on-brand);transform:none}.doneHead{margin-top:14px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}.empty{text-align:center;padding:12px 0}#addForm{display:flex;gap:9px;margin-top:16px}#addForm input{flex:1}#addForm select{font:inherit;padding:0 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}#addForm .btn{width:auto;margin-top:0;padding:12px 18px}.sheet-foot{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.sheet-foot .btn{width:auto;margin-top:0}.err{color:var(--attn-ink)}.taskdetail{background:var(--card2);border:1px solid var(--line);border-top:none;border-radius:0 0 var(--r-l) var(--r-l);padding:12px 16px;margin:-8px 2px 2px;font-size:13.5px}.taskdetail p{margin:4px 0;line-height:1.5}.taskdetail a{color:var(--brand-d);word-break:break-all}.taskdetail .rowform{margin:10px 0 2px}.taskdetail .rowform input{flex:1;min-width:150px;font:inherit;font-size:13px;padding:8px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card)}.addmore{flex:1 1 100%;display:flex;flex-direction:column;gap:8px}.addmore textarea{font:inherit;font-size:13.5px;padding:10px 12px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink);resize:vertical}.addmore input{font:inherit;font-size:13.5px;padding:10px 12px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.task.returned{border-color:var(--info-line);background:var(--info-tint2);border-left-width:5px}.task.returned.urgent,.task.returned.late{border-color:var(--info-line);background:var(--info-tint2)}.retbadge{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.04em;line-height:1;padding:4px 8px;margin-right:7px;border-radius:var(--r-s);background:var(--info-str);color:var(--on-brand);vertical-align:1px}.task .ttl small.retnote{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--info-ink);background:var(--info-tint);border-radius:var(--r-s);padding:5px 8px;margin-top:5px;font-size:12px;line-height:1.4}.retbox{background:var(--info-tint);border:1px solid var(--info-line);border-radius:var(--r-m);padding:10px 13px;margin:10px 0}.retbox b{color:var(--info-ink);font-size:13px}.retbox p{margin:4px 0 0;line-height:1.5}.task.urgent{border-color:var(--line);border-left:3px solid var(--attn-str);padding-left:11px}.task.late{background:var(--attn-tint2);border-color:var(--attn-line)}.task.late.done{background:var(--card);border-color:var(--line)}.urgentlbl{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--ink)}.urgentlbl input{width:16px;height:16px;accent-color:var(--warn-str)}.tl-task.urgent{border-left-color:var(--warn-str)!important;background:var(--attn-tint2)}.tl-name small{display:block;font-weight:600;font-size:10px;color:var(--ink2);margin-top:2px}.tl-task input[type=date]{font:inherit;font-size:10.5px;border:none;background:transparent;width:100%}.tplrow select{max-width:130px;font-size:12px}.projhead .ws-spacer{flex:1}.calnav{align-items:center}.calnav b{font-family:var(--serif);font-size:16px}.cal-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-l);background:var(--card)}.cal-grid{display:grid;grid-template-columns:52px repeat(7,minmax(120px,1fr));min-width:900px;font-size:11.5px}.cal-corner,.cal-dllab{border-bottom:1px solid var(--sunk2)}.cal-day{font-weight:700;color:var(--ink2);text-transform:uppercase;font-size:10.5px;letter-spacing:.04em;padding:8px 6px;border-left:1px solid var(--sunk2);border-bottom:1px solid var(--sunk2)}.cal-day.today{color:var(--brand-d);background:var(--brand-tint)}.cal-dllab{font-size:10px;font-weight:700;color:var(--ink2);padding:6px 4px;text-align:right}.cal-dl{border-left:1px solid var(--sunk2);border-bottom:1px solid var(--sunk2);padding:3px;min-height:26px}.cal-dl.today{background:var(--brand-tint)}.cal-dlchip{background:var(--attn-tint);border-left:3px solid var(--warn-str);border-radius:var(--r-s);padding:2px 6px;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-hours{display:flex;flex-direction:column}.cal-hour{height:46px;font-size:10px;color:var(--ink2);text-align:right;padding:2px 6px 0 0;border-bottom:1px dashed var(--sunk2)}.cal-col{position:relative;border-left:1px solid var(--sunk2);background:repeating-linear-gradient(to bottom,transparent 0 45px,var(--sunk) 45px 46px)}.cal-col.today{background-color:var(--brand-tint)}.cal-block{position:absolute;z-index:2;left:3px;right:3px;background:var(--sunk);border-left:3px solid var(--line-strong);border-radius:var(--r-s);padding:3px 6px;overflow:hidden;box-shadow:0 2px 6px -2px #2e242840;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.cal-block:active{cursor:grabbing;box-shadow:var(--shadow);z-index:5}.cal-rs{position:absolute;left:0;right:0;height:7px;cursor:ns-resize}.cal-rs.top{top:-2px}.cal-rs.bot{bottom:-2px}.cal-block b{display:inline;font-size:10.5px;color:var(--ink2);margin-right:3px}.cal-block.urgent{background:var(--attn-tint2);border-left-color:var(--warn-str)}.callbl{font-size:12px;font-weight:700;color:var(--ink2);text-transform:uppercase;letter-spacing:.04em}#whForm{display:flex;gap:9px;margin:10px 0 6px}#whForm input{flex:1}#whForm .btn{width:auto;margin-top:0;padding:10px 16px}.ai-warn{background:var(--attn-tint);border:1px solid var(--attn-line);border-radius:var(--r-l);padding:12px 16px;font-size:13.5px;line-height:1.55;margin-bottom:8px}.ai-warn code{background:var(--card);border:1px solid var(--line);border-radius:var(--r-s);padding:1px 5px;font-size:12.5px}.ai-chat{border:1px solid var(--line);border-radius:var(--r-l);background:var(--card);padding:12px;margin-bottom:6px}.ai-log{display:flex;flex-direction:column;gap:8px;max-height:340px;min-height:80px;overflow-y:auto;margin-bottom:10px}.ai-chat .rowform{margin:0}.ai-chat select{max-width:180px}.botform{display:flex;flex-direction:column;gap:9px;margin:6px 0 4px}.botform textarea,.botform input{font:inherit;font-size:13.5px;padding:9px 12px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink);resize:vertical;width:100%}.botform .rowform{margin:0}.botform .rowform select{flex:1;min-width:110px}.botform .btn{align-self:flex-start}.botedit{background:var(--card2);border:1px solid var(--line);border-radius:var(--r-m);padding:12px;margin:-4px 2px 6px}.botmgmt .nicon{font-size:18px;width:26px;text-align:center}.chatdock.botmode .chat-boosts{display:none}.chatdock.botmode .chat-who b{color:var(--teal-ink)}.chatdock{position:fixed;top:0;right:0;bottom:0;width:340px;max-width:86vw;background:var(--panel);border-left:1px solid var(--line);box-shadow:-8px 0 24px -12px #2e242859;display:none;flex-direction:column;z-index:46}.chatdock.open{display:flex;animation:slidein .25s cubic-bezier(.2,.7,.2,1)}@keyframes slidein{0%{transform:translate(24px);opacity:0}to{transform:none;opacity:1}}body.chatopen .appmain{padding-right:364px;transition:padding .2s}@media (max-width:900px){body.chatopen .appmain{padding-right:24px}}.chat-head{display:flex;align-items:center;gap:10px;padding:18px 18px 12px;border-bottom:1px solid var(--line)}.chat-who{flex:1;display:flex;flex-direction:column;line-height:1.3;min-width:0}.chat-who b{font-family:var(--serif);font-size:18px}.chat-who small{color:var(--ink2);font-size:12px}.chat-head .btn{margin-top:0;padding:6px 12px}.chat-msgs{flex:1;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:8px}.cmsg{align-self:flex-start;max-width:85%;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l) var(--r-l) var(--r-l) 4px;padding:8px 12px;font-size:14px;line-height:1.45}.cmsg.mine{align-self:flex-end;background:var(--sunk);border-color:var(--line-strong);border-radius:var(--r-l) var(--r-l) 4px var(--r-l)}.cmsg .ctext{display:block;overflow-wrap:anywhere}.cmsg small{display:block;text-align:right;color:var(--ink2);font-size:10.5px;margin-top:2px}.chat-boosts{padding:10px 18px;border-top:1px solid var(--line);background:var(--card2)}.boostlbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink2)}.boostrow{display:flex;gap:8px;margin-top:7px}.boostbtn{flex:1;font-size:20px;line-height:1;padding:7px 0;border-radius:var(--r-m);cursor:pointer;border:1px solid var(--line);background:var(--card);transition:.14s}.boostbtn:hover{transform:translateY(-2px) scale(1.06);border-color:var(--brand);background:var(--card)}.chat-form{display:flex;gap:8px;padding:12px 18px 18px}.chat-form input{flex:1;min-width:0}.chat-form .btn{width:auto;margin-top:0;padding:11px 16px}.chatbub{animation:bubpop .3s cubic-bezier(.2,1.6,.4,1)}@keyframes bubpop{0%{opacity:0}to{opacity:1}}.chatbub.ping{animation:bubping 1.1s ease-in-out infinite}@keyframes bubping{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.boostfloat{animation:boostup 2.2s ease-out forwards;pointer-events:none}@keyframes boostup{0%{opacity:0;transform:translateY(0) scale(.6)}15%{opacity:1;transform:translateY(-10px) scale(1.15)}to{opacity:0;transform:translateY(-70px) scale(1)}}.ncount{position:absolute;top:-6px;right:-6px;background:var(--attn-ink);color:var(--on-brand);font-size:10.5px;min-width:18px;height:18px;border-radius:var(--r-s);display:grid;place-items:center;padding:0 4px}.notif .nicon{font-size:18px;width:26px;text-align:center}.notif.done{opacity:.6}.notif.done .ttl{text-decoration:none}.task .ttl small.byline{display:block;color:var(--ink2);font-size:11.5px;margin-top:1px}#newAssignee{max-width:160px}.shell{display:flex;max-width:none;padding:0;margin:0;min-height:100vh}.mainnav{flex:0 0 var(--navw);display:flex;flex-direction:column;gap:10px;background:var(--sunk);border-right:1px solid var(--line);padding:20px 14px;position:sticky;top:0;height:100vh;overflow-y:auto}.mainnav .logo{font-size:26px;margin:0 2px 4px}.modetabs{display:flex;gap:4px;background:var(--sunk2);border-radius:var(--r-m);padding:4px}.mtab{flex:1;font:inherit;font-size:12px;font-weight:700;border:none;background:transparent;border-radius:var(--r-s);padding:8px 2px;cursor:pointer;color:var(--ink2);white-space:nowrap}.mtab.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow-sm)}.navlist{display:flex;flex-direction:column;gap:3px;margin-top:4px}.navitem{font:inherit;font-size:14px;font-weight:600;text-align:left;border:none;background:transparent;color:var(--ink2);padding:9px 12px;border-radius:var(--r-s);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}.navitem:hover{color:var(--ink);background:var(--sunk2)}.navitem.on{background:var(--brand-tint);color:var(--brand-d);box-shadow:none}.navitem.on:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:2px;background:var(--brand);border-radius:2px}.mainnav .workask{flex-direction:column;align-items:stretch;text-align:center}.mainnav .beanpill{align-self:flex-start}.appmain{flex:1;min-width:0;display:flex;flex-direction:column;padding:16px 26px 40px}#dashView{flex:1;overflow-y:auto;padding-top:8px}#dashView #ptabOwn{max-width:1180px}#dashView #ptabProj{max-width:1000px}@media (max-width:820px){.shell{flex-direction:column}.mainnav{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:none;border-bottom:1px solid var(--line);padding:12px 14px}.navlist{flex-direction:row;flex-wrap:wrap;margin-top:0}.mainnav .workask{flex-direction:row}}.ptabs2{display:inline-flex;gap:3px;background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-pill);padding:3px;margin:14px 0 6px}.p2tab{font:inherit;font-size:13px;font-weight:600;border:none;background:transparent;color:var(--ink2);padding:7px 14px;border-radius:var(--r-pill);cursor:pointer}.p2tab.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow-sm)}.greetcard{display:flex;gap:14px;align-items:flex-start;background:var(--teal-tint);border:1px solid var(--teal-line);border-radius:var(--r-l);padding:16px 18px}.greetfig{display:flex;flex-direction:column;align-items:center;flex:none;width:74px}.visfig{width:64px;height:auto}.greetname{font-size:11.5px;font-weight:700;color:var(--teal-ink);margin-top:2px;white-space:nowrap}.greetbubble{flex:1;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:12px 15px;position:relative}.greetbubble:before{content:"";position:absolute;left:-8px;top:20px;width:14px;height:14px;background:var(--card);border-left:1px solid var(--line);border-bottom:1px solid var(--line);transform:rotate(45deg)}.greettext{font-size:15px;line-height:1.5;margin:0;font-weight:500}.greetstrat{font-size:14px;line-height:1.5;margin:8px 0 0;color:var(--good-ink);background:var(--good-tint);border-radius:var(--r-m);padding:8px 11px}.greetnote{font-size:11.5px;margin:6px 0 0}.greetbubble .btn{margin-top:10px}.ceohead{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2);margin:18px 0 8px}.kpirow{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.kpicard{background:transparent;border:none;border-top:2px solid var(--line);border-radius:0;padding:11px 2px 4px;text-align:left}.kpicard.warn{border-top-color:var(--attn-line2);background:transparent}.kpicard.good{border-top-color:var(--good-line);background:transparent}.kpival{font-family:var(--serif);font-size:30px;font-weight:600;line-height:1;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.kpilbl{font-size:10px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;color:var(--ink2);margin-top:5px}.teamnow{display:flex;flex-direction:column;gap:2px}.tnrow{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-m)}.tnrow:hover{background:var(--card2)}.tndot{width:9px;height:9px;border-radius:50%;background:var(--line-strong);flex:none}.tndot.on{background:var(--good-str);box-shadow:0 0 0 3px var(--good-tint2)}.tnname{font-weight:600;font-size:14px}.tnload{flex:1;font-size:12.5px}.tnstate{font-size:12px}.targetline{display:flex;flex-wrap:wrap;gap:8px}.targetchip{font:inherit;font-size:12.5px;font-weight:600;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:var(--r-pill);padding:6px 12px;cursor:pointer}.targetchip:hover{border-color:var(--line-strong);background:var(--card2)}.pedit{display:inline-flex;gap:6px;align-items:center;margin-left:8px}.pedit input{font:inherit;font-size:12.5px;padding:5px 8px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--card)}.projrow.archived .ttl{opacity:.62}.engbadges{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.engbadge{font-size:11.5px;font-weight:600;border-radius:var(--r-pill);padding:3px 9px;background:var(--sunk);border:1px solid var(--line);white-space:nowrap}.engbadge.st-aktiivinen,.engbadge.st-tahdissa{background:var(--good-tint);border-color:var(--good-line);color:var(--good-ink)}.engbadge.st-jaljessa{background:var(--attn-tint);border-color:var(--attn-line);color:var(--attn-ink)}.engbadge.st-keskeyttanyt{background:var(--card2);border-color:var(--line-mute);color:var(--ink3);text-decoration:line-through}.engbadge.st-valmistunut{background:var(--info-tint2);border-color:var(--info-line);color:var(--info-ink)}.engbadge.st-paattynyt{background:var(--card2);border-color:var(--line-mute);color:var(--ink3)}.crmsearch{font:inherit;font-size:13px;padding:7px 11px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card);margin-left:auto;min-width:160px}.crmnotes{font:inherit;font-size:13.5px;width:100%;padding:9px 12px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink);resize:vertical;margin:8px 0}.engrow select.engst.st-jaljessa{border-color:var(--attn-line);background:var(--attn-tint)}.engrow select,.engrow input{font:inherit;font-size:12.5px;padding:6px 8px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.engbadge.st-active{background:var(--good-tint);border-color:var(--good-line);color:var(--good-ink)}.engbadge.st-trial{background:var(--info-tint2);border-color:var(--info-line);color:var(--info-ink)}.engbadge.st-tiimi{background:var(--sunk);border-color:var(--line-mute);color:var(--ink2)}.engbadge.st-payment_issue,.engbadge.st-waiting_cancel{background:var(--attn-tint);border-color:var(--attn-line);color:var(--attn-ink)}.engbadge.st-on_hold{background:var(--card2);border-color:var(--line-mute);color:var(--ink3)}.engbadge.st-waiting_invite{background:var(--gold-tint2);border-color:var(--gold-line);color:var(--gold-ink)}.engbadge.st-cancelled{background:var(--card2);border-color:var(--line-mute);color:var(--ink3);text-decoration:line-through}.engsub{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:-4px 0 4px;padding:0 12px 6px 26px}.engsub select,.engsub input{font:inherit;font-size:12px;padding:5px 7px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--card);color:var(--ink)}.engnote{font-size:11.5px;flex-basis:100%}.todoline{display:flex;flex-wrap:wrap;gap:8px}.targetchip.warn{border-color:var(--attn-line);background:var(--attn-tint);color:var(--attn-ink)}.pos{color:var(--good-ink)}.neg{color:var(--attn-ink)}.fin-health{border:1px solid var(--line);border-radius:var(--r-l);padding:12px 15px;margin:12px 0;background:var(--card)}.fin-health.h3{border-color:var(--good-line);background:var(--good-tint)}.fin-health.h2{border-color:var(--gold-line2);background:var(--gold-tint)}.fin-health.h0,.fin-health.h1{border-color:var(--attn-line);background:var(--attn-tint)}.fin-health b{font-family:var(--serif);font-size:16px}.fin-sig{font-size:13px;margin-top:5px}.cfbars{display:flex;gap:8px;align-items:flex-end;overflow-x:auto;padding:6px 2px}.cfcol{flex:1;min-width:58px;text-align:center;border-radius:var(--r-m);padding:6px 3px}.cfcol.cur{background:var(--card2)}.cfcol.sel{outline:2px solid var(--brand);background:var(--card2)}.cfcol.fc{opacity:.75}.cfcol.fc .cfbar{background-image:repeating-linear-gradient(45deg,transparent,transparent 3px,rgba(255,255,255,.5) 3px,rgba(255,255,255,.5) 6px)}.cfbarwrap{display:flex;gap:3px;align-items:flex-end;justify-content:center;height:92px}.cfbar{width:16px;border-radius:var(--r-s) var(--r-s) 2px 2px;min-height:2px}.cfbar.in{background:var(--good-line)}.cfbar.out{background:var(--attn-line2)}.cflbl{font-size:11.5px;font-weight:700;margin-top:4px}.cfnet{font-size:11px;font-weight:700}.sankrow{display:flex;gap:10px;align-items:flex-end}.sankcol{display:flex;flex-direction:column;align-items:center;gap:2px}.sankcol small{font-size:10.5px}.sankbar{width:22px;background:var(--warn-line);border-radius:var(--r-s) var(--r-s) 0 0;align-self:center}.sankbar.zero{background:var(--good-line2);height:3px!important}.fin-cats{display:flex;flex-direction:column;gap:3px}.fin-catrow{display:flex;align-items:center;gap:10px;font:inherit;font-size:13.5px;text-align:left;border:1px solid transparent;background:transparent;border-radius:var(--r-m);padding:7px 11px;cursor:pointer}.fin-catrow:hover{background:var(--card2)}.fin-catrow.on{border-color:var(--line-strong);background:var(--card2)}.fin-catrow span:first-child{flex:1}.fin-catrow b{min-width:90px;text-align:right}.finrow{gap:8px}.finrow .findate{font-size:12px;color:var(--ink2);width:56px;flex:none}.finrow .finamt{min-width:92px;text-align:right;font-size:13.5px}.finrow select.fincat{font:inherit;font-size:12px;padding:5px 7px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--card);max-width:170px}.finrow.child{margin-left:26px;background:var(--card2)}.finrow.splitparent .ttl,.finrow.splitparent .finamt{opacity:.55;text-decoration:line-through}.splitbox{border:1px dashed var(--line-strong);border-radius:var(--r-m);padding:10px 12px;margin:2px 0 6px 26px;background:var(--card)}.splitrow{display:flex;gap:6px;margin-bottom:6px}.splitrow input,.splitrow select{font:inherit;font-size:12.5px;padding:6px 8px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--card)}.splitrow input:first-child{flex:1}.splitrow input[type=number]{width:110px}.splitdiff{font-size:12.5px;font-weight:700;margin:0}.splitdiff.ok{color:var(--good-ink)}.splitdiff.no{color:var(--attn-ink)}.navsep{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);margin:16px 4px 4px}.deptsel{font:inherit;font-size:13px;font-weight:600;padding:8px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink);margin:0 2px}.statgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:10px 0}.statcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:14px 16px;display:flex;flex-direction:column;gap:4px}.statname{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink2)}.statval{font-family:var(--serif);font-size:34px;font-weight:700;line-height:1.1}.statdelta{font-size:12.5px;font-weight:700}.statdelta.up{color:var(--good-ink)}.statdelta.down{color:var(--attn-ink)}.statdelta.flat{color:var(--ink2)}.stathist{font-size:11px;color:var(--ink2);line-height:1.5}.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:12px 0}.ccard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:12px 14px;display:flex;flex-direction:column;gap:8px;border-left-width:4px}.ccard.st-idea{border-left-color:var(--line-strong);border-left-style:dashed;background:var(--card2)}.ccard.st-editoitava{border-left-color:var(--plum)}.ccard.st-tyostossa{border-left-color:var(--gold-str)}.ccard.st-ajastettu{border-left-color:var(--info)}.ccard.st-julkaistu{border-left-color:var(--good-str)}.ccard.st-vanhentunut{border-left-color:var(--ink3);opacity:.72}.cprev{font-size:12px;color:var(--ink2);line-height:1.45;background:var(--card2);border-radius:var(--r-s);padding:6px 9px;overflow:hidden}.cprev.empty{color:var(--ink3);background:transparent;padding:2px 0;font-style:italic}.ceditor-paper{background:radial-gradient(120% 80% at 50% 0%,#fffcf3d9,#fffcf300 55%),radial-gradient(130% 110% at 50% 45%,#0000 55%,#7a5c3012),var(--sunk)}#dashView .ceditor-paper{margin:-8px -28px -22px;padding:56px 24px 96px;min-height:100%}.ceditor-col{max-width:680px;margin-inline:auto}.ceditor-topbar{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:40px}.ceditor-back{font:inherit;font-size:13px;border:none;background:none;color:var(--ink2);cursor:pointer;padding:0}.ceditor-back:hover{color:var(--ink)}.ceditor-status{display:flex;gap:10px;align-items:baseline}.charcount{font-size:12px;color:var(--ink2)}.savestate{font-size:12px;font-weight:600}.savestate.saving{color:var(--ink2)}.savestate.ok{color:var(--ink2);animation:saveFade 3s forwards}.savestate.err{color:var(--attn-ink)}@keyframes saveFade{0%,60%{opacity:1}to{opacity:0}}.ceditor-title{font:inherit;font-family:var(--serif);font-size:36px;font-weight:700;line-height:1.15;letter-spacing:-.01em;width:100%;border:none;background:transparent;color:var(--ink);padding:0}.ceditor-title:focus{outline:none}.ceditor-title::placeholder{color:var(--line-mute)}.ceditor-meta{display:flex;align-items:center;flex-wrap:wrap;gap:2px;margin:14px 0 0}.ceditor-meta select,.ceditor-meta input{font:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;background:transparent;color:var(--ink2);font-size:13px;padding:2px 4px;cursor:pointer}.ceditor-meta input[type=date]{min-width:120px;border-bottom:1px dashed var(--line)}.ceditor-meta select:hover,.ceditor-meta input:hover,.ceditor-meta select:focus,.ceditor-meta input:focus{color:var(--ink);outline:none}.ceditor-sep{color:var(--line-mute);font-size:13px}.ceditor-url{font:inherit;font-size:13px;border:none;background:transparent;color:var(--ink2);width:100%;padding:2px 4px;margin-top:2px;border-bottom:1px solid transparent}.ceditor-url:focus{outline:none;border-bottom-color:var(--line)}.ceditor-urlrow{display:flex;align-items:center;gap:8px}.ceditor-open{flex:0 0 auto;font-size:12px;font-weight:700;white-space:nowrap;color:var(--brand-d);text-decoration:none;border:1px solid var(--brand-line);border-radius:var(--r-s);padding:3px 10px;background:var(--brand-tint)}.ceditor-open:hover{border-color:var(--brand-d)}.ceditor-note{font-size:12px;margin:8px 0 0}.ceditor-body{width:100%;min-height:min(58vh,560px);font:inherit;font-size:17px;line-height:1.75;margin-top:32px;padding:0;border:none;border-radius:0;background:transparent;color:var(--ink);resize:none;white-space:pre-wrap;caret-color:var(--brand)}.ceditor-body:focus{outline:none}.cresults{margin-top:72px;border-top:1px solid var(--line);padding-top:20px}.cresults .doneHead{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);font-weight:700}.cresults .rowform input,.cresults .rowform select{border-width:1px;font-size:13px;padding:6px 9px}.funnel{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin:10px 0 14px}.fstep{flex:1 1 180px;min-width:170px}.fconv{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px}.fconvval{font-weight:800;font-size:15px;color:var(--brand)}.fconvarrow{font-size:20px;color:var(--ink2)}.repmonth{margin-left:auto;font:inherit;font-size:13px;padding:6px 9px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.rephint{font-size:12.5px;margin:2px 0 10px}.repform{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;max-width:940px}.repform .repfield{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.repform input{font:inherit;font-size:14px;padding:8px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.repform button{grid-column:1/-1;justify-self:start}.chgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin:6px 0 14px}.chcard{font:inherit;text-align:left;cursor:pointer}.chcard.on{border-color:var(--brand);box-shadow:0 0 0 3px var(--sunk)}.chdrill{margin:0 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-l);background:var(--card)}.chrow{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dashed var(--line);flex-wrap:wrap}.chrow:last-child{border-bottom:none}.chrowtitle{font-size:13.5px;flex:1 1 240px}.chrowmetrics{font-size:12.5px;color:var(--ink2)}.repauto{font-size:14px;font-weight:700;color:var(--ink2);padding:8px 0}#ptabCommunity{max-width:760px}.combanner{font-size:12.5px;color:var(--ink2);background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-m);padding:9px 13px;margin-bottom:12px}.comform{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-l);background:var(--card)}.comform input,.comform textarea{font:inherit;font-size:14px;padding:8px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.comform textarea{min-height:64px;resize:vertical}.comform input:focus,.comform textarea:focus{outline:none;border-color:var(--brand)}.comformrow{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}.comteaser{border:1px dashed var(--brand);border-radius:var(--r-l);padding:14px 16px;margin:10px 0;background:var(--gold-tint)}.comroomhead{font-size:13.5px;margin:2px 0 8px}.evform{display:flex;flex-direction:column;gap:8px}.evform select,.evform input{font:inherit;font-size:13.5px;padding:7px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.evform select:focus,.evform input:focus{outline:none;border-color:var(--brand)}.evformrow{display:flex;gap:14px;flex-wrap:wrap;align-items:center;font-size:13px}.evformrow label{display:flex;flex-direction:column;gap:3px}.evcard{border:1px solid var(--line);border-radius:var(--r-l);background:var(--card);padding:12px 14px;margin:10px 0}.evtop{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.evtop b{font-size:15.5px}.evadmin{display:flex;gap:4px}.evmeta{font-size:12.5px;color:var(--ink2);margin-top:4px}.evdesc{font-size:14px;line-height:1.55;margin-top:6px;white-space:pre-wrap}.evaction{margin-top:10px}.evlocked{font-size:13px;font-weight:600;color:var(--brand)}.comevbanner{display:block;width:100%;text-align:left;font:inherit;font-size:13.5px;cursor:pointer;background:var(--gold-tint);border:1px solid var(--gold-line2);border-radius:var(--r-m);padding:9px 13px;margin-bottom:12px;color:var(--ink)}.comevbanner:hover{border-color:var(--brand)}.madminfound{border-top:1px dashed var(--line);margin-top:8px;padding-top:8px;font-size:13.5px}.madminrow{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:var(--r-m);background:var(--card);padding:9px 13px;margin:8px 0}.madminact{flex-shrink:0}.roomoverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#28221c47;display:flex;flex-direction:column;align-items:center;padding:24px 16px;overflow-y:auto}.roomoverlaybar{width:100%;max-width:760px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:10px 16px;margin-bottom:10px}.roomoverlaybody{width:100%;max-width:760px;background:var(--cream);border-radius:var(--r-l);padding:14px 16px}.cfloorstage{position:relative}.cbadge{position:absolute;transform:translate(-50%,-50%);z-index:12;cursor:pointer;font:inherit;font-size:11px;font-weight:700;line-height:1;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:3px 8px;box-shadow:var(--shadow-sm);white-space:nowrap}.cbadge:hover{border-color:var(--brand);color:var(--brand)}.cbadge.active{color:var(--brand);border-color:var(--brand)}.cbadge.empty{opacity:.62;font-weight:600;color:var(--ink2);box-shadow:var(--shadow-sm)}.cbadge.empty:hover{opacity:1}.cbadge.lock{background:var(--sunk)}.cbubble{position:absolute;transform:translate(-50%,-100%);z-index:12;pointer-events:auto;display:flex;flex-direction:column;gap:2px;width:max-content;max-width:172px;cursor:pointer;text-align:left;font:inherit;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:5px 9px;box-shadow:var(--shadow)}.cbubble:after{content:"";position:absolute;bottom:-6px;left:18px;width:10px;height:10px;background:var(--card);border-right:1px solid var(--line);border-bottom:1px solid var(--line);transform:rotate(45deg)}.cbubble:hover{border-color:var(--brand)}.cbubbletitle{font-size:11.5px;font-weight:700;color:var(--ink);line-height:1.2;max-width:154px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cbubblefaces{display:flex;align-items:center;gap:3px}.cbubbleface{width:17px;height:17px;border-radius:50%;background:var(--brand);color:var(--on-brand);font-size:9px;font-weight:700;display:grid;place-items:center;border:1px solid var(--card);margin-left:-5px}.cbubbleface:first-child{margin-left:0}.cbubbleface.more{background:var(--ink2)}.cbubblemsg{font-size:10.5px;color:var(--ink2);margin-left:5px}.cbubbleadd{position:absolute;transform:translate(-50%,-50%);z-index:12;pointer-events:auto;cursor:pointer;font:inherit;font-size:11px;font-weight:600;color:var(--brand);background:#fffefbf2;border:1px dashed var(--brand);border-radius:var(--r-l);padding:4px 12px;box-shadow:var(--shadow-sm);white-space:nowrap}.cbubbleadd:hover{background:var(--brand);color:var(--on-brand)}.croomui{position:absolute;left:10px;top:10px;z-index:14}.croomadd{position:absolute;right:10px;top:10px;z-index:14}.croomlock{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);z-index:12;text-align:center;font-size:14px;font-weight:600;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:14px 20px;box-shadow:var(--shadow);max-width:80%}.lbself{font-size:13.5px;color:var(--ink);background:var(--gold-tint);border:1px solid var(--gold-line2);border-radius:var(--r-m);padding:8px 13px;margin-bottom:12px}.lblist{display:flex;flex-direction:column;gap:6px}.lbrow{display:flex;align-items:center;gap:11px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:8px 13px}.lbrow.top{border-color:var(--gold-line2);background:var(--gold-tint)}.lbrow.me{border-color:var(--brand);box-shadow:0 0 0 1.5px var(--brand) inset}.lbrank{min-width:34px;font-size:16px;font-weight:800;color:var(--ink2);text-align:center}.lbavatar{width:32px;height:32px;border-radius:50%;background:var(--brand);color:var(--on-brand);font-size:14px;font-weight:700;display:grid;place-items:center;flex-shrink:0}.lbname{flex:1;font-size:14px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lbscore{font-size:13.5px;font-weight:700;color:var(--brand);white-space:nowrap}.elevbtn{display:flex;align-items:center;gap:6px;padding:9px 12px;font:inherit;border:1px solid transparent;border-radius:var(--r-m);background:transparent;color:var(--ink2);cursor:pointer}.elevbtn .elevicon{font-size:19px;line-height:1}.elevbtn .elevlabel{font-size:12px;font-weight:600;line-height:1.15;white-space:nowrap}.elevbtn:hover{background:var(--card);color:var(--ink)}.elevbtn.on{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}#ptabThreads{max-width:720px}.threadcard{position:relative;border:1px solid var(--line);border-radius:var(--r-l);background:var(--card);padding:11px 14px;margin:9px 0;cursor:pointer}.threadcard:hover{border-color:var(--brand)}.threadhead{display:flex;align-items:center;gap:8px;font-size:15px}.threadunread{width:9px;height:9px;border-radius:50%;background:var(--brand);flex-shrink:0}.threadquiet{font-size:11px;color:var(--ink2);border:1px solid var(--line);border-radius:var(--r-pill);padding:1px 7px}.threadmeta{font-size:12.5px;color:var(--ink2);margin-top:4px}.threadboost{position:absolute;right:12px;top:12px}.threadwinbar{display:flex;align-items:center;gap:12px;margin-bottom:10px}.threadwinbar b{flex:1}.threadmsgs{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.threadmsg{border:1px solid var(--line);border-radius:var(--r-m);background:var(--card);padding:8px 12px;max-width:80%}.threadmsg.mine{align-self:flex-end;background:var(--sunk);border-color:var(--line-strong)}.threadmsghead{display:flex;gap:8px;align-items:baseline;font-size:12.5px}.threadmsgbody{font-size:14px;line-height:1.5;margin-top:3px;white-space:pre-wrap}.threadreply input{flex:1}.threadjoin{margin:8px 0}.threadfooter{font-size:12px;margin-top:14px;padding-top:10px;border-top:1px solid var(--line)}.compost{border:1px solid var(--line);border-radius:var(--r-l);background:var(--card);padding:12px 14px;margin:10px 0}.compost.pinned{border-color:var(--gold-line);background:var(--gold-tint)}.comhead{display:flex;align-items:baseline;gap:8px;font-size:13.5px;flex-wrap:wrap}.comtitle{font-weight:800;font-size:15.5px;margin-top:6px}.combody{font-size:14px;line-height:1.6;margin-top:4px;white-space:pre-wrap}.comactions{display:flex;gap:6px;margin-top:10px}.comcomments{margin-top:10px;border-top:1px dashed var(--line);padding-top:8px}.comcomment{font-size:13px;padding:6px 0;line-height:1.5}.comcomment .cdel{margin-left:6px}.cresrow{display:flex;align-items:baseline;gap:10px;font-size:13.5px;padding:4px 0;flex-wrap:wrap}.cresrow .cresval{font-weight:800;font-size:16px}.cfilter{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 2px}.fchip{font:inherit;font-size:12px;font-weight:600;border:1px solid var(--line);background:var(--card);color:var(--ink2);border-radius:var(--r-pill);padding:5px 11px;cursor:pointer}.fchip:hover{color:var(--ink)}.fchip.on{background:var(--ink);color:var(--card);border-color:var(--ink)}.ctop{display:flex;gap:8px;align-items:flex-start}.ctop .cchan{font-size:18px}.ctop b{font-size:14px;line-height:1.35}.cmeta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:11.5px;color:var(--ink2)}.cbadge[class*=st-]{position:static;transform:none;z-index:auto;font:inherit;font-size:11px;font-weight:700;border-radius:var(--r-pill);padding:3px 9px;cursor:pointer;box-shadow:none}.cbadge.st-idea{background:var(--sunk);border:1px solid var(--line);color:var(--ink2)}.cbadge.st-editoitava{background:var(--plum-tint);border:1px solid var(--plum-line);color:var(--plum-ink)}.cbadge.st-tyostossa{background:var(--gold-tint);border:1px solid var(--gold-line2);color:var(--gold-ink)}.cbadge.st-ajastettu{background:var(--info-tint);border:1px solid var(--info-line2);color:var(--info-ink)}.cbadge.st-julkaistu{background:var(--good-tint);border:1px solid var(--good-line2);color:var(--good-ink)}.cbadge.st-vanhentunut{background:var(--sunk2);border:1px solid var(--line);color:var(--ink2)}.clink{color:var(--brand-d);text-decoration:none;font-weight:600}.cdel{font:inherit;border:none;background:transparent;cursor:pointer;color:var(--ink2);margin-left:auto}.cdel:hover{color:var(--attn-ink)}.mongrid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:790px;font-size:11.5px}.moncell{border-left:1px solid var(--sunk2);border-top:1px solid var(--sunk2);min-height:86px;padding:4px}.moncell.dim{background:var(--card2)}.moncell.today{background:var(--brand-tint);outline:1px solid var(--brand-line);outline-offset:-1px}.monday{font-size:10.5px;font-weight:700;color:var(--ink2);margin-bottom:3px}.monchip{border-radius:var(--r-s);padding:3px 6px;margin-bottom:3px;overflow:hidden;background:var(--sunk);border-left:3px solid var(--line-strong)}.chanicon{flex:0 0 auto;vertical-align:-2px;margin-right:4px}.monchan .chanicon{margin-right:3px;margin-top:1px}.statname .chanicon,.p2tab .chanicon,.doneHead .chanicon{vertical-align:-2px}.cchan{display:inline-flex;align-items:center}.cchan .chanicon{margin:0}.monchan{display:flex;align-items:flex-start;gap:2px;font-size:9.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink2);line-height:1.3}.montitle{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monstate{display:block;font-size:10px;color:var(--ink2);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.monajastus-ala{display:flex;align-items:center;flex:0 0 auto;cursor:pointer;padding:3px 4px 3px 1px;margin:-2px 0 -2px -1px}.monajastus{width:12px;height:12px;margin:0;cursor:pointer;accent-color:var(--info)}.monchip.st-idea{border-left-color:var(--line-strong);background:var(--card2);border-left-style:dashed;color:var(--ink3)}.monchip.st-editoitava{border-left-color:var(--plum);background:var(--card2)}.monchip.st-tyostossa{border-left-color:var(--gold-str)}.monchip.st-ajastettu{border-left-color:var(--info);background:var(--info-tint)}.monchip.st-julkaistu{border-left-color:var(--good-str);background:var(--good-tint)}.monchip.st-vanhentunut{border-left-color:var(--ink3);background:var(--card2);opacity:.75}.overlay.work{padding:0;align-items:stretch;justify-content:stretch;-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--panel)}.workspace{display:flex;width:100%;min-height:100vh;animation:rise .25s ease}.ws-side{flex:0 0 230px;display:flex;flex-direction:column;gap:12px;padding:26px 20px;background:var(--sunk);border-right:1px solid var(--line)}.ws-title{font-family:var(--serif);font-size:24px;margin:0}.ws-side .beanpill{align-self:flex-start}.ws-nav{display:flex;flex-direction:column;gap:4px;margin-top:8px}.wsnav{font:inherit;font-size:14.5px;font-weight:600;text-align:left;border:none;background:transparent;color:var(--ink2);padding:10px 14px;border-radius:var(--r-m);cursor:pointer}.wsnav:hover{color:var(--ink);background:var(--sunk2)}.wsnav.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow-sm)}.ws-spacer{flex:1}.ws-side .workask{flex-direction:column;align-items:stretch;text-align:center}.ws-main{flex:1;min-width:0;padding:26px 30px 40px;overflow-y:auto;max-height:100vh}.ws-main #ptabOwn{max-width:820px}.ws-main #ptabProj{max-width:1000px}.ws-main .teamwrap{max-width:840px}.btn.danger{color:var(--attn-ink);border-color:var(--attn-line)}.btn.danger:hover{background:var(--attn-tint)}@media (max-width:760px){.workspace{flex-direction:column}.ws-side{flex:none;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:none;border-bottom:1px solid var(--line);padding:14px 16px}.ws-nav{flex-direction:row;margin-top:0}.ws-side .workask{flex-direction:row}.ws-main{max-height:none}}.rowform{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;align-items:center}.rowform input:not([type=date]){flex:1;min-width:140px}.rowform select,.rowform input[type=date]{font:inherit;font-size:13.5px;padding:8px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.rowform .btn{margin-top:0}#addForm{flex-wrap:wrap}#addForm #newTitle{flex:1 1 240px;min-width:200px}#addForm input[type=date]{font:inherit;font-size:13px;padding:0 8px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.pdot{width:11px;height:11px;border-radius:50%;flex:none}.projrow:hover{border-color:var(--line-strong)}.projmembers{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 10px}.pmlabel{font-size:12.5px;font-weight:600;color:var(--ink2)}.pmchip{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;font-weight:600;background:var(--sunk);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:3px 10px}.pmx{border:none;background:transparent;cursor:pointer;color:var(--attn-ink);font-size:14px;line-height:1;padding:0}.pmadd{font:inherit;font-size:12.5px;padding:5px 9px;border-radius:var(--r-pill);border:1px dashed var(--line);background:var(--card);color:var(--ink2);cursor:pointer}.viscard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:12px 14px;margin-bottom:14px}.vishead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.visicon{font-size:22px}.vistitle{flex:1;display:flex;flex-direction:column;min-width:150px}.vistitle b{font-family:var(--serif);font-size:15px}.vistitle small{font-size:11.5px;color:var(--ink2)}.vishead .btn{width:auto;margin:0;padding:5px 12px}.visbody{margin-top:10px;border-top:1px solid var(--line);padding-top:10px}.vismeta{font-size:12px;margin:0 0 6px}.vispre{background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:9px 11px;font-size:11.5px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:auto;margin:4px 0 10px;font-family:ui-monospace,monospace}.visbody textarea{width:100%;font:inherit;font-size:13px;padding:9px 11px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);resize:vertical}.visbody .btn{width:auto;margin:6px 0 0}.cal-done{position:absolute;left:2px;right:2px;border-radius:var(--r-s);padding:2px 6px;background:repeating-linear-gradient(45deg,var(--sunk2),var(--sunk2) 4px,var(--sunk) 4px,var(--sunk) 8px);border:1px solid var(--line);color:var(--ink2);font-size:10.5px;line-height:1.25;overflow:hidden;pointer-events:auto;z-index:1}.calviews{margin:6px 0 10px}.dlview{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:8px}.dlday{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:10px 11px;display:flex;flex-direction:column;gap:6px;min-height:90px}.dlday.today{border-color:var(--brand);box-shadow:0 4px 14px -8px color-mix(in srgb,var(--brand-d) 30%,transparent)}.dlday.past{opacity:.6}.dldate{font-size:11.5px;font-weight:700;color:var(--ink2);text-transform:uppercase;letter-spacing:.05em}.dldate b{color:var(--brand-d)}.dlempty{font-size:12px;margin:0}.dlitem{background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:7px 9px;font-size:12.5px;display:flex;flex-direction:column;gap:2px}.dlitem.late{border-color:var(--attn-line);background:var(--attn-tint)}.dlttl{line-height:1.35}.dlitem small{font-size:11px;color:var(--ink2)}.dlok{font-size:10.5px;color:var(--good);font-weight:700}.dlno{font-size:10.5px;color:var(--warn);font-weight:700}.loadcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:16px 20px;margin:18px 0 14px}.loadcard.over{border-color:var(--attn-line);background:var(--attn-tint)}.loadcard.ok{border-color:var(--good-line2);background:var(--good-tint)}.lcmain{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.lcbig{font-family:var(--serif);font-size:30px;font-weight:700;line-height:1}.loadcard.over .lcbig{color:var(--warn)}.loadcard.ok .lcbig{color:var(--good)}.lclbl{font-size:13px;color:var(--ink2)}.lcbar{display:flex;height:12px;border-radius:var(--r-pill);background:var(--line);overflow:hidden;margin:12px 0 10px}.lcbar i{display:block;height:100%}.lcfit{background:var(--brand)}.lcover{background:repeating-linear-gradient(45deg,var(--warn-str),var(--warn-str) 5px,var(--warn-line) 5px,var(--warn-line) 10px)}.lcfacts{display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:12.5px;color:var(--ink2)}.lcfacts b{color:var(--ink)}.lcwarn{color:var(--warn);font-weight:700}.lcwarn b{color:var(--warn)}.lcok{color:var(--good);font-weight:700}.lcfacts .fcask{margin-left:auto}.fcday i{font-style:normal;opacity:.75}.fcday.tight{border-color:var(--attn-line);background:var(--attn-tint);color:var(--warn);font-weight:700}.fcask{font:inherit;font-size:11.5px;font-weight:700;margin-left:8px;padding:2px 9px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card);cursor:pointer;color:var(--ink)}.fcask:hover{background:var(--card2)}.storynew{margin:8px 0 14px}.slidegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-top:12px;align-items:start}.slidecard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:11px 12px;display:flex;flex-direction:column;gap:7px}.slidecard.done{border-color:var(--good-line2);background:var(--good-tint)}.slhead{display:flex;align-items:center;gap:8px}.slnum{font-family:var(--serif);font-size:16px;font-weight:700;background:var(--line);width:24px;height:24px;border-radius:50%;display:grid;place-items:center}.slidecard.done .slnum{background:var(--good-line2)}.sldone{flex:1;font-size:11.5px;color:var(--ink2);display:flex;align-items:center;gap:4px}.slx{background:none;border:none;font-size:17px;color:var(--ink2);cursor:pointer;line-height:1}.slx:hover{color:var(--warn)}.slidecard textarea{font:inherit;font-size:13px;padding:8px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);resize:vertical;line-height:1.45}.slidecard input{font:inherit;font-size:11.5px;padding:6px 9px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--card)}.slprev{font-size:11.5px;color:var(--brand-d);text-decoration:none;font-weight:600}.slsave{width:auto;margin:2px 0 0;padding:5px 12px}.slideadd{background:transparent;border:1px dashed var(--line);border-radius:var(--r-l);min-height:120px;font:inherit;font-size:13px;color:var(--ink2);cursor:pointer}.slideadd:hover{border-color:var(--ink2);color:var(--ink);background:var(--card)}#ptabStories .projhead select,#ptabStories .projhead input{font:inherit;font-size:12.5px;padding:5px 9px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card)}.soplist{display:flex;flex-direction:column;gap:6px;margin-bottom:6px}.soprow .ttl{flex:1}.sopstale{font-size:11px;font-weight:700;color:var(--warn)}.sopmeta{font-size:13px;margin:4px 0;line-height:1.5}.sopvideo{position:relative;padding-top:56.25%;margin:10px 0;border-radius:var(--r-m);overflow:hidden;background:#000}.sopvideo iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.sopprog{position:relative;height:22px;border-radius:var(--r-pill);background:var(--line);overflow:hidden;margin:12px 0 10px}.sopprog i{display:block;height:100%;background:var(--brand);transition:width .3s}.sopprog span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:11.5px;font-weight:700;color:var(--ink)}.sopsteps{display:flex;flex-direction:column;gap:6px}.sopstep{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;cursor:pointer;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);font-size:13.5px}.sopstep.on{opacity:.55;background:var(--good-tint);border-color:var(--good-line2)}.sopstep.on .sstxt{text-decoration:line-through}.sopstep input{margin-top:2px;width:auto;flex:0 0 auto}.ssnum{font-weight:700;color:var(--ink2);min-width:18px}.sstxt{flex:1;line-height:1.45}.sstxt small{display:block;margin-top:3px;color:var(--ink2);font-size:12px;white-space:pre-line}.ssdoer{font-size:14px;opacity:.7}.soppit{margin:14px 0 6px;background:var(--attn-tint);border:1px solid var(--attn-line);border-radius:var(--r-m);padding:10px 13px;font-size:13px}.soppit p{margin:4px 0 0;white-space:pre-line;line-height:1.5}.sopfoot{font-size:11.5px;margin-top:12px}.sopform{display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:14px 16px;margin:8px 0}.sopform input,.sopform textarea,.sopform select{font:inherit;font-size:13.5px;padding:8px 11px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card)}.sopform textarea{resize:vertical;line-height:1.5}.soplbl{font-size:12px;font-weight:700;color:var(--ink2);margin-top:2px}.sophint{font-size:11.5px;margin:0}.sopform .btn{width:auto;margin:0}.kpicard.clickable{cursor:pointer;transition:.15s}.kpicard.clickable:hover{border-top-color:var(--brand);transform:none}.drilllist{margin:8px 0 4px;display:flex;flex-direction:column;gap:5px}.drilllist .doneHead{display:flex;align-items:center;gap:10px}.drilllist .doneHead .btn{width:auto;margin:0;padding:3px 10px;text-transform:none;letter-spacing:0}.drow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:7px 12px}.drow.late{border-color:var(--attn-line);background:var(--attn-tint)}.dtitle{flex:1;min-width:150px}.dwho{font-size:11.5px;font-weight:700;background:var(--line);border-radius:var(--r-pill);padding:2px 9px}.ddue{font-size:11.5px;color:var(--ink2)}.drow.late .ddue{color:var(--warn);font-weight:700}.csuggest{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:11px 13px;margin:6px 0;color:var(--ink)}.csuggest b{font-size:13px}.csuggest ul{margin:6px 0 8px;padding-left:18px;font-size:12.5px;line-height:1.5}.csuggest li i{font-style:normal;color:var(--ink2);font-size:11.5px}.csugbtns{display:flex;gap:8px;flex-wrap:wrap}.csugbtns .btn{width:auto;margin:0;padding:6px 14px}.memsug{background:var(--info-tint);border-color:var(--info-line2)}.memsug>small{display:block;margin:2px 0 8px}.memcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:10px 12px;margin:8px 0}.memcard b{display:block;font-size:13px;margin-bottom:3px}.memcard p{margin:0 0 6px;font-size:12.5px;line-height:1.55;color:var(--ink)}.memcard>small{display:block;margin-bottom:7px}.memkind{display:inline-block;font-size:11px;color:var(--ink2);margin-bottom:4px}.memprev{color:var(--gold-ink);background:var(--gold-tint2);border-radius:var(--r-s);padding:5px 8px;font-size:11.5px!important}.memlist{margin-bottom:6px}.memedit{margin:6px 0 12px}.memedit textarea{width:100%;margin:6px 0}.braindumpbtn{margin-top:10px}.braindump{margin-top:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:14px 16px}.bdhead{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px}.bdhead>b{font-family:var(--serif);font-size:15px}.bdhead .muted{font-size:12px;flex:1;min-width:180px}.bdhead .btn{width:auto;margin:0;padding:4px 10px}.braindump textarea{width:100%;font:inherit;font-size:14px;padding:10px 12px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);resize:vertical}.braindump>.btn{width:auto;margin-top:10px;padding:9px 18px}.bdlist{display:flex;flex-direction:column;gap:6px;margin:8px 0}.bdrow{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:7px 9px;border:1px solid var(--line);border-radius:var(--r-m);background:var(--card)}.bdrow.off{opacity:.45}.bdrow input[type=text],.bdtitle{flex:1;min-width:170px;font:inherit;font-size:13px;padding:6px 9px;border-radius:var(--r-m);border:1px solid var(--line)}.bdrow select,.bdrow input[type=date]{font:inherit;font-size:12.5px;padding:5px 8px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card)}.bdsave{align-items:center;flex-wrap:wrap;gap:10px}.bdauto{font-size:12.5px;color:var(--ink2);display:flex;align-items:center;gap:4px}.bdload{font-size:12.5px;line-height:1.5;border-radius:var(--r-m);padding:10px 12px;margin:8px 0 0}.bdload.ok{background:var(--good-tint);border:1px solid var(--good-line2);color:var(--ink)}.bdload.warn{background:var(--attn-tint);border:1px solid var(--attn-line)}.bdload p{margin:5px 0 0}.bdload .bdfix{margin-top:8px;padding-top:8px;border-top:1px solid var(--attn-line)}.timereport{margin-top:14px}.trhead{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px}.trhead>b{font-family:var(--serif);font-size:16px}.trtabs{display:flex;gap:6px}.trtotal{margin-left:auto;font-size:12.5px;color:var(--ink2)}.trtotal b{color:var(--ink);font-size:14px}.travice{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:12px 14px;margin:0 0 8px;font-size:13.5px;line-height:1.5}.trlist{display:flex;flex-direction:column;gap:6px}.trrow{display:flex;align-items:center;gap:10px;font-size:13px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:8px 12px}.trrow.task{font-size:12.5px}.trname{flex:1;min-width:140px}.trname small{color:var(--ink2)}.trbar{flex:0 0 110px;height:7px;border-radius:var(--r-pill);background:var(--line);overflow:hidden}.trbar i{display:block;height:100%;background:var(--brand);border-radius:var(--r-pill)}.trtime{font-weight:700;min-width:64px;text-align:right}.trest{font-size:11.5px;color:var(--ink2)}.trest.over{color:var(--warn);font-weight:700}.trest.under{color:var(--good);font-weight:700}.trpulsetop{margin:0 0 8px;font-size:13px}.trpulse{margin-bottom:14px}.trpulse .trname{display:flex;align-items:center;gap:8px;font-weight:600}.trpulse .trbar{flex:0 0 160px;height:9px}.greetline{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:4px 0 2px;font-size:14px}.greetline i{font-style:normal;color:var(--ink2);font-size:12.5px}.greetline .btn{width:auto;margin:0;padding:6px 14px}.gldot{display:inline-block;margin-left:6px;background:var(--brand-d);color:var(--on-brand);border-radius:var(--r-pill);font-size:11px;padding:1px 7px}.workload{margin:6px 0 18px;padding:14px 16px;border-radius:var(--r-l);border:1px solid var(--line);background:var(--card)}.workload.over{border-color:var(--attn-line);background:var(--attn-tint)}.workload.light{border-color:var(--good-line2);background:var(--good-tint)}.wlhead{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}.wlverdict{font-family:var(--serif);font-size:17px;font-weight:700}.workload.over .wlverdict{color:var(--warn)}.workload.light .wlverdict{color:var(--good)}.wlsub{font-size:12.5px;color:var(--ink2)}.wlsub b{color:var(--ink)}.wlbar{display:flex;height:10px;border-radius:var(--r-pill);background:var(--line);overflow:hidden;margin:10px 0 8px}.wlbar i{display:block;height:100%}.wlplanned{background:var(--brand)}.wlloose{background:repeating-linear-gradient(45deg,var(--line-strong),var(--line-strong) 4px,var(--line-strong2) 4px,var(--line-strong2) 8px)}.wlfacts{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--ink2)}.wllate{font-weight:700;color:var(--warn)}.wladvice{margin:10px 0 0;font-size:13.5px;line-height:1.5}.wlbtn{width:auto;margin-top:12px}.focuswrap{margin:22px 0 0;container-type:inline-size;container-name:focus}.focustop{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:8px}.fclabel{font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}.fcday{margin-left:auto;font-size:12.5px;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:4px 12px}.fcday:empty{display:none}.focuscard{background:var(--ink);color:var(--card);border-radius:var(--r-l);padding:24px 26px;display:flex;flex-direction:column;gap:14px;box-shadow:0 12px 28px -14px #2e242880}.focuscard.empty{background:var(--card);color:var(--ink);border:1px solid var(--line);box-shadow:none}.fcnow{font-family:var(--serif);font-size:26px;font-weight:700;line-height:1.2;max-width:32ch}.fcmeta{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.fcmeta>span{background:#fffaf01a;border-radius:var(--r-pill);padding:3px 10px}.fcdue{font-weight:700}.fclate{font-weight:700;color:var(--warn-on-dark)}.fcnote{opacity:.8}.fcwait{font-size:12.5px;opacity:.85}.fcactions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:2px}.focuscard .btn.fcclock{width:auto;margin:0;padding:9px 16px;border-radius:var(--r-pill);background:#fffaf024;color:var(--card);border:1px solid rgba(255,250,240,.5);box-shadow:none;font-weight:700}.focuscard .btn.fcclock:hover{background:#fffaf042;transform:none}.focuscard .btn.fcclock.on{background:color-mix(in srgb,var(--warn-str) 14%,transparent);border-color:var(--attn-line2);color:var(--warn-on-dark)}.fcbtn{width:auto;margin:0;padding:11px 26px;border-radius:var(--r-pill);background:var(--card);color:var(--ink);font-weight:700}.fcbtn:hover{background:var(--gold-tint2)}.focusgrid{display:grid;gap:16px;align-items:start;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))}@container focus (min-width:640px){.focusgrid{grid-template-columns:minmax(0,1.35fr) minmax(270px,1fr)}}.focusday{display:flex;flex-direction:column;gap:5px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:12px 13px;max-height:420px;overflow-y:auto}.fdlabel{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);margin-bottom:3px}.fditem{display:flex;align-items:baseline;gap:9px;width:100%;text-align:left;font:inherit;font-size:12.5px;background:transparent;border:1px solid transparent;border-radius:var(--r-m);padding:7px 9px;cursor:pointer;color:var(--ink);transition:.12s}.fditem:hover{background:var(--card2)}.fditem.on{background:var(--ink);color:var(--card);border-color:var(--ink)}.fditem.running{border-color:var(--attn-line2);box-shadow:0 0 0 2px color-mix(in srgb,var(--warn-str) 22%,transparent)}.fcrunning{font-family:var(--sans);font-size:12px;font-weight:700;color:var(--brand-d);background:var(--attn-tint2);border:1px solid var(--attn-line2);border-radius:var(--r-pill);padding:2px 10px}.fcswitch{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--attn-tint2);border:1px solid var(--attn-line2);border-radius:var(--r-l);padding:11px 14px;margin-bottom:10px;font-size:13.5px}.fcswbtns{display:flex;gap:8px;flex:none}.fcswitch .btn{width:auto;margin:0}.tgform{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.tgform .rowform{margin-top:6px}.tgfunnel{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.tgstep{display:flex;align-items:baseline;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:10px 14px}.tgstep:not(:last-child){position:relative}.tgsval{font-weight:700;font-size:17px;min-width:110px;text-align:right}.tgslbl{display:flex;flex-direction:column;font-size:13.5px}.tgslbl small{color:var(--ink2);font-size:11.5px}.tgceiling{background:var(--card);border:1px solid var(--line);border-left-width:5px;border-radius:var(--r-l);padding:12px 15px;margin-bottom:12px;font-size:13.5px;line-height:1.55}.tgceiling.ok{border-left-color:var(--good)}.tgceiling.over{border-left-color:var(--warn);background:var(--attn-tint)}.fdtime{font-weight:700;font-size:11.5px;min-width:38px;opacity:.75}.fdtitle{flex:1;line-height:1.35}.fdmin{font-size:11px;opacity:.7}.fdrest{font-size:11.5px;color:var(--ink2);padding:4px 9px}.focusnext{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;font-size:12.5px;color:var(--ink2)}.fnlabel{font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:11px}.fnitem{background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:5px 12px}.fnitem i{opacity:.7;font-style:normal}.fnrest{opacity:.7}.teamneeds{margin:22px 0 0;background:transparent;border:none;border-left:3px solid var(--line-strong);border-radius:0;padding:2px 0 2px 14px}.tnhead{font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);margin-bottom:8px}.tnitem{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:7px 0;border-top:1px solid var(--line);font-size:13px}.tnitem:first-of-type{border-top:none}.tnwho{font-weight:700;background:var(--line);border-radius:var(--r-pill);padding:3px 10px;font-size:11.5px}.tntxt{flex:1;min-width:180px}.tnitem.late .tntxt b{color:var(--warn)}.tnitem i{font-style:normal;opacity:.7;font-size:11.5px}.tnhint{font-size:11.5px;color:var(--ink2);font-style:italic}.tnlink{text-decoration:none}.teamneeds .btn{width:auto;margin:0;padding:6px 14px;background:transparent;color:var(--brand-d);border:1px solid var(--line-strong);box-shadow:none}.teamneeds .btn:hover{background:var(--card2);transform:none}.teamneeds+.ceohead,.focuswrap+.ceohead,.teamneeds+.goallist{margin-top:34px;padding-top:20px;border-top:1px solid var(--line)}.goallist{display:flex;flex-direction:column;gap:9px;margin-bottom:8px}.goalrow{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:10px 13px}.goalrow.reached{border-color:var(--good-str);background:var(--good-tint)}.gtop{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}.gtop b{font-size:14px}.gauto{font-size:10.5px;font-weight:700;color:var(--ink2);border:1px solid var(--line);border-radius:var(--r-pill);padding:2px 8px}.gdone{font-size:11px;font-weight:700;color:var(--good)}.gbar{height:9px;border-radius:var(--r-pill);background:var(--line);overflow:hidden}.gbar i{display:block;height:100%;border-radius:var(--r-pill);background:var(--brand);transition:width .4s}.goalrow.reached .gbar i{background:var(--good-str)}.gmeta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;font-size:11.5px;color:var(--ink2)}.gmeta b{font-size:13px;color:var(--ink)}.ggain{font-weight:700;color:var(--good)}.gbtns{display:flex;gap:4px;margin-left:auto}.gbtns .btn,.gmeta .btn{width:auto;margin:0;padding:4px 10px;font-size:12px}.goalform{flex-wrap:wrap}.goalform input[type=number]{max-width:110px}.projcard{cursor:pointer;align-items:flex-start}.pcbody{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.pctop{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.pctop b{font-size:14.5px}.pcphase{font-size:11px;font-weight:700;background:var(--ink);color:var(--card);border-radius:var(--r-pill);padding:2px 9px}.pclate{font-size:11px;font-weight:700;color:var(--warn)}.pcmeta{display:flex;flex-wrap:wrap;gap:9px;font-size:11.5px;color:var(--ink2)}.pcmine{font-weight:700;color:var(--brand)}.pcbar{display:block;height:5px;border-radius:var(--r-pill);background:var(--line);overflow:hidden;margin-top:3px;max-width:320px}.pcbar i{display:block;height:100%;border-radius:var(--r-pill);transition:width .3s}.phasebar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 4px}.phaserow{display:flex;flex-wrap:wrap;gap:6px}.phasechip{font:inherit;font-size:12px;font-weight:600;border:1px solid var(--line);background:var(--card);color:var(--ink2);border-radius:var(--r-m);padding:6px 12px;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left}.phasechip small{font-size:10.5px;font-weight:600;opacity:.75}.phasechip:hover:not(:disabled){color:var(--ink);border-color:var(--ink2)}.phasechip:disabled{cursor:default}.phasechip.now{background:var(--ink);color:var(--card);border-color:var(--ink)}.phasechip.done{opacity:.6}.phaseadd{display:flex;gap:6px;align-items:center}.phaseadd input{font:inherit;font-size:13px;padding:6px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.phasefold{display:block;width:100%;text-align:left;font:inherit;font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink2);background:none;border:none;padding:10px 0 2px;margin-top:10px;cursor:pointer}.phasefold:hover{color:var(--ink)}.projhead{display:flex;align-items:center;gap:10px;margin-bottom:6px}.projhead b{font-family:var(--serif);font-size:17px}.projhead .muted{font-size:12.5px}.tl-note{font-size:12.5px;margin:4px 0 8px}.unschedhead{font-family:var(--serif);font-size:16px;font-weight:700;margin:20px 0 4px}.unschednote{font-size:12.5px;margin:0 0 10px}.unschedlist{display:flex;flex-direction:column;gap:8px}.unschedrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:9px 12px}.unschedrow .ttl{flex:1;min-width:160px;font-size:14px}.unschedrow input,.unschedrow select{font:inherit;font-size:13px;padding:7px 9px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.unschedrow .btn{margin-top:0}.tl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-l);background:var(--card)}.tl-grid{display:grid;min-width:1500px;font-size:11.5px}.tl-head{font-weight:700;color:var(--ink2);padding:8px 6px;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;border-left:1px solid var(--sunk2);white-space:nowrap}.tl-head.today{color:var(--brand-d)}.tl-name{position:sticky;left:0;background:var(--card);font-weight:600;padding:8px;border-top:1px solid var(--sunk2);border-left:none;z-index:2}.tl-cell{border-left:1px solid var(--sunk2);border-top:1px solid var(--sunk2);padding:4px;min-height:46px}.tl-cell.today{background:var(--brand-tint)}.tl-cell.late{background:var(--attn-tint)}.tl-task{background:var(--sunk);border-left:3px solid var(--line-strong);border-radius:var(--r-s);padding:3px 6px;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}.tl-task.late{background:var(--attn-tint2);border-left-color:var(--warn-str)!important}.shoprow .icon{font-size:20px;width:28px;text-align:center}.shoprow .ttl small{display:block;color:var(--ink2);font-size:11.5px}.shoprow .btn.small{white-space:nowrap}.wwrap{display:flex;gap:18px;margin-top:8px}.wleft{flex:0 0 152px;background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-l);display:grid;place-items:center;padding:10px}.wprev{width:132px;height:auto}.wright{flex:1;min-width:0}.wlab{font-size:11.5px;font-weight:700;color:var(--ink2);margin:11px 0 6px;text-transform:uppercase;letter-spacing:.06em}.wright .wlab:first-child{margin-top:0}.wrow{display:flex;flex-wrap:wrap;gap:7px}.wsw{width:26px;height:26px;border-radius:50%;cursor:pointer;border:2px solid var(--card);box-shadow:0 0 0 1.5px var(--line);transition:.12s}.wsw:hover{transform:scale(1.1)}.wsw.on{box-shadow:0 0 0 2.5px var(--ink)}.wchip{font:inherit;font-size:12.5px;font-weight:600;padding:6px 11px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer}.wchip:hover{border-color:var(--ink2)}.wchip.on{background:var(--ink);color:var(--card);border-color:var(--ink)}@media (max-width:640px){.wwrap{flex-direction:column}.wleft{flex:none}}.clockbtn{white-space:nowrap}.clockbtn.on{background:var(--good-tint);border-color:var(--good-line);color:var(--good-ink)}.btn.small{width:auto;margin-top:0;padding:8px 14px;font-size:13px}.workask{display:flex;align-items:center;gap:10px;background:var(--sunk);border:1px solid var(--line-strong);border-radius:var(--r-l);padding:10px 14px;margin-bottom:12px;font-size:14px;font-weight:600}.workask span{flex:1}.worksum{margin-top:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:12px 14px}.worksum-head{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2);margin-bottom:8px}.worksum-days{display:flex;gap:6px;flex-wrap:wrap}.wday{flex:1;min-width:56px;display:flex;flex-direction:column;align-items:center;gap:2px;background:var(--card2);border-radius:var(--r-m);padding:6px 4px}.wday i{font-style:normal;font-size:11px;color:var(--ink2);text-transform:uppercase;letter-spacing:.06em}.wday b{font-size:12px;white-space:nowrap}.wday.today{background:var(--brand-tint);outline:1px solid var(--brand-line)}.toast{position:fixed;left:50%;bottom:96px;transform:translate(-50%);z-index:99;background:var(--good-ink);color:var(--good-tint);font-weight:600;font-size:14.5px;border-radius:var(--r-pill);padding:12px 22px;box-shadow:var(--shadow);animation:toastin .25s ease}.toast.err{background:var(--attn-ink)}@keyframes toastin{0%{transform:translate(-50%,12px);opacity:0}to{transform:translate(-50%);opacity:1}}#ptabAcademy{max-width:940px}.acabanner{font-size:12.5px;color:var(--ink2);background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-m);padding:9px 13px;margin-bottom:14px;line-height:1.5}.acagamesoon{max-width:520px;margin:60px auto;text-align:center;font-size:16px;line-height:1.7}.acagrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.acacard{display:flex;flex-direction:column;text-align:left;font:inherit;cursor:pointer;padding:0;border:1px solid var(--line);border-radius:var(--r-l);background:var(--card);overflow:hidden;transition:transform .12s,box-shadow .12s}.acacard:hover{transform:translateY(-2px);box-shadow:0 10px 24px -12px #2e242866;border-color:var(--brand)}.acacover{position:relative;aspect-ratio:16/9;background:var(--sunk);display:grid;place-items:center;overflow:hidden}.acacover img{width:100%;height:100%;object-fit:cover}.acacoverph{font-size:40px;opacity:.5}.acalock{position:absolute;top:8px;right:8px;font-size:15px;background:#fbf5eaeb;border:1px solid var(--line);border-radius:var(--r-pill);width:30px;height:30px;display:grid;place-items:center}.acafree{position:absolute;top:8px;left:8px;font-size:11px;font-weight:700;color:var(--on-brand);background:var(--good-str);border-radius:var(--r-pill);padding:3px 9px}.acafree.inline{position:static;display:inline-block}.acacardbody{padding:11px 13px 13px;display:flex;flex-direction:column;gap:6px;flex:1}.acacardtitle{font-family:var(--serif);font-size:16.5px;line-height:1.25}.acacarddesc{font-size:13px;color:var(--ink2);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.acateaserline{margin-top:auto;font-size:12px;font-weight:600;color:var(--brand);background:var(--gold-tint);border:1px dashed var(--brand);border-radius:var(--r-m);padding:6px 9px}.acaprog{display:flex;align-items:center;gap:9px;margin-top:auto}.acaprog.wide{margin:8px 0 14px}.acaprogbar{flex:1;height:8px;border-radius:var(--r-pill);background:var(--sunk2);overflow:hidden;min-width:80px}.acaprogbar span{display:block;height:100%;background:var(--good-str);border-radius:var(--r-pill);transition:width .3s}.acaprogtxt{font-size:11.5px;font-weight:600;color:var(--ink2);white-space:nowrap}.acaback{font:inherit;font-size:13px;font-weight:600;color:var(--brand-d);background:transparent;border:none;cursor:pointer;padding:0;margin-bottom:12px}.acaback:hover{text-decoration:underline}.acacoursehead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.acacoursehead b{font-family:var(--serif);font-size:22px}.acamemtag{font-size:11px;font-weight:700;color:var(--on-brand);background:var(--brand);border-radius:var(--r-pill);padding:3px 9px}.acacoursedesc{margin:6px 0 4px}.acateaser{border:1px dashed var(--brand);border-radius:var(--r-l);padding:14px 16px;margin:12px 0;background:var(--gold-tint)}.acateaser b{font-size:15px}.acateaser p{margin:6px 0 0}.acasplit{display:grid;grid-template-columns:270px 1fr;gap:18px;margin-top:14px;align-items:start}@media (max-width:760px){.acasplit{grid-template-columns:1fr}}.acatoc{display:flex;flex-direction:column;gap:12px}.acamod{border:1px solid var(--line);border-radius:var(--r-l);background:var(--card);padding:8px}.acamodtitle{font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink2);padding:4px 6px 6px}.acalesson{display:flex;align-items:center;gap:8px;width:100%;text-align:left;font:inherit;font-size:13.5px;border:none;background:transparent;color:var(--ink);border-radius:var(--r-m);padding:7px 8px;cursor:pointer}.acalesson:hover{background:var(--sunk)}.acalesson.on{background:var(--ink);color:var(--card)}.acalessonmark{flex:none;width:18px;text-align:center;font-size:12.5px}.acalessontitle{line-height:1.35}.acalessonview{border:1px solid var(--line);border-radius:var(--r-l);background:var(--card);padding:16px 18px;min-height:200px}.acalessonh{font-family:var(--serif);font-size:19px;margin:0 0 12px}.acavideo{position:relative;aspect-ratio:16/9;border-radius:var(--r-m);overflow:hidden;background:#000;margin-bottom:14px}.acavideo iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.acavideolink{display:inline-block;font-size:13.5px;font-weight:600;color:var(--brand-d);margin-bottom:12px}.acabody{font-size:14.5px;line-height:1.7;white-space:pre-wrap}.acadonerow{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line)}.acaadmincourse{border:1px solid var(--line);border-radius:var(--r-l);background:var(--card);margin:10px 0;padding:4px 4px 2px}.acaadminhead{display:flex;align-items:center;gap:8px;padding:8px;flex-wrap:wrap}.acaadminhead.sub{background:var(--card2);border-radius:var(--r-m);margin:6px 0}.acaadminhead.sub2{padding:6px 8px}.acaexpand{font:inherit;font-size:13px;background:transparent;border:none;cursor:pointer;color:var(--ink2);width:20px;flex:none}.acaadminhead b{font-size:14.5px}.acaadmintags{display:flex;align-items:center;gap:6px;flex:1;flex-wrap:wrap}.acatag{font-size:10.5px;font-weight:700;border-radius:var(--r-pill);padding:2px 8px;background:var(--sunk2);color:var(--ink2)}.acatag.pub{background:var(--good-str);color:var(--on-brand)}.acatag.draft{background:var(--sunk2);color:var(--ink2)}.acaadminact{display:flex;gap:5px;flex:none}.acaeditform{display:flex;flex-direction:column;gap:8px;padding:8px 10px 12px}.acaeditform label{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:600;color:var(--ink2)}.acaeditform input,.acaeditform textarea,.acaeditform select{font:inherit;font-size:13.5px;padding:8px 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.acaeditform textarea{min-height:70px;resize:vertical}.acaeditrow{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end}.acaeditrow label{flex:0 0 auto}.acacheck{flex-direction:row!important;align-items:center;gap:6px}.acacheck input{width:16px;height:16px;accent-color:var(--brand)}.acaadminmodules{padding:0 8px 8px}.acaadminmodule{margin:4px 0}.acaadminlessons{padding:2px 4px 6px 26px}.acaadminlesson{border-bottom:1px dashed var(--line)}.acaadminlesson:last-child{border-bottom:none}.acaaddrow{margin:8px 0 2px}.acaaddrow input{flex:1}.healthgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin:12px 0}.healthcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:15px 16px}.healthcard.hlt-green{border-color:var(--good-line);background:var(--good-tint)}.healthcard.hlt-yellow{border-color:var(--gold-line2);background:var(--gold-tint)}.healthcard.hlt-red{border-color:var(--attn-line);background:var(--attn-tint)}.healthtop{display:flex;align-items:center;gap:8px}.healthicon{font-size:20px;line-height:1}.healthname{font-family:var(--serif);font-size:17px;font-weight:700}.healthlight{font-size:26px;line-height:1;margin-left:auto}.healthstatus{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2);margin:5px 0 9px}.healthsigs{display:flex;flex-direction:column;gap:4px}.healthsig{font-size:13px;line-height:1.35}.healthkey{margin-top:11px;padding-top:9px;border-top:1px solid var(--line)}.healthkeyval{font-family:var(--serif);font-size:22px;font-weight:700}.healthkeylbl{font-size:11.5px;color:var(--ink2)}.scr{animation:scrBlink 7s steps(1) infinite}@keyframes scrBlink{0%,92%{opacity:1}93%,96%{opacity:.75}97%,to{opacity:1}}.sway{transform-box:fill-box;transform-origin:50% 100%;animation:sway 3.8s ease-in-out infinite alternate}@keyframes sway{0%{transform:rotate(-1.6deg)}to{transform:rotate(1.8deg)}}.tguide{word-break:break-all}.tguidebtn{width:auto;margin:2px 0 6px}.tsops{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:4px 0 6px;font-size:13px}.tsop{display:inline-flex;align-items:center;gap:2px}.tsop .tsopdel{padding:2px 7px}.tsopadd{display:inline-flex;align-items:center;gap:6px}.tsopadd select{font:inherit;font-size:12.5px;padding:4px 6px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--card);width:auto}.tcomments{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.tcmsg{display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:baseline;padding:5px 8px;border-radius:var(--r-m);margin-bottom:4px;background:var(--card);font-size:12.5px}.tcmsg.mine{background:var(--good-tint)}.tcmsg b{font-size:12px}.tcbody{line-height:1.5;white-space:pre-wrap;word-break:break-word;color:var(--ink)}.tcmsg small{color:var(--ink2);font-size:11px;white-space:nowrap}.tcx{border:0;background:none;cursor:pointer;color:var(--ink2);font-size:14px;line-height:1;padding:0 2px;margin-left:4px}.tcx:hover{color:var(--warn-ink)}.tcform{margin-top:6px}.fcguide{display:inline-block;margin:2px 0 8px;font-size:12.5px;color:var(--on-brand);background:#ffffff24;border-radius:var(--r-s);padding:4px 10px;text-decoration:none}.fcguide:hover{background:#ffffff3d}.tdlbl{font-size:12px;color:var(--ink2);align-self:center}.teamtabs{margin-bottom:12px}.teamsum{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 14px}.tsbox{background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:8px 13px;font-size:12.5px;color:var(--ink2)}.tsbox b{font-size:17px;color:var(--ink);margin-right:5px}.tsbox.act{border-color:var(--gold);background:var(--gold-tint)}.tsbox.warn{border-color:var(--gold-line);background:var(--gold-tint2)}.tsbox.bad{border-color:var(--attn-line2);background:var(--attn-tint2)}.tsbox.ok{border-color:var(--good-line);background:var(--good-tint)}.tsbox.tsclick{cursor:pointer}.tsbox.tsclick:hover{box-shadow:var(--shadow-sm)}.twblock.twok,.twdl.twok{opacity:.62;text-decoration:line-through;background:var(--good-tint)}.twblock.twrev,.twdl.twrev{background:var(--gold-tint)}.teamweekhead{display:flex;align-items:center;gap:8px}.teamweekhead .btn{width:auto;margin:0;padding:4px 11px}.teamweek{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:18px}.twday{background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:7px 8px;min-height:90px}.twday.today{border-color:var(--brand);background:var(--brand-tint)}.twhead{font-size:11.5px;color:var(--ink2);margin-bottom:5px;display:flex;justify-content:space-between;gap:4px}.twhead small{color:var(--ink);font-weight:700}.twblock{font-size:11px;line-height:1.35;background:var(--card);border-left:3px solid var(--line);border-radius:var(--r-s);padding:3px 5px;margin-bottom:3px;word-break:break-word}.twdl{font-size:11px;line-height:1.35;background:var(--gold-tint2);border-radius:var(--r-s);padding:3px 5px;margin-bottom:3px;word-break:break-word;color:var(--gold-ink)}.twempty{color:var(--ink3);font-size:14px}.teamtask{align-items:center}.teamdue{display:flex;align-items:center;gap:6px;flex-shrink:0}.teamdue input[type=date]{font:inherit;font-size:12.5px;padding:5px 8px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.teamdue .btn{width:auto;margin:0;padding:5px 12px}.teamadd{margin-top:18px}.teamadd .rowform{margin-bottom:8px}.teamadd input[type=text],.teamadd input:not([type]){flex:1}.teamurg{font-size:12.5px;color:var(--ink2);display:flex;align-items:center;gap:5px}@container (max-width: 900px){.teamweek{grid-template-columns:repeat(2,1fr)}}.overlay.taskfull.open{display:block;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--panel);overflow-y:auto}.taskfullinner{width:100%;max-width:860px;margin:0 auto;padding:26px 24px 60px;animation:rise .22s ease}.taskfullhead{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid var(--line)}.taskfullhead .btn{width:auto;margin:0;padding:7px 14px;flex-shrink:0}.taskfullhead h2{font-family:var(--serif);font-size:26px;line-height:1.25;margin:0;flex:1 1 300px}.tfproj{font-size:13px}.taskfullbody .taskdetail{background:none;border:0;margin:0;padding:0;font-size:15px}.taskfullbody .taskdetail p{margin:8px 0;line-height:1.6}.taskfullbody .tguide{font-size:15px}.taskfullbody .rowform{margin-bottom:14px}.taskfullbody .tcomments{margin-top:26px;padding-top:16px}.taskfullbody .tcmsg{font-size:14px;padding:8px 11px}.taskfullbody .doneHead{margin-top:22px}@media (max-width:640px){.taskfullinner{padding:18px 15px 50px}.taskfullhead h2{font-size:21px}}.tbrief{margin:18px 0}.tbriefhead{display:flex;align-items:center;gap:10px;margin-bottom:8px}.tbriefhead .btn{width:auto;margin:0;padding:5px 12px}.tbriefbody{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:16px 20px;line-height:1.65}.tbriefbody h4{font-family:var(--serif);font-size:16.5px;margin:16px 0 6px;color:var(--ink)}.tbriefbody h4:first-child{margin-top:0}.tbriefbody p{margin:8px 0}.tbriefbody ul,.tbriefbody ol{margin:8px 0 8px 22px;padding:0}.tbriefbody li{margin:4px 0}.tbriefedit{width:100%;font:inherit;font-size:14.5px;line-height:1.6;padding:14px 16px;border-radius:var(--r-l);border:1px solid var(--line);background:var(--card);color:var(--ink);resize:vertical;min-height:220px}.tbriefhelp{margin:6px 0 10px;font-size:12.5px;color:var(--ink2)}.tbriefhelp summary{cursor:pointer}.tbriefhelp pre{background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:10px 12px;margin:6px 0 0;white-space:pre-wrap;font-size:12px;line-height:1.5}.tbriefcount{font-size:12px;align-self:center}.daypulse{padding:14px 16px}.daypulse .ceohead{margin:0 0 10px}.daypulse .kpirow{margin-bottom:10px}.daypulse .kpicard{min-width:112px}.daypulse .kpival{font-size:20px}.daypulse .lcbar{margin-bottom:10px}.alertrow{display:flex;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l)}.alertrow .ttl{flex:1;font-size:13.5px;line-height:1.4}.alertrow .btn{width:auto;margin:0;padding:7px 14px;flex-shrink:0}.webrep{margin-bottom:22px}.webhead{display:flex;align-items:center;gap:10px}.webhead .btn{width:auto;margin:0;padding:5px 12px}.webkpi{margin-bottom:12px}.webtable{display:flex;flex-direction:column;gap:5px;overflow-x:auto}.webrow{display:grid;grid-template-columns:minmax(220px,2.4fr) repeat(5,minmax(64px,.6fr)) auto;gap:8px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:9px 12px;font-size:13px}.webrow.webhd{background:none;border:0;padding:2px 12px;font-size:11.5px;color:var(--ink2);text-transform:uppercase;letter-spacing:.04em}.webttl{display:flex;flex-direction:column;gap:2px;font-size:13.5px;line-height:1.35}.webttl small{color:var(--ink2);font-size:11.5px}.weblearn{font-style:normal;color:var(--ink2);font-size:11.5px;background:var(--gold-tint2);border-radius:var(--r-s);padding:3px 7px;margin-top:3px}.webmiss{color:var(--attn-ink)}.webgood{color:var(--good-ink);font-weight:700}.webact{display:flex;gap:4px}.webact .btn{width:auto;margin:0;padding:3px 8px}.webform{margin-top:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:14px 16px}.webform textarea{width:100%;font:inherit;font-size:13.5px;padding:10px 12px;margin:6px 0 10px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink);resize:vertical}.webnums{flex-wrap:wrap}.webstrip{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:13px 16px;margin-bottom:14px;cursor:pointer}.webstrip:hover{border-color:var(--brand)}.wshead{font-size:12px;color:var(--ink2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px}.wsflow{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:13.5px}.wsflow b{font-size:19px}.wsflow i{color:var(--ink2);font-style:normal;font-size:16px}.wsend b{color:var(--good-ink)}.wscost{margin-left:auto;color:var(--ink2);font-size:12.5px}.tcfile{display:none}.tcfilebtn{width:auto;margin:0;padding:6px 11px;cursor:pointer;line-height:1.4}.tcpick{display:flex;align-items:center;gap:6px;font-size:12px;margin:5px 0 0}.tcimg{display:block;margin-top:6px;max-width:420px}.tcimg img{width:100%;height:auto;border-radius:var(--r-m);border:1px solid var(--line);display:block}.tcimgerr{display:block;margin-top:6px;font-size:12px}.overdue{background:var(--attn-tint);border:1px solid var(--attn-line);border-radius:var(--r-l);padding:14px 16px;margin-bottom:14px}.ovhead{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--gold-ink);font-weight:700}.ovhead .btn{width:auto;padding:6px 13px;margin:0 0 0 auto}.ovnote{font-size:12.5px;margin:6px 0 10px}.ovrow{display:flex;align-items:flex-start;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:10px 13px;margin-bottom:7px;flex-wrap:wrap}.ovrow .ttl{flex:1 1 260px;font-size:14px;line-height:1.4}.ovdl{display:block;font-style:normal;font-size:12px;margin-top:4px;color:var(--gold-ink)}.ovdl.hot{color:var(--warn);font-weight:700}.ovowner{display:block;font-style:normal;font-size:12px;margin-top:3px;color:var(--ink2)}.ovpick{display:flex;align-items:center;gap:7px;flex-shrink:0}.ovpick input{font:inherit;font-size:13px;padding:6px 9px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.ovpick .btn{width:auto;margin:0;padding:6px 13px}.ovpick input[type=datetime-local]{min-width:200px}.ovlate{background:var(--warn)!important}.ovwarn{flex:1 1 100%;background:var(--attn-tint);border:1px solid var(--attn-line);border-radius:var(--r-m);padding:11px 13px;margin-top:8px;font-size:13px;line-height:1.55}.ovwarn .rowform{margin-top:9px}.ovwarn .btn{width:auto;margin:0;padding:6px 13px}.ovwarn textarea{width:100%;font:inherit;font-size:13px;padding:9px 11px;margin-top:8px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink);resize:vertical}.reptabs{margin-bottom:14px;flex-wrap:wrap}.funneltop{margin-bottom:14px}.chanrep{margin-bottom:18px}.posttable{display:flex;flex-direction:column;gap:5px;overflow-x:auto;margin-top:12px}.postrow{display:grid;grid-template-columns:minmax(220px,2.2fr) repeat(var(--postcols,3),minmax(92px,.7fr)) auto;gap:9px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:9px 12px;font-size:13px}.postrow.posthd{background:none;border:0;padding:2px 12px;font-size:11.5px;color:var(--ink2);text-transform:uppercase;letter-spacing:.04em}.postttl{display:flex;flex-direction:column;gap:2px;line-height:1.35}.postttl small{color:var(--ink2);font-size:11.5px}.postrow input{width:100%;font:inherit;font-size:13px;padding:6px 9px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--card);color:var(--ink)}.postact{min-width:86px;display:flex;justify-content:flex-end}.postact .btn{width:auto;margin:0;padding:5px 11px}.salesheadrow{display:flex;align-items:center;gap:10px}.salesheadrow .btn{width:auto;padding:5px 12px;margin:0 0 0 auto}.salesrow .btn{width:auto;margin:0;padding:5px 11px}.salesout{font-size:12.5px;white-space:nowrap}.salesout.voitettu{color:var(--good-ink);font-weight:700}.salesout.havitty{color:var(--attn-ink)}.minfield{width:78px;flex:0 0 auto}.estbtn{width:auto;margin:0;padding:10px 12px;flex:0 0 auto}.estnote{font-size:12.5px;margin:6px 2px 0;line-height:1.5}.tdelrow{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.tdel{width:auto;margin:0;padding:6px 13px;color:var(--warn)}.tdelnote{font-size:12px}.orgtag{display:inline-block;font-size:10.5px;line-height:1;padding:3px 7px;margin-right:7px;border:1px solid var(--line);border-radius:var(--r-pill);color:var(--ink2);text-transform:uppercase;letter-spacing:.04em;vertical-align:middle;white-space:nowrap}.taskfullhead .orgtag{font-size:11.5px;padding:4px 9px}.tgpath{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}.tgstone{flex:1 1 190px;display:flex;flex-direction:column;gap:2px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:11px 14px}.tgstone.now{background:var(--card2)}.tgstone.past{opacity:.55}.tgstone.active{border-color:var(--attn-line2);box-shadow:0 0 0 2px color-mix(in srgb,var(--warn-str) 20%,transparent)}.tgmon{font-family:var(--sans);font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2)}.tgrev{font-size:19px;font-weight:700}.tgnote{font-size:11.5px;color:var(--ink2);line-height:1.4}.ovwaiting{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:11px 14px;margin-top:10px;font-size:13px}.ovwaiting p{margin:4px 0 8px}.ovwrow{display:flex;align-items:baseline;gap:8px;padding:5px 0;border-top:1px solid var(--line)}.ovwrow small{color:var(--ink2);font-size:11.5px}.fcopen{cursor:pointer;position:relative;padding-right:34px;border-radius:var(--r-m)}.fcopen:hover{background:#fffaf014}.fcexpand{position:absolute;right:6px;top:2px;font-size:15px;opacity:.55}.fcopen:hover .fcexpand{opacity:1}.billterm{background:var(--attn-tint2);border:1px solid var(--attn-line2);border-radius:var(--r-m);padding:10px 14px;margin-bottom:12px;font-weight:700;font-size:13.5px}.billcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:12px 15px}.billhead{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.billwho{flex:1;min-width:160px;display:flex;flex-direction:column;gap:1px}.billwho b{font-size:15px}.billwho small{color:var(--ink2)}.billacts{display:flex;gap:6px}.billacts .btn{width:auto;margin:0}.billinfo{display:flex;flex-direction:column;gap:2px;margin-top:8px;font-size:13px}.billmissing{color:var(--warn-ink);font-weight:700;font-size:12.5px}.billremind{background:var(--attn-tint2);border:1px solid var(--attn-line2);border-radius:var(--r-s);padding:4px 8px;font-size:11.5px;font-weight:700;color:var(--warn-ink);line-height:1.3}.billform{display:flex;flex-direction:column;gap:6px;margin-top:10px}.billform .rowform .btn{width:auto}.billinv{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:10px 14px}.binvno{font-size:15px}.binvwho{flex:1;min-width:140px;display:flex;flex-direction:column}.binvwho small{color:var(--ink2);font-size:11.5px}.binvsum{min-width:70px;text-align:right}.binvterm{background:var(--attn-tint2);border:1px solid var(--attn-line2);border-radius:var(--r-pill);padding:2px 10px;font-size:11.5px;font-weight:700;color:var(--brand-d)}.billinv .btn{width:auto;margin:0}.billterm.billnum{background:var(--sunk);border-color:var(--line);font-weight:400}.billinvrow{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;width:100%}.binvcol{display:flex;flex-direction:column;gap:1px}.binvcol.binvwide{flex:1;min-width:140px}.binvlbl{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2)}.binvacts{display:flex;gap:6px;margin-left:auto}.binvacts .btn{width:auto;margin:0}.binvdetail{margin-top:10px;border-top:1px solid var(--line);padding-top:10px;display:flex;flex-direction:column;gap:5px;width:100%}.binvpair{display:flex;gap:12px;font-size:13px}.binvpair>span{flex:0 0 120px;color:var(--ink2)}.binvpair i{font-style:normal}.tickhint{background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-m);padding:10px 14px;margin-bottom:12px;font-size:13px;color:var(--ink2)}.tickempty{padding:22px;text-align:center;color:var(--ink2)}.ticklist{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.tickcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l)}.tickcard.tickhot{border-color:var(--attn-line2);background:var(--attn-tint)}.tickcard.tickdone{opacity:.62}.tickhead{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 15px;cursor:pointer}.tickkind{font-size:12px;white-space:nowrap}.ticktitle{flex:1;min-width:180px}.tickcust{font-size:12.5px;color:var(--ink2)}.tickmoney{font-weight:700;font-size:13px}.tickstatus{font-size:11.5px;border-radius:var(--r-pill);padding:3px 10px;background:var(--sunk);white-space:nowrap}.tickstatus.s-avoin{background:var(--attn-tint2);color:var(--warn-ink);font-weight:700}.tickstatus.s-ratkaistu,.tickstatus.s-ei_toimenpiteita{background:var(--good-tint2);color:var(--good-ink)}.tickbody{padding:0 15px 13px;display:flex;flex-direction:column;gap:10px}.ticksum{white-space:pre-wrap;font-size:13.5px;margin:0}.tickmeta{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--ink2)}.tickform{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:14px 16px;margin-bottom:12px;display:flex;flex-direction:column;gap:9px}.tickform label,.tickbody label{display:flex;flex-direction:column;gap:3px;font-size:12.5px;font-weight:700;color:var(--ink2)}.tickform input,.tickform select,.tickform textarea{font-weight:400;color:var(--ink)}.tickform .btn{width:auto;align-self:flex-start}.tickrow{display:flex;gap:12px;flex-wrap:wrap}.tickrow>label{flex:1;min-width:150px}.ticknotes{display:flex;flex-direction:column;gap:5px;border-top:1px solid var(--line);padding-top:9px}.ticknote{font-size:13px}.ticknote small{color:var(--ink2);margin-right:6px}.ticknoteadd{display:flex;gap:6px}.ticknoteadd input{flex:1}.ticknoteadd .btn{width:auto;margin:0}.somelist{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;padding-right:92px}@media (max-width:900px){.somelist{padding-right:0}}.somecard{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(240px,1.3fr) minmax(180px,.75fr);gap:14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:13px 15px}.somecard.someowed{border-color:var(--attn-line2);background:var(--attn-tint)}.somecard.somedone{opacity:.62}.somecol{display:flex;flex-direction:column;gap:7px;min-width:0}.someline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.somechan{font-size:11.5px;background:var(--sunk);border-radius:var(--r-pill);padding:3px 9px;white-space:nowrap}.someintent{font-size:11.5px;color:var(--ink2);white-space:nowrap}.sometext{margin:0;font-size:13.5px;white-space:pre-wrap;overflow-wrap:anywhere}.somemeta{display:flex;gap:10px;flex-wrap:wrap;font-size:11.5px;color:var(--ink2)}.somemeta a{color:var(--ink2);text-decoration:underline}.someturn{font-size:11.5px;font-weight:700;border-radius:var(--r-pill);padding:3px 10px;align-self:flex-start;background:var(--sunk);color:var(--ink2)}.someturn.t-sinun{background:var(--brand-tint);color:var(--brand-d)}.someturn.t-lahetys{background:var(--info-tint2);color:var(--info-ink)}.someturn.t-valmis{background:var(--good-tint2);color:var(--good-ink)}.someturn.t-ai_hoitaa{background:var(--info-tint2);color:var(--info-ink)}.somerule{margin:0;font-size:11.5px;color:var(--ink2);line-height:1.4}.somespan{font-size:11.5px;font-weight:700;color:var(--ink2)}.somespan.ok{color:var(--good-ink)}.somespan.late{color:var(--warn-ink)}.somestats{display:flex;gap:22px;flex-wrap:wrap;align-items:baseline;background:var(--card2);border:1px solid var(--line);border-radius:var(--r-m);padding:9px 15px;margin-bottom:10px;font-size:13px}.somestats small{color:var(--ink2);font-size:11.5px;margin-left:5px}.somestats .late b{color:var(--warn-ink)}.bemp{margin:0 0 8px 34px;padding:9px 13px;border-radius:var(--r-m);background:var(--card2);border:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.bemp.s-voimassa{background:var(--good-tint2);border-color:var(--good-line)}.bemp.s-pois{background:var(--attn-tint2);border-color:var(--attn-line2)}.bemptop{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}.bempsentence{margin:0;font-size:12.5px;line-height:1.5}.bempnote{margin:0;font-size:12px;color:var(--ink2);line-height:1.45}.bempbtns{display:flex;gap:6px;flex-wrap:wrap}.bempbtns .btn{width:auto;margin:0}.bempchips{display:flex;gap:5px;flex-wrap:wrap;font-weight:400}.bempchip{font-family:inherit;font-size:12px;cursor:pointer;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:4px 11px}.bempchip:hover{border-color:var(--brand-d)}.bempchip.on{background:var(--good-tint2);border-color:var(--good-line);font-weight:700}.bempcheck{flex-direction:row!important;align-items:center;gap:7px;font-weight:700}.bempcheck input{width:auto}.bemp .tickform{margin:4px 0 0}.kanban{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;margin-bottom:12px;align-items:flex-start;padding-right:92px;scrollbar-width:thin}.kanscroll{display:flex;gap:6px;justify-content:flex-end;margin-bottom:4px}.kanban::-webkit-scrollbar{height:10px}.kanban::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--r-s)}.kanban::-webkit-scrollbar-track{background:var(--cream2);border-radius:var(--r-s)}@media (max-width:900px){.kanban{padding-right:0}}.kancol{flex:0 0 236px;background:var(--card2);border:1px solid var(--line);border-radius:var(--r-l);padding:10px;display:flex;flex-direction:column;gap:7px}.kancol.k-sinun{background:var(--brand-tint);border-color:var(--attn-line2)}.kancol.k-valmis{opacity:.75}.kanhead{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:12.5px}.kanhead b{flex:1;min-width:0}.kanhead small{flex:0 0 100%;color:var(--ink2);font-size:11px;line-height:1.35}.kancount{background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:1px 9px;font-weight:700;font-size:12px}.netvhead{cursor:pointer}.netvdetail{display:flex;flex-direction:column;gap:5px;margin-top:7px;border-top:1px solid var(--line);padding-top:7px;cursor:default}.netvrow{display:flex;flex-direction:column;line-height:1.3}.netvrow>span{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2)}.netvrow b{font-size:12.5px;word-break:break-word}.netvrow.netvvat b,.netvrow.netvvat .netvcopy{background:var(--attn-tint2);border:1px solid var(--attn-line2);border-radius:var(--r-s);padding:3px 7px;color:var(--warn);font-weight:700}.netvhint{margin:2px 0 0;font-size:11px;color:var(--ink2);line-height:1.3}.netvopen{display:block;margin-top:6px;font-size:11px;font-weight:700;color:var(--brand-d)}.kanempty{margin:0;font-size:12px;color:var(--ink2);text-align:center;padding:6px 0}.kancard{font-family:inherit;text-align:left;cursor:pointer;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--r-m);padding:8px 10px;display:flex;flex-direction:column;gap:4px;width:100%}.kancard:hover{border-color:var(--brand-d)}.kancard.on{border-color:var(--brand-d);box-shadow:0 0 0 2px var(--brand-line)}.kantop{display:flex;align-items:baseline;gap:6px;font-size:12.5px}.kantop b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kanint{font-size:10.5px;color:var(--ink2);white-space:nowrap}.kantext{font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.kanmeta{font-size:11px;color:var(--ink2);font-weight:700}.kanmeta .ok{color:var(--good-ink)}.kanmeta .late{color:var(--warn-ink)}.kanopen{margin-top:4px}.srbox{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);margin-bottom:12px}.srhead{display:flex;align-items:center;gap:10px;padding:10px 15px;cursor:pointer;flex-wrap:wrap}.srbody{padding:0 15px 14px;display:flex;flex-direction:column;gap:10px}.srintro{margin:0;font-size:13px;color:var(--ink2);line-height:1.5}.srrule{border:1px solid var(--line);border-radius:var(--r-m);padding:10px 13px;display:flex;flex-direction:column;gap:5px;background:var(--card2)}.srrule.s-voimassa{background:var(--good-tint2);border-color:var(--good-line)}.srrule.s-pois{opacity:.6}.srtop{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.srstate{font-size:11.5px;background:var(--card);border-radius:var(--r-pill);padding:2px 9px;border:1px solid var(--line);white-space:nowrap}.srsentence{margin:0;font-size:13px;line-height:1.45}.srnote{margin:0;font-size:12px;color:var(--ink2);line-height:1.45}.srstats{margin:0;font-size:12.5px;font-weight:700}.srready{margin:0;font-size:12.5px;color:var(--good-ink);font-weight:700}.srbtns{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.srbtns .btn{width:auto;margin:0}.srbox .tickform{margin:0}.srhelp{margin:0;font-size:12px;color:var(--ink2);line-height:1.45}.srhelp.warn{color:var(--warn-ink)}.srlocked{background:var(--attn-tint2);border-radius:var(--r-m);padding:10px 13px;font-size:12.5px}.srlocked ul{margin:5px 0 0;padding-left:18px;line-height:1.5}.srtest{border-top:1px solid var(--line);padding-top:10px;font-size:12.5px}.srtest .muted{margin:4px 0 7px;line-height:1.45}.srtest .ticknoteadd{margin-top:4px}.srtestout{margin:7px 0 0;font-size:13px;font-weight:700;background:var(--sunk);border-radius:var(--r-m);padding:8px 11px;line-height:1.45}.somesugg{border-left:1px solid var(--line);padding-left:14px}.somehuman{margin:0;font-size:12.5px;font-weight:700;color:var(--warn-ink);background:var(--attn-tint2);border-radius:var(--r-m);padding:7px 11px;line-height:1.4}.someapprove{width:100%;margin:0}.someblock{margin:0;font-size:11.5px;color:var(--warn-ink);line-height:1.4}.someok{background:var(--good-tint2);border-radius:var(--r-m);padding:8px 11px;display:flex;flex-direction:column;gap:4px;font-size:12.5px}.someok small{color:var(--ink2);font-size:11px}.someok .btn{width:auto;margin:0;align-self:flex-start}.somebox{background:var(--card2);border-radius:var(--r-m);padding:8px 11px}.somebox small{display:block;font-size:11px;color:var(--ink2);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}.somebox p{margin:0 0 6px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.somebox .btn{width:auto;margin:0}.somedm{background:var(--attn-tint2)}.somedm.sent{background:var(--good-tint2)}.somenote{margin:0;font-size:12.5px;color:var(--ink2);line-height:1.45}.somenosugg{margin:0;font-size:12.5px}.somebtns{display:flex;gap:6px;flex-wrap:wrap}.somebtns .btn{width:auto;margin:0}.somesugg label{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:700;color:var(--ink2)}.somesugg textarea{font-weight:400;color:var(--ink)}.somestate{border-left:1px solid var(--line);padding-left:14px}.sometick{font-family:inherit;font-size:12.5px;text-align:left;cursor:pointer;background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:5px 12px;color:var(--ink)}.sometick:hover:not(:disabled){border-color:var(--brand-d)}.sometick.on{background:var(--good-tint2);border-color:var(--good-line)}.sometick.owed{border-color:var(--attn-line2);font-weight:700}.sometick:disabled{opacity:.5;cursor:default}.somestate label{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:700;color:var(--ink2)}.somestate select{font-weight:400;color:var(--ink)}@media (max-width:900px){.somecard{grid-template-columns:1fr}.somesugg,.somestate{border-left:none;padding-left:0;border-top:1px solid var(--line);padding-top:10px}}.supportbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--sunk);border:1px solid var(--line);border-radius:var(--r-m);padding:8px 13px;margin-bottom:10px}.sblabel{font-weight:700;font-size:13px}.sbperson{background:var(--card);border:1px solid var(--line);border-radius:var(--r-pill);padding:5px 14px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;color:var(--ink)}.sbperson:hover{background:var(--card);border-color:var(--accent, var(--brand-d))}.sbhint{font-size:11.5px;color:var(--ink2);margin-left:auto}.supportbar.on{background:var(--brand-tint);border-color:var(--brand-line)}.sbnow{font-size:14px;flex:1}.supportbar .btn{width:auto;margin:0}.fcmeta .fcover,.fdmin.fdover{color:var(--warn-ink);font-weight:700}.kkryhma{margin-bottom:18px}.kkrivi{display:block}.kkyla{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.kkhyoty{font-size:13px;color:var(--ink2);margin:4px 0 0 82px;line-height:1.4}.kkpvm{min-width:72px;flex:none}.kknimi{font-weight:600;flex:1;min-width:180px}.kkajat{font-size:13px;white-space:nowrap}.kkchip{font-size:12px;padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--panel);white-space:nowrap}.kkchip.y-palvelu{border-color:var(--brand);color:var(--attn-ink)}.kkchip.y-verkkokauppa{border-color:var(--info);color:var(--info-ink)}.kkchip.warn{border-color:var(--warn-ink);color:var(--warn-ink);font-weight:600}.ovbox{border:1px solid var(--line);border-radius:var(--r-m);padding:12px 16px;margin:12px 0;background:var(--panel)}.ovbox ul{margin:6px 0 0;padding-left:18px}.ovbox li{margin:3px 0}.kkkahvit{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 14px;font-size:13px;color:var(--ink2)}.kkkahvit b{font-size:12px;text-transform:uppercase;letter-spacing:.04em}.kkkahvi{cursor:pointer;padding:2px 8px;border-radius:var(--r-pill);border:1px dashed var(--line)}.kkkahvi:hover{border-style:solid}.kkchip.t-chatgpt{border-color:var(--good-str);color:var(--good-ink)}.kkchip.t-claude{border-color:var(--plum);color:var(--plum-ink)}.monchip.kk-chatgpt{border-left:3px solid var(--good-str)}.monchip.kk-claude{border-left:3px solid var(--plum)}.monchip.kk-muu{border-left:3px solid var(--brand)}.monchip.kk-kahvi{border-left:3px dashed var(--line);opacity:.75}.kkapuri{font-weight:700;padding:2px 10px;border-radius:var(--r-s);background:var(--ink);color:var(--cream);font-size:12px;letter-spacing:.02em}.cautom{display:flex;flex-direction:column;gap:6px;margin:10px 0;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-m);font-size:14px}.cautom label{display:flex;align-items:center;gap:8px;cursor:pointer}.cautom input{width:auto;margin:0}.cautom p{margin:2px 0 0 26px;font-size:13px}.cautom.warn{border-color:var(--warn);background:var(--attn-tint2)}.cautom.ok{border-color:var(--good)}.monchip.autopend{border-color:var(--warn)}.task.riskrow{align-items:flex-start;border-left-width:5px}.task.riskrow.sev-korkea{border-left-color:var(--warn-str);background:var(--attn-tint)}.task.riskrow.sev-keskitaso{border-left-color:var(--gold-line);background:var(--card)}.task.riskrow.sev-matala{border-left-color:var(--line-mute)}.task.riskrow.hoidossa{opacity:.62}.riskhint{display:block;color:var(--ink2);font-size:12.5px;line-height:1.45;margin-top:4px;max-width:62ch}.riskmeta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end}.riskage{font-size:12px;color:var(--ink3);white-space:nowrap}.riskeur{font-size:12.5px;font-weight:700;color:var(--attn-ink);white-space:nowrap}.riskdone{font-size:11.5px;color:var(--info-ink);white-space:nowrap}.engbadge.sev-korkea{background:var(--attn-tint);border-color:var(--attn-line);color:var(--attn-ink)}.engbadge.sev-keskitaso{background:var(--gold-tint2);border-color:var(--gold-line);color:var(--gold-ink)}.engbadge.sev-matala{background:var(--card2);border-color:var(--line-mute);color:var(--ink3)}.riskacts{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:6px}.riskacts input[type=date]{font:inherit;font-size:12.5px;padding:5px 8px;border-radius:var(--r-m);border:1px solid var(--line);background:var(--card);color:var(--ink)}.churnnote{font-size:12.5px;line-height:1.5;max-width:78ch;margin:2px 0 10px}.churntable{display:flex;flex-direction:column;gap:2px;margin:6px 0 4px}.churnrow{display:grid;grid-template-columns:1.1fr .6fr .8fr 1fr 1.4fr .6fr;gap:8px;padding:8px 12px;border-radius:var(--r-m);font-size:13.5px;cursor:pointer}.churnrow:hover{background:var(--card2)}.churnrow.sel{outline:2px solid var(--brand);background:var(--card2)}.churnrow.head{font-weight:700;font-size:12px;color:var(--ink3);cursor:default;text-transform:uppercase;letter-spacing:.03em}.churnrow.head:hover{background:none}.churnwarn{color:var(--attn-ink);font-size:11.5px}.churnreasons{display:flex;flex-direction:column;gap:5px;margin:6px 0 10px;max-width:640px}.churnreason{display:grid;grid-template-columns:230px 1fr 34px;gap:8px;align-items:center;font-size:13px}.churnreason .crbar{height:12px;border-radius:var(--r-s);background:var(--line-mute);min-width:3px}.churnreason.prev .crbar{background:var(--warn-str)}.churnreason.prev .crlbl{font-weight:700;color:var(--attn-ink)}.crn{text-align:right;font-weight:700}.billday{cursor:pointer;display:inline-flex;gap:6px;align-items:center}.billday input[type=date]{font:inherit;padding:2px 4px}.kansub{font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink2);margin:10px 0 4px}.kanwait{opacity:.85;border-style:dashed}.kanday{display:flex;justify-content:space-between;gap:6px;text-transform:none;letter-spacing:0}.netvdone{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.netvdone .btn{width:auto;align-self:flex-start;margin:0}.billdispute{display:block;font-size:12px;color:var(--ink2);background:var(--card2);border-radius:var(--r-s);padding:4px 8px;margin:4px 0}.billtocust{background:none;border:0;padding:6px 0 0;font:inherit;font-size:12.5px;color:var(--ink2);cursor:pointer;text-align:left}.billtocust:hover{color:var(--ink);text-decoration:underline}#ptabCrm>.billcard{margin:12px 0}.billedited{font-size:11.5px}.billdrag{cursor:grab}.billdrag:active{cursor:grabbing}.kandrop{outline:2px dashed var(--line);outline-offset:-2px}.kanover{outline:2px dashed var(--ink2);background:#00000008}.kannodrop>:not(.kannote){opacity:.45}.kannote{font-size:12px;color:var(--ink);background:var(--gold-tint2);border-radius:var(--r-s);padding:6px 8px;margin:6px 0}.netvcopy{display:flex;align-items:center;gap:6px;width:100%;text-align:left;background:none;border:0;padding:1px 0;margin:0;font:inherit;font-size:12.5px;font-weight:700;color:inherit;word-break:break-word;cursor:copy;-webkit-user-select:text;user-select:text}.netvcopy:hover,.netvcopy:focus-visible{background:var(--gold-tint);border-radius:var(--r-s);box-shadow:0 0 0 3px var(--gold-tint)}.netvcopyi{opacity:0;font-size:11px;font-weight:400}.netvcopy:hover .netvcopyi,.netvcopy:focus-visible .netvcopyi{opacity:.75}.netvcopyall{align-self:flex-start;margin-top:8px;background:none;border:1px solid var(--line);border-radius:var(--r-s);padding:4px 10px;font:inherit;font-size:11.5px;cursor:pointer}.netvcopyall:hover{background:var(--gold-tint)}.appload{padding:40px;text-align:center}.appwrap{display:flex;min-height:100vh}.appwrap .mainview{flex:1;padding:22px 28px;min-width:0}body.chatopen .mainview{padding-right:364px;transition:padding .2s}@media (max-width:900px){body.chatopen .mainview{padding-right:28px}}.gamehud{position:fixed;left:var(--navw);right:0;bottom:0;z-index:45;display:flex;align-items:center;gap:14px;padding:9px 20px;background:var(--sunk);border-top:1.5px solid var(--line);overflow:hidden}body.chatopen .gamehud{right:340px;transition:right .2s}@media (max-width:1150px){body.chatopen .gamehud .elevlabel{display:none}}@media (max-width:1050px){body.chatopen .gamehud .beanpill{display:none}}@media (max-width:960px){body.chatopen .gamehud-char{display:none}}.gamehud-char{width:48px;height:48px;flex:none;display:grid;place-items:center;background:var(--card);border:1.5px solid var(--line);border-radius:13px;cursor:pointer;padding:0;overflow:hidden}.gamehud-char:hover{border-color:var(--line-strong)}.gamehud-char img{width:42px;height:42px;object-fit:contain;image-rendering:pixelated}.gamehud-mail{position:relative;width:44px;height:44px;flex:none;display:grid;place-items:center;font-size:20px;background:var(--card);border:1.5px solid var(--line);border-radius:12px;color:var(--ink);cursor:pointer;margin-left:auto}.gamehud-mail:hover{border-color:var(--line-strong)}.gamehud-mail.has{border-color:var(--brand);animation:mailpulse 2.2s ease-in-out infinite}@keyframes mailpulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--brand) 40%,transparent)}50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--brand) 0%,transparent)}}@media (prefers-reduced-motion:reduce){.gamehud-mail.has{animation:none}}.gamehud-mail .ncount{position:absolute;top:-6px;right:-6px}.gamehud .elevator{display:flex;gap:4px;border-left:1.5px solid var(--line);padding-left:14px;margin-left:14px}.appwrap .mainview{padding-bottom:86px}.wstitle{font-family:var(--serif);font-size:25px;font-weight:600;letter-spacing:-.2px;line-height:1.2;color:var(--ink);margin:0 0 16px}.brandai{color:var(--brand)}.authwrap{display:flex;align-items:center;justify-content:center;min-height:100vh}.authwrap .wstitle{font-size:34px;letter-spacing:.5px;margin:0 0 2px}.authcard{background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:28px 32px;width:min(360px,90vw);display:flex;flex-direction:column;gap:10px}.authcard form{display:flex;flex-direction:column;gap:10px}.authcard input{font:inherit;padding:10px 12px;border-radius:11px;border:1.5px solid var(--line);background:var(--card)}.navfoot{margin-top:auto;padding:12px}.topbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-bottom:10px}.topbar .btn.on{border-color:var(--good-line);background:var(--good-tint)}.beanpill{font-weight:700;border:1.5px solid var(--line);border-radius:999px;padding:6px 14px;background:var(--card)}.workask{border:1.5px solid var(--line);border-radius:14px;padding:12px;background:var(--card);display:flex;flex-direction:column;gap:8px;text-align:center}.workask p{margin:0}.visfig-tmp{width:56px;height:56px;border-radius:50%;background:var(--teal-tint);border:1.5px solid var(--teal-line);display:flex;align-items:center;justify-content:center;font-size:28px}@media (max-width:820px){.appwrap{flex-direction:column}.appwrap .mainnav{flex:0 0 auto;width:auto}.appwrap .mainview{padding:14px 12px}.appwrap .mainview{padding-bottom:86px}.gamehud{left:0}body.chatopen .gamehud{right:min(340px,86vw)}body.chatopen .appwrap .mainview{padding-right:12px}.gamehud .elevlabel{display:none}.gamehud{gap:8px;padding:8px 10px}#gameStage[data-renderer=pixi]{aspect-ratio:auto!important;height:62vh}}@media (max-width:400px){.gamehud .beanpill{display:none}}
