:root{--bg:#F3F5F5;--card:#FFFFFF;--line:#E4E8E8;--line2:#CDD4D3;--ink:#1B2422;--soft:#5B6866;--faint:#8A9593;--green:#0D5F57;--green-s:#E1EFEC;--green-d:#0A4B45;--pink:#FDE8EF;--pink-t:#C2185B;--amber-s:#FBF0DC;--amber-t:#8A5F14;--ok:#2F6B41;--ok-s:#E3F1E7;--ai:#5B53B8;--ai-s:#ECEAF8;--idle:#8A9593;--idle-s:#EEF1F1;--sans:"Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;--mono:"IBM Plex Mono",Menlo,monospace}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}button,select,input,textarea{font-family:inherit}.app{max-width:1240px;margin:0 auto;padding:0 28px 96px}h1{font-size:2rem;font-weight:700;margin:0;line-height:1.25;letter-spacing:-.01em}h1{text-wrap:balance}h2{font-size:1.1rem;font-weight:700;margin:0 0 2px}h3{font-size:.95rem;margin:0}.crumb{font-size:.8rem;color:var(--faint);margin-bottom:4px}.pill{font-size:.72rem;padding:.2rem .6rem;border-radius:6px;white-space:nowrap;display:inline-block;font-weight:500}.p-ok{background:var(--ok-s);color:var(--ok)}.p-wait{background:var(--amber-s);color:var(--amber-t)}.p-block{background:var(--pink);color:var(--pink-t)}.p-idle{background:var(--idle-s);color:var(--idle)}.p-ai{background:var(--ai-s);color:var(--ai)}.p-acc{background:var(--green-s);color:var(--green)}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 24px}.hero-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px 28px 22px;margin:22px 0 26px}.mono{font-family:var(--mono);font-size:.8rem}.tiny{font-size:.8rem}.muted{color:var(--soft)}.note{background:var(--bg);border-left:3px solid var(--line2);padding:12px 16px;font-size:.86rem;color:var(--soft);border-radius:0 8px 8px 0;margin-bottom:16px}.note.warn{border-left-color:var(--pink-t)}.note.ai{border-left-color:var(--ai)}.note.ok{border-left-color:var(--ok)}.btn{padding:8px 14px;border-radius:8px;border:1px solid var(--line2);background:var(--card);color:var(--ink);font-size:.84rem;cursor:pointer;white-space:nowrap}.btn:hover{border-color:var(--green)}.btn.pri{background:var(--green);border-color:var(--green);color:#fff}.btn.pri:hover{background:var(--green-d)}.btn.danger{border-color:var(--pink-t);color:var(--pink-t)}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.stack{display:flex;flex-direction:column;gap:18px}.head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}.tw-foot{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 14px 12px}.tw-foot .tiny{white-space:normal}.tw{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--card)}table{border-collapse:collapse;width:100%;min-width:660px;font-size:.88rem}table.narrow{min-width:0}th{text-align:left;font-weight:500;font-size:.8rem;color:var(--faint);padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:13px 14px;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border-bottom:none}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}td.c-empty:is(.mono,.num){font-family:var(--sans)}.rows{display:flex;flex-direction:column}.row{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:none}.row .why{font-size:.8rem;color:var(--faint);grid-column:2;margin-top:2px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}.kpi{padding:20px 22px;border-right:1px solid var(--line)}.kpi:last-child{border-right:none}.kpi .v{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:1.9rem;line-height:1.1;font-weight:600}.kpi .v.na{font-size:1rem;color:var(--faint)}.kpi .k{font-size:.82rem;color:var(--soft);margin-top:6px}.kpi .s{font-size:.78rem;color:var(--faint);margin-top:2px}.kpi.warn .v{color:var(--amber-t)}.kpi.bad .v{color:var(--pink-t)}.kpi.good .v{color:var(--green)}.topbar{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.scope{padding:8px 12px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font-size:.9rem}.entry{margin-left:auto;display:flex;gap:8px;align-items:center}.entry .cur{padding:9px 16px;border-radius:8px;border:1px solid var(--green);background:var(--green);color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;white-space:nowrap}.entry .lnk{padding:9px 14px;border-radius:8px;border:1px solid var(--line2);background:var(--card);color:var(--soft);font-size:.88rem;cursor:pointer;white-space:nowrap}@media(max-width:640px){.entry{margin-left:0;width:100%;flex-wrap:wrap;gap:6px}.entry .cur,.entry .lnk{padding:6px 10px;font-size:.84rem}}.whoami{font-size:.8rem;color:var(--faint)}.loopwrap{padding:44px 12px 8px;overflow-x:auto}.loop{display:flex;align-items:center;min-width:900px;padding:0 6px;position:relative}.ln{position:relative;flex:none;cursor:pointer}.ln .d{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line2);background:var(--card);display:grid;place-items:center;font-size:.9rem;color:var(--soft);transition:transform .15s}.ln:hover .d{transform:scale(1.06)}.ln.done .d{border-color:var(--green);color:var(--green)}.ln.cur .d{background:var(--green);border-color:var(--green);color:#fff;font-weight:700}.ln .lbl{position:absolute;left:50%;transform:translate(-50%);white-space:nowrap;font-size:.84rem;color:var(--ink)}.ln .lbl.above{bottom:54px}.ln .lbl.below{top:54px}.ln.cur .lbl{font-weight:700}.sg{height:5px;flex:1;background:var(--line);min-width:20px;border-radius:3px}.sg:not(.done){background:repeating-linear-gradient(90deg,var(--ai) 0 6px,transparent 6px 12px);height:3px;opacity:.7}.backloop{text-align:center;font-size:.82rem;color:var(--ai);margin-top:64px;position:relative}.backloop:before{content:"";position:absolute;left:8%;right:8%;top:-24px;height:40px;border:2px dotted var(--ai);border-top:none;border-radius:0 0 50% 50%/0 0 100% 100%;opacity:.7}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}@media(max-width:640px){.loopwrap{display:none}.hero-card .chips{margin-top:14px}}.chip{padding:6px 12px;border-radius:8px;background:var(--bg);font-size:.82rem;cursor:pointer;color:var(--soft)}.chip.on{background:var(--green);color:#fff}.mask{position:fixed;inset:0;background:#141e1c73;display:flex;align-items:flex-start;justify-content:center;padding:60px 16px;z-index:50;overflow:auto}.modal{background:var(--card);border-radius:16px;padding:24px 28px;width:100%;max-width:760px;box-shadow:0 24px 60px #00000040}.modal.wide{max-width:900px}.revgrid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start;margin-top:14px}@media(max-width:1000px){.revgrid{grid-template-columns:minmax(0,1fr)}}.sticky{position:sticky;top:14px}.cmts{display:flex;flex-direction:column;gap:8px;max-height:44vh;overflow:auto}.cmt{background:var(--bg);border-radius:8px;padding:8px 10px;font-size:.86rem;margin-top:6px}.cmtrow td{background:var(--amber-s);padding:6px 10px}.ro{display:block;font-size:.84rem;line-height:1.35;max-width:180px}.para{padding:10px 0;border-bottom:1px solid var(--line)}.para p{margin:6px 0 0;font-size:.92rem}.ph{display:flex;align-items:center;gap:10px}.ph .mono{color:var(--faint)}.btn.tiny{padding:3px 8px;font-size:.76rem}.qrow{grid-template-columns:1fr auto auto}@media(max-width:640px){.qrow{grid-template-columns:1fr auto}.qrow>:first-child{grid-column:1/-1}}.track{display:flex;gap:5px;align-items:center}.tk{width:12px;height:12px;border-radius:50%;background:var(--line2);display:inline-block}.tk.done{background:var(--green)}.tk.cur{background:var(--card);border:3px solid var(--green);box-sizing:border-box}.tk.block{background:var(--pink-t)}.kt th,.kt td{padding:8px 10px;border-bottom:1px solid var(--line);font-size:.86rem;text-align:left;white-space:nowrap}.kt input.mini{width:72px;padding:6px 8px;border:1px solid var(--line2);border-radius:6px;font:inherit;font-size:.86rem;color:var(--ink);background:var(--card)}.kt select.mini{padding:6px 8px;border:1px solid var(--line2);border-radius:6px;font:inherit;font-size:.86rem;color:var(--ink);background-color:var(--card)}.dp-cell{display:flex;gap:6px;align-items:center}.rc-card{margin-bottom:15px}.rc-card>.head>.btn{margin-left:auto}.rc-title{display:flex;align-items:center;gap:10px;min-width:0}.rc-title h2{margin:0}.rc-count{flex:none;padding:1px 9px;border-radius:999px;background:var(--green-s);color:var(--green);font-size:.76rem;font-weight:600;line-height:1.6;font-variant-numeric:tabular-nums;white-space:nowrap}.rc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.rc-tile{min-width:0;padding:10px 14px 12px;border-radius:10px;background:#f5f7f7}.rc-tdept{font-size:.78rem;font-weight:500;line-height:1.4;color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rc-tnames{margin-top:3px;font-size:.92rem;line-height:1.55;color:var(--ink)}.rc-tnames span{white-space:nowrap}.rc-err{margin-bottom:12px}.rc-fs{border:0;padding:0;margin:0;min-width:0}.rc-pick{padding:12px 14px 14px;border:1px solid var(--line);border-radius:12px;background:#f7f9f9}.rc-edit{margin-top:14px;border:1px solid var(--line);border-radius:12px}.rc-erow{display:grid;grid-template-columns:calc(var(--rc-chars,6) * .84rem + 4px) minmax(0,1fr);gap:14px;align-items:start;padding:10px 14px;border-bottom:1px solid var(--line)}.rc-erow:last-child{border-bottom:0}.rc-edept{font-size:.84rem;line-height:30px;color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rc-chips{display:flex;flex-wrap:wrap;gap:6px}.rc-chip{display:inline-flex;align-items:center;height:30px;padding:0 3px 0 12px;border:1px solid transparent;border-radius:999px;background:#eef2f1;font-size:.88rem;color:var(--ink);white-space:nowrap;transition:border-color .15s}.rc-chip:hover{border-color:var(--line2)}.rc-x{display:inline-grid;place-items:center;flex:none;width:22px;height:22px;margin-left:3px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--faint);cursor:pointer;transition:background-color .15s,color .15s,transform .1s}.rc-x:hover{background:var(--pink);color:var(--pink-t)}.rc-x:active{transform:scale(.9)}.rc-x:focus-visible{outline:2px solid var(--green);outline-offset:1px}.rc-x:disabled{cursor:default;opacity:.45;background:transparent;color:var(--faint)}@media(max-width:640px){.rc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rc-tile{padding:9px 12px 11px}.rc-erow{grid-template-columns:minmax(0,1fr);gap:6px;padding:10px 12px}.rc-edept{line-height:1.4}.rc-chip{height:34px;padding-left:13px}.rc-x{width:28px;height:28px}}.kt select.dp-dept{width:128px}.kt select.dp-person{width:112px}.fsec,.sec-h,.ai-settings-section h3{font-size:1.08rem;font-weight:700;color:var(--ink);line-height:1.35;border-left:3px solid var(--green);padding:1px 0 1px 9px}.fsec{margin-top:14px}.fsec span{font-size:.8rem}.sec-h{margin:0 0 10px}.ph .sec-h{margin:0}.fgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 18px}.fgrid>*{min-width:0}.fgrid input,.fgrid select,.fgrid textarea{width:100%;padding:9px 11px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font:inherit;font-size:.9rem}.fgrid textarea{min-height:64px}.cks{display:flex;flex-wrap:wrap;gap:8px 16px}.fgrid label.ck{display:inline-flex;flex-direction:row;gap:6px;align-items:center;font-size:.88rem;color:var(--ink);margin:0}.fgrid label.ck input{width:auto}.member-options{align-items:center}.fgrid .member-check{display:inline-flex;align-items:center;gap:7px;margin:0;white-space:nowrap;font-size:.9rem;color:var(--ink)}.fgrid .member-check input{width:1rem;height:1rem;min-width:1rem;flex:0 0 auto;padding:0;margin:0}.member-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sg-label{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px}.field .sg-label label{margin:0}.sg-label .tiny{white-space:nowrap}.sgroups{border:1px solid var(--line);border-radius:8px;padding:0 12px}.sgroup+.sgroup{border-top:1px solid var(--line)}.sg-head{display:flex;align-items:center;gap:8px;min-width:0}.sg-name{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:8px;padding:9px 0;border:0;background:none;color:var(--ink);font:inherit;font-size:.88rem;text-align:left;cursor:pointer}.sg-dept{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.sg-n{white-space:nowrap;font-size:.8rem}.sg-caret{margin-left:auto;color:var(--soft)}.sg-body{padding:0 0 10px 24px}.sgroups>.sg-all{display:flex;align-items:center;gap:8px;padding:9px 0;margin:0;border-bottom:1px solid var(--line);font-size:.88rem;font-weight:600;color:var(--ink);cursor:pointer}.sgroups>.sg-all .sg-n{font-weight:400;color:var(--soft)}.sg-body label.ck.sent{color:var(--faint);cursor:default}.btn.plus{font-size:.95rem;padding:9px 16px}@media(max-width:640px){.fgrid{grid-template-columns:minmax(0,1fr)}.modal .inline{flex-wrap:wrap;row-gap:6px}}.nodehead{display:flex;align-items:flex-end;gap:14px;padding:6px 0 14px;margin:4px 0 16px;border-bottom:1px solid var(--line)}.nodehead{min-height:62px}.nodehead h2{font-size:1.25rem;margin:2px 0 0}.nodehead h2 small{display:inline-block;margin-left:12px;font-size:.88rem;font-weight:400;color:var(--soft)}.nodenav{margin-left:auto;display:flex;gap:8px}@media(max-width:640px){.nodehead,.nodenav{flex-wrap:wrap}.nodenav{width:100%;margin-left:0}.seg{flex:none}}.todo-card{margin-bottom:15px}.mx td,.mx th{border:1px solid var(--line);padding:10px;min-width:118px}.slot{padding:6px 9px;border-radius:6px;font-size:.8rem;line-height:1.4;margin-bottom:6px}.s-ok{background:var(--ok-s);color:var(--ok)}.s-plan{background:var(--ai-s);color:var(--ai)}.s-block{background:var(--pink);color:var(--pink-t)}.s-empty{color:var(--faint);font-size:.8rem}textarea{width:100%;min-height:80px;padding:11px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font-family:inherit;font-size:.88rem}.acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:.86rem}dt{color:var(--faint);white-space:nowrap}dd{margin:0}.banner{background:var(--green-s);border-left:4px solid var(--green);padding:12px 16px;border-radius:0 10px 10px 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.banner b{font-size:1rem}.app{max-width:1760px}.hero-card{padding:34px 44px 30px;margin:22px 0 30px;position:relative;overflow:hidden}.loopwrap{padding:72px 24px 0;overflow-x:auto;position:relative}.loop{min-width:1100px;padding:0 24px}.ln .d{width:46px;height:46px;font-size:.92rem;animation:pop .45s cubic-bezier(.2,.8,.2,1) both}.ln .lbl{font-size:.9rem}.ln .lbl.above{bottom:58px}.ln .lbl.below{top:58px}.sg{height:6px;border-radius:3px;animation:fade .5s both}.sg:not(.done){height:4px;background:repeating-linear-gradient(90deg,var(--ai) 0 7px,transparent 7px 15px);background-size:15px 4px;animation:march 1.4s linear infinite,fade .5s both;opacity:.75}@keyframes march{to{background-position:15px 0}}@keyframes pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fade{0%{opacity:0}to{opacity:1}}.arc{display:block;width:100%;height:120px;margin-top:40px;min-width:1100px}.arc path{fill:none;stroke:var(--ai);stroke-width:3;stroke-dasharray:6 10;opacity:.8}.backloop{margin-top:-52px;position:relative;font-size:.86rem}.backloop:before{display:none}.chips{margin-top:34px}.ln .d{animation:none}.sg{height:6px;border-radius:3px;background:#dde3e2;animation:none;position:relative}.sg.done{background:var(--green)}.sg:not(.done){height:6px;opacity:1;background:#dde3e2}.sg:not(.done):after{content:"";position:absolute;left:0;right:0;top:1px;height:4px;border-radius:2px;background:repeating-linear-gradient(90deg,var(--ai) 0 8px,transparent 8px 16px);opacity:.75}.arc{height:100px;margin-top:38px}.arc path{stroke:var(--ai);stroke-width:3;stroke-dasharray:.1 11;stroke-linecap:round;opacity:.85}.backloop{margin-top:-8px}.ln.cur .d{box-shadow:0 0 0 4px var(--green-s)}.sg:not(.done):after{background-size:16px 4px;animation:ants 1.1s linear infinite}.arc path{animation:ants-arc 1.4s linear infinite}@keyframes ants-arc{to{stroke-dashoffset:-11}}@media(prefers-reduced-motion:reduce){.sg:not(.done):after,.arc path{animation:none}}.sg:not(.done):after{background:repeating-linear-gradient(90deg,var(--ai) 0 8px,transparent 8px 16px);background-size:16px 4px;height:4px;top:1px;opacity:.85;animation:ants 1.1s linear infinite}@keyframes ants{to{background-position:16px 0}}.arc path{stroke-width:4;stroke-dasharray:8 8;stroke-linecap:butt;opacity:.85;animation:ants-arc 1.1s linear infinite}@keyframes ants-arc{to{stroke-dashoffset:16}}.arc{height:120px;margin-top:-24px;position:relative;z-index:0}.ln{z-index:1}.ln .d{position:relative;z-index:2}.ln .lbl.below{background:var(--card);padding:0 6px;z-index:2}.brand{display:flex;align-items:baseline;gap:10px}.brand b{font-size:1.15rem;font-weight:700}.brand span{font-size:.78rem;color:var(--soft)}.split{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}.hero-l{padding:52px 60px;display:flex;flex-direction:column;background:linear-gradient(160deg,#e5efec,#f3f5f5 45%,#f6ecee)}.hero-l h1{margin-top:auto;margin-bottom:auto;transform:translateY(-6vh);font-size:2.9rem;line-height:1.25}@media(max-width:860px){.split{grid-template-columns:1fr;grid-template-rows:auto 1fr}.hero-l{padding:28px 20px 26px}.hero-l h1{transform:none;margin:20px 0 0;font-size:1.6rem}}.hero-r{display:flex;flex-direction:column;padding:52px 60px;background:var(--bg)}.hero-r .brand{visibility:hidden;margin-bottom:0}.lcard{width:100%;max-width:460px;margin:auto;transform:translateY(-6vh);display:flex;flex-direction:column;gap:16px}@media(max-width:860px){.hero-r{padding:28px 20px 40px}.hero-r .brand{display:none}.lcard{transform:none}}.ltabs{border-bottom:1px solid var(--line2);text-align:center}.ltab{font-weight:700;border-bottom:2px solid var(--green);display:inline-block;padding:8px 44px 10px}.field label{display:block;font-size:.84rem;color:var(--soft);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:11px 13px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font-size:.95rem}.field textarea{min-height:88px;resize:vertical;line-height:1.6}.field .hint{font-size:.78rem;color:var(--faint);margin-top:5px}.linkdot{position:relative;display:block;width:14px;height:14px;margin:4px 0 0 4px;border-radius:50%;background:var(--dc)}.linkdot.ok{--dc:#4CC05E;animation:dotbeat 1.8s ease-out infinite}.linkdot.fail{--dc:#E5484D}.linkdot.wait{--dc:#E2A336}.linkdot.idle{--dc:#C9D0CF}.linkdot.ok:after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--dc);opacity:0;animation:dotripple 1.8s ease-out infinite}@keyframes dotbeat{0%{transform:scale(1)}12%{transform:scale(1.15)}28%,to{transform:scale(1)}}@keyframes dotripple{0%{transform:scale(1);opacity:.45}to{transform:scale(2.9);opacity:0}}@media(prefers-reduced-motion:reduce){.linkdot.ok,.linkdot.ok:after{animation:none}.linkdot.ok{box-shadow:0 0 0 5px #4cc05e2e}}.msel{position:relative;min-width:0}.msel-btn{display:block;width:100%;text-align:left;padding:11px 32px 11px 13px;border:1px solid var(--line2);border-radius:8px;background:var(--card) var(--icon-select) no-repeat right 11px center/8px 12px;color:var(--ink);font:inherit;font-size:.95rem;line-height:normal;cursor:pointer}.fgrid .msel-btn{line-height:inherit}.msel.open .msel-btn{border-color:var(--green)}.msel-btn:disabled{cursor:not-allowed;background-color:var(--bg);background-image:var(--icon-select-off);color:var(--soft)}.msel-val{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msel-ph{color:var(--faint)}.msel-pop{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 4px);background:var(--card);border:1px solid var(--line2);border-radius:10px;box-shadow:0 10px 28px #0f172a24;padding:6px;max-height:280px;overflow:auto}.msel .msel-opt{display:flex;align-items:center;gap:10px;margin:0;padding:8px 10px;border-radius:7px;font-size:.92rem;color:var(--ink);cursor:pointer;white-space:nowrap}.msel .msel-opt:hover{background:var(--bg)}.msel .msel-opt input{width:16px;height:16px;min-width:16px;margin:0;padding:0;flex:0 0 auto;accent-color:var(--green)}.enter{width:100%;padding:14px;border:none;border-radius:8px;background:var(--green);color:#fff;font-size:1rem;font-weight:700;cursor:pointer}.enter:disabled{opacity:.6;cursor:progress}.alert{padding:11px 14px;border-radius:8px;font-size:.86rem;background:var(--pink);color:var(--pink-t);border:1px solid #F3C9D8}.alert.ok{background:var(--ok-s);color:var(--ok);border-color:#c7e2cf}.skel{background:linear-gradient(90deg,var(--line) 25%,#EDF0F0 50%,var(--line) 75%);background-size:200% 100%;animation:sk 1.2s infinite;border-radius:8px;height:14px}@keyframes sk{0%{background-position:200% 0}to{background-position:-200% 0}}.empty{padding:34px 20px;text-align:center;color:var(--faint);font-size:.88rem}.drawer{position:fixed;inset:0;background:#1b24226b;display:flex;justify-content:center;align-items:flex-start;padding:5vh 16px;z-index:40;overflow:auto}.drawer.top{z-index:60}.sheet{background:var(--card);border-radius:14px;width:100%;min-width:0;max-width:640px;padding:24px 26px 22px;box-shadow:0 18px 50px #1b24222e}.sheet h2{margin-bottom:14px}.sheet.wide{max-width:1080px}.ai-tabs{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.ai-settings-body{max-width:900px}.ai-settings-section{max-width:760px;padding:2px 0 12px}.ai-settings-section+.ai-settings-section{border-top:1px solid var(--line);padding-top:16px}.ai-settings-section h3{margin:0 0 6px}.ai-setting-row>div:first-child>b{font-weight:400;font-size:.93rem}.ai-setting-row{display:grid;grid-template-columns:minmax(210px,280px) minmax(0,440px);justify-content:start;gap:18px;align-items:center;padding:10px 0}.ai-setting-row>input,.ai-setting-row>select{width:100%;padding:11px 13px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font-size:.95rem}.ai-setting-row>.switch{justify-self:start}.ai-setting-row-top{align-items:start}.ai-setting-control{min-width:0;width:100%}.content-ai-settings .ai-settings-section{max-width:800px}.content-ai-settings .ai-setting-control>input,.content-ai-settings .ai-setting-control>select,.content-ai-settings .ai-setting-control>textarea{width:100%;padding:11px 13px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font:inherit}.content-ai-settings .ai-setting-control>textarea{min-height:118px;line-height:1.55;resize:vertical}.content-ai-settings textarea.ai-prompt-edit{display:block;width:100%;margin-top:8px;padding:11px 13px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font:inherit;font-size:.92rem;line-height:1.65;resize:vertical}.ai-style-refresh{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.ai-style-refresh .btn{white-space:nowrap}.ai-style-refresh-result{display:grid;gap:6px;margin-top:10px}.ai-reference-control{display:flex;gap:8px;align-items:stretch;min-width:0}.ai-reference-control select{flex:1 1 auto;min-width:0;padding:11px 13px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font:inherit}.ai-reference-control .btn{flex:0 0 auto;white-space:nowrap}.typeset-reference-section{max-width:900px!important}.typeset-reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.typeset-reference{display:grid;grid-template-columns:1fr auto;gap:10px;text-align:left;padding:10px;border:1px solid var(--line2);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;cursor:pointer;min-width:0}.typeset-reference:hover{border-color:var(--green);background:var(--green-s)}.typeset-reference.selected{border:2px solid var(--green);padding:9px;background:var(--green-s)}.typeset-reference-preview{grid-column:1/-1;display:flex;flex-direction:column;gap:5px;height:78px;padding:10px 12px;border:1px solid var(--line);border-top:5px solid var(--theme-color);border-radius:7px;background:#fff;overflow:hidden}.typeset-reference-preview i{display:block;height:4px;border-radius:4px;background:#dfe5e3;width:88%}.typeset-reference-preview i:nth-child(3),.typeset-reference-preview i:nth-child(6){width:68%}.typeset-reference-preview .typeset-preview-title{height:8px;width:56%;background:var(--theme-color)}.typeset-reference-preview .typeset-preview-card{height:18px;width:100%;border-left:4px solid var(--theme-color);border-radius:3px;background:color-mix(in srgb,var(--theme-color) 10%,white)}.typeset-reference-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.typeset-reference-copy>b{font-size:.92rem}.typeset-reference>.pill{align-self:start;white-space:nowrap}.typeset-style-section{max-width:900px!important}.typeset-style-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:4px}.typeset-style-heading h3,.typeset-style-heading p{margin:0}.typeset-color-control{display:flex;align-items:center;gap:10px;min-height:42px}.typeset-color-control input[type=color]{width:54px;height:38px;padding:3px;border:1px solid var(--line2);border-radius:8px;background:var(--card);cursor:pointer}.typeset-live-preview{margin-top:12px;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--bg)}.typeset-live-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.typeset-live-preview iframe{display:block;width:min(390px,100%);height:52vh;margin:0 auto;border:1px solid var(--line);border-radius:8px;background:#fff}.ai-compact-panel{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--bg)}.ai-compact-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}@media(max-width:720px){.ai-setting-row{grid-template-columns:1fr;gap:7px}.ai-settings-body{max-width:none}.ai-reference-control{flex-direction:column}.ai-reference-control .btn{width:100%}.typeset-reference-grid{grid-template-columns:1fr}.typeset-style-heading{align-items:flex-start;flex-direction:column}.typeset-style-heading .btn{width:100%}}.dom{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px;background:var(--bg)}.dom .grid{gap:10px}.srcrow{display:grid;grid-template-columns:46px 1fr 110px 90px auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.srcrow:last-child{border-bottom:none}.inline{display:flex;gap:8px;align-items:center;flex-wrap:nowrap}.inline>span{white-space:nowrap}.inline input[type=number]{width:84px;flex:0 0 auto}.tool{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px}.tool.off{background:var(--bg)}.toolhead{display:flex;gap:12px;align-items:flex-start}.toolhead .switch{margin-top:2px}.tool .srcrow{grid-template-columns:46px 1fr 90px 120px auto}.tool .srcrow b,.tool .srcrow .mono{overflow-wrap:anywhere}@media(max-width:620px){.tool .srcrow{grid-template-columns:46px minmax(0,1fr) auto}.tool .srcrow>:nth-child(4){grid-column:2}.tool .srcrow .inline input[type=number]{flex:0 1 84px;min-width:0}}.collector-stat-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.stat{display:inline-flex;gap:6px;align-items:baseline;padding:4px 10px;border-radius:8px;background:var(--bg);font-size:.82rem;color:var(--soft)}.stat b{font-size:.95rem;color:var(--ink)}button.stat-filter{border:1px solid transparent;font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}button.stat-filter:hover{border-color:var(--line2);transform:translateY(-1px)}button.stat-filter:focus-visible{outline:3px solid color-mix(in srgb,var(--green) 28%,transparent);outline-offset:2px}button.stat-filter.on{border-color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--card));box-shadow:inset 0 0 0 1px var(--green);color:var(--green)}button.stat-filter.on b{color:var(--green)}.stat-check{font-weight:800}.collector-filter-summary{margin:2px 0 8px}.collector-legacy-note{margin:0 0 10px}.sheet .grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:620px){.sheet .grid{grid-template-columns:1fr}}.sheet .full{grid-column:1/-1}.sheet footer{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;position:sticky;bottom:-5vh;z-index:1;margin:20px -26px -22px;padding:12px 26px 22px;background:var(--card);border-radius:0 0 14px 14px;box-shadow:0 -1px 0 var(--line)}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.seg{display:inline-flex;max-width:100%;border:1px solid var(--line2);border-radius:8px;overflow:hidden;overflow-x:auto}.seg button{border:none;background:var(--card);padding:7px 13px;font-size:.83rem;cursor:pointer;color:var(--soft);border-right:1px solid var(--line);white-space:nowrap;flex:0 0 auto}.seg button:last-child{border-right:none}.seg button.on{background:var(--green);color:#fff}.seg button:focus-visible{outline-offset:-3px}.gates{display:flex;gap:6px;flex-wrap:wrap}.btn:disabled{opacity:.45;cursor:not-allowed}.s-sop{background:#fff1d6;color:#7a4b00}.s-hol,.s-fest{background:#e8f1fb;color:#1f5fa3}.s-med{background:#e3f3ef;color:#0b6b5a}.s-work{background:#f3f3f3;color:#555;border:1px dashed #b5b5b5}.slot.clickable{cursor:pointer}.slot.clickable:hover{filter:brightness(.96)}.mgrid{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;table-layout:fixed}.mgrid th{text-align:center;padding:8px 4px;border-bottom:1px solid var(--line)}.mgrid td{vertical-align:top;padding:6px 6px 8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);height:104px}.mgrid td:last-child{border-right:none}.mgrid tr:last-child td{border-bottom:none}.mgrid td.other{background:var(--bg)}.mgrid td.other .mday b{color:var(--faint);font-weight:500}.mgrid td.wkend:not(.other){background:#fafbfb}.mday{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--soft);margin-bottom:5px;min-height:22px}.mday b{font-weight:600;color:var(--ink)}.mgrid td.today .mday b{background:var(--green);color:#fff;border-radius:50%;width:22px;height:22px;display:inline-grid;place-items:center}.madd{border:0;background:transparent;color:var(--faint);cursor:pointer;font-size:1rem;line-height:1;padding:0 2px;opacity:0}.mgrid td:hover .madd{opacity:1}.mgrid .slot{padding:3px 7px;font-size:.76rem;line-height:1.35;margin-bottom:3px;border-radius:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evform{display:flex;flex-direction:column}.ev-title{width:100%;font-size:1.15rem;font-weight:600;padding:8px 0 14px;border:0;border-bottom:1px solid var(--line);outline:none;background:transparent;color:var(--ink)}.ev-title::placeholder{color:var(--faint);font-weight:500}.ev-row{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);min-height:54px}.kpi-actual-form .ev-row{grid-template-columns:minmax(128px,max-content) minmax(0,1fr)}@media(max-width:640px){.kpi-actual-form .ev-row{grid-template-columns:minmax(0,1fr);gap:6px}}.ev-row.ev-top{align-items:flex-start}.ev-label{font-size:.92rem;color:var(--ink);white-space:nowrap}.ev-val{min-width:0}.ev-val input,.ev-val select,.ev-val textarea{padding:9px 12px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font-size:.92rem;font-family:inherit;max-width:100%}.ev-val input[type=text],.ev-val textarea,.ev-val select{width:100%}.ev-val textarea{min-height:76px;resize:vertical;line-height:1.5}.ev-inline{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ev-inline input,.ev-inline select{width:auto;flex:0 1 auto}.ev-right{display:flex;justify-content:flex-end}.ev-static{color:var(--soft);font-size:.92rem}.ev-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ev-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--ai-s);color:var(--ai);font-size:.86rem;white-space:nowrap}.ev-chip button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:0}.ev-plus{width:32px;height:32px;border-radius:8px;border:1px solid var(--line2);background:var(--bg);font-size:1.1rem;cursor:pointer;color:var(--ink);flex:0 0 auto}.ev-picker{margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);display:flex;flex-wrap:wrap;gap:10px 18px}.ev-picker label{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;white-space:nowrap;cursor:pointer}.ev-hint{font-size:.78rem;color:var(--faint);padding-top:10px}.switch{position:relative;display:inline-block;width:46px;height:26px;flex:0 0 auto}.switch input{opacity:0;width:0;height:0;position:absolute}.switch .knob{position:absolute;inset:0;background:var(--line2);border-radius:26px;transition:.15s;cursor:pointer}.switch .knob:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.15s;box-shadow:0 1px 2px #0003}.switch input:checked+.knob{background:var(--green)}.switch input:checked+.knob:before{transform:translate(20px)}.linkbtn{border:0;background:none;color:var(--green);cursor:pointer;padding:0;font:inherit;text-decoration:underline;text-underline-offset:3px}.linkbtn.tiny{font-size:.78rem}.legend{display:flex;flex-wrap:wrap;gap:6px 18px;line-height:1.7}.sw{display:inline-block;width:12px;height:12px;border-radius:50%;vertical-align:-1px;border:1px solid rgba(27,36,34,.18)}.sw-dash{display:inline-block;width:24px;height:0;border-top:2px dashed #9a9a9a;vertical-align:middle}.tlink{color:var(--green);text-decoration:none}.tlink:hover{text-decoration:underline;text-underline-offset:3px}@media(max-width:640px){table.ctable{min-width:0}table.ctable thead{display:none}table.ctable,table.ctable tbody{display:block}table.ctable tr{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line)}table.ctable tr:last-child{border-bottom:none}table.ctable td{display:block;padding:0;border:none;min-width:0!important}table.ctable td.c-full{flex:1 1 100%}table.ctable td.c-empty{display:none}table.ctable td[data-k]:before{content:attr(data-k) " ";color:var(--faint);font-size:.8rem}}.drow{grid-template-columns:76px minmax(0,1fr) auto}.firstcol{min-width:180px}@media(max-width:640px){.drow{grid-template-columns:76px minmax(0,1fr)}.drow>.dpills{grid-column:2}.firstcol{min-width:0}}:root{--icon-select:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none' stroke='%235B6866' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 4.75l3-3 3 3M1 7.25l3 3 3-3'/%3E%3C/svg%3E");--icon-select-off:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none' stroke='%238A9593' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 4.75l3-3 3 3M1 7.25l3 3 3-3'/%3E%3C/svg%3E");--icon-date:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none' stroke='%235B6866' stroke-width='1.3' stroke-linecap='round'%3E%3Crect x='1.65' y='2.65' width='10.7' height='9.7' rx='2'/%3E%3Cpath d='M1.65 5.9h10.7M4.6 1.2v2.6M9.4 1.2v2.6'/%3E%3C/svg%3E");--icon-date-off:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none' stroke='%238A9593' stroke-width='1.3' stroke-linecap='round'%3E%3Crect x='1.65' y='2.65' width='10.7' height='9.7' rx='2'/%3E%3Cpath d='M1.65 5.9h10.7M4.6 1.2v2.6M9.4 1.2v2.6'/%3E%3C/svg%3E");--icon-time:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none' stroke='%235B6866' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7' cy='7' r='5.6'/%3E%3Cpath d='M7 4.1V7l2 1.3'/%3E%3C/svg%3E");--icon-time-off:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none' stroke='%238A9593' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7' cy='7' r='5.6'/%3E%3Cpath d='M7 4.1V7l2 1.3'/%3E%3C/svg%3E");--icon-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.8 5.2 4 7.3l4.2-4.6'/%3E%3C/svg%3E");--ring:color-mix(in srgb,var(--green) 24%,transparent)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;text-spacing-trim:space-all}:where(select){padding:8px 12px;border:1px solid var(--line2);border-radius:8px;background-color:var(--card);color:var(--ink);font-size:.84rem}select:not([multiple]):not([size]){-webkit-appearance:none;appearance:none;max-width:100%;cursor:pointer;background-image:var(--icon-select)!important;background-repeat:no-repeat!important;background-position:right 11px center!important;background-size:8px 12px!important;padding-right:32px!important}select:not([multiple]):not([size]):disabled{background-image:var(--icon-select-off)!important;cursor:not-allowed}select:has(option[value=""][disabled]:checked){color:var(--faint)}select option{color:var(--ink)}input:is([type=date],[type=time],[type=datetime-local]){position:relative;background-image:var(--icon-date)!important;background-repeat:no-repeat!important;background-position:right 10px center!important;background-size:14px 14px!important;padding-right:32px!important}input[type=time]{background-image:var(--icon-time)!important}input:is([type=date],[type=datetime-local]):disabled{background-image:var(--icon-date-off)!important}input[type=time]:disabled{background-image:var(--icon-time-off)!important}input::-webkit-calendar-picker-indicator{position:absolute;right:5px;top:50%;width:24px;height:24px;margin:-12px 0 0;padding:0;opacity:0;cursor:pointer}input::-webkit-datetime-edit,input::-webkit-datetime-edit-fields-wrapper{padding:0}input::-webkit-datetime-edit-year-field,input::-webkit-datetime-edit-month-field,input::-webkit-datetime-edit-day-field,input::-webkit-datetime-edit-hour-field,input::-webkit-datetime-edit-minute-field{padding-top:0;padding-bottom:0}input::-webkit-date-and-time-value{text-align:left;min-height:1.4em;min-height:1lh}input[type=number]{-moz-appearance:textfield;appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=file]::file-selector-button{margin:-4px 10px -4px 0;padding:3px 12px;border:1px solid var(--line2);border-radius:6px;background:var(--card);color:var(--ink);font:inherit;font-size:.84rem;line-height:1.4;cursor:pointer}input[type=file]::file-selector-button:hover{border-color:var(--green)}input[type=checkbox]:not(.switch input){-webkit-appearance:none;appearance:none;flex:0 0 auto;display:inline-block;width:16px!important;height:16px!important;min-width:16px;margin:0;padding:0!important;vertical-align:-3px;border:1.5px solid var(--line2)!important;border-radius:4px!important;background:var(--card) no-repeat center/10px 10px!important;cursor:pointer;transition:background-color .12s,border-color .12s}input[type=checkbox]:not(.switch input):checked{border-color:var(--green)!important;background-color:var(--green)!important;background-image:var(--icon-check)!important}input[type=checkbox]:not(.switch input):indeterminate{border-color:var(--green)!important;background-color:var(--green)!important;background-image:linear-gradient(#fff,#fff)!important;background-size:8px 2px!important}input[type=checkbox]:not(.switch input):disabled{background-color:var(--bg)!important;cursor:not-allowed}input[type=checkbox]:not(.switch input):disabled:checked{background-color:var(--line2)!important;border-color:var(--line2)!important}label.ck{display:inline-flex;align-items:center;gap:6px}:is(input,select,textarea):focus{outline:none}:is(input,select,textarea,.msel-btn):focus-visible{outline:3px solid var(--ring);outline-offset:0;border-color:var(--green)}.switch input:focus-visible+.knob{outline:3px solid var(--ring);outline-offset:2px}:where(button,a,summary,[role=button],[tabindex]):focus-visible{outline:2px solid var(--green);outline-offset:2px}:is(select,textarea,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color])):disabled{background-color:var(--bg)!important;color:var(--soft)!important;-webkit-text-fill-color:var(--soft);opacity:1;cursor:not-allowed}::placeholder{color:var(--faint);opacity:1}input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--card) inset;-webkit-text-fill-color:var(--ink);caret-color:var(--ink)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary:before{content:"";display:inline-block;width:5px;height:5px;margin:0 8px 2px 1px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .15s}details[open]>summary:before{transform:rotate(45deg)}a.btn{display:inline-block;text-decoration:none}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:none;border-radius:5px}.prompt-view{border:1px solid var(--line2);border-radius:8px;background:var(--bg);padding:10px 13px;font-size:.86rem;line-height:1.65;color:var(--soft);white-space:pre-wrap;word-break:break-word}.prompt-view p{margin:0 0 6px}.prompt-view p:last-child{margin-bottom:0}.prompt-view b{color:var(--ink);font-weight:500}.prompt-view-scroll{max-height:420px;overflow:auto}.time-select{display:inline-flex;gap:6px;align-items:center}.time-select select{width:auto;min-width:92px}.time-list{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.time-list-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ico{flex:none}@media(max-width:640px){.app.shell{padding:0 12px 96px}.ptop{position:sticky;top:0;z-index:30;margin:0 -12px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.pbar{display:flex;align-items:center;gap:10px;height:60px;padding:0 16px}.pbar .brand{flex:1;min-width:0;white-space:nowrap;overflow:hidden}.pbar .brand b{font-size:1.05rem}.pbar .brand span{color:var(--faint)}.pwho{flex:none;width:34px;height:34px;border-radius:50%;background:var(--green-s);color:var(--green);display:inline-grid;place-items:center;font-size:.86rem;font-weight:700}.pmenu{flex:none;width:44px;height:44px;padding:0;border-radius:14px;border:1px solid var(--line2);background:var(--card);color:var(--ink);display:grid;place-items:center;cursor:pointer}.pnav{position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);overflow-y:auto;overscroll-behavior:contain;background:var(--card);border-bottom:1px solid var(--line);box-shadow:0 12px 28px #1018281f;padding:6px 12px calc(16px + env(safe-area-inset-bottom))}.pnav-who{display:flex;align-items:center;gap:10px;padding:10px 8px 4px;font-size:.88rem;color:var(--soft)}.pnav-who .pwho{width:28px;height:28px;font-size:.78rem}.pnav-lab{font-size:.76rem;color:var(--faint);padding:10px 8px 4px}.pnav-it{display:flex;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 10px;border:0;border-radius:12px;background:none;color:var(--ink);font-size:.98rem;text-align:left;cursor:pointer}.pnav-it b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--bg);font-size:.76rem;font-weight:600}.pnav-it .ico{color:var(--soft)}.pnav-it em{margin-left:auto;font-style:normal;font-size:.8rem;font-weight:400;color:var(--faint)}.pnav-it.on{background:var(--green-s);color:var(--green);font-weight:600}.pnav-it.on b{background:var(--card)}.pnav-it.on .ico{color:var(--green)}.pnav-sep{height:1px;background:var(--line);margin:8px 6px}.pnav-acts{display:flex;gap:8px;margin-top:12px}.pnav-acts .btn{flex:1 1 0;min-height:46px;border-radius:12px;font-size:.94rem;display:inline-flex;align-items:center;justify-content:center;gap:6px}.pnav-dim{position:fixed;inset:0;z-index:29;background:#1b242261}.pband{margin:0 -12px 14px;padding:16px 16px 14px;color:#fff;background:linear-gradient(125deg,#09443F 0%,var(--green) 55%,#16806F 100%)}.pband-eye{display:inline-flex;align-items:center;gap:6px;padding:2px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#ffffff1f;font-size:.78rem}.pband-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin:8px 0 2px}.pband h1{flex:1 1 auto;min-width:0;margin:0;font-size:1.6rem;line-height:1.3;color:#fff}.pband-sub{font-size:.88rem;opacity:.82}.pband-acts{display:flex;gap:6px;margin-left:auto}.pband-acts:empty{display:none}.pband-acts .btn,.pband-acts .btn.plus{position:relative;height:28px;padding:0 10px;border-radius:8px;font-size:.75rem;line-height:1;display:inline-flex;align-items:center;border-color:#ffffff73;background:#ffffff1f;color:#fff}.pband-acts .btn:after{content:"";position:absolute;inset:-8px -3px}.pband-acts .btn.pri{border-color:#fff;background:#fff;color:var(--green);font-weight:600}.pband-acts .kpm-month{position:relative;display:inline-flex}.pband-acts .kpm-month-face{display:inline-flex;align-items:center;height:28px;padding:0 24px 0 10px;border-radius:8px;border:1px solid #fff;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%230D5F57' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 9px center;color:var(--green);font-size:.75rem;font-weight:600;line-height:1;white-space:nowrap}.pband-acts .kpm-month select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.pband-steps{position:relative;display:flex;gap:8px;overflow-x:auto;margin:12px -16px 0;padding:0 16px 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.pband-steps::-webkit-scrollbar{display:none}.pband-st{flex:none;padding:5px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:#ffffff14;color:#fff;font-size:.84rem;white-space:nowrap;cursor:pointer}.pband-st b{margin-right:4px;font-weight:600}.pband-st.on{border-color:#fff;background:#fff;color:var(--green);font-weight:600}.sticky{top:72px}}@media(max-width:640px){:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card{padding:0 14px 14px;border-radius:16px;box-shadow:0 1px 2px #1018280a}.app.wb>[id=matrix]{background:var(--card);border:1px solid var(--line)}:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>:is(.head,h2):first-child{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;min-height:48px;margin:0 -14px 12px!important;padding:8px 14px;background:#f7f9f9;border-bottom:1px solid var(--line);border-radius:15px 15px 0 0}:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>.head:first-child h2,:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>h2:first-child{display:flex;align-items:center;gap:8px;margin:0;font-size:1rem;line-height:1.4;white-space:nowrap}:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>:is(.head,h2):first-child .ico{color:var(--green)}:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>.head:first-child .crumb{margin:0;font-size:.74rem;line-height:1.3}:is(:is(.app.wb,.app.mg>.mgpage)>.card,.app.pdash .card)>.head.ch-block:first-child{background:#fdeef3;border-bottom-color:#f7d5e0}:is(:is(.app.wb,.app.mg>.mgpage)>.card,.app.pdash .card)>.head.ch-wait:first-child{background:#fcf4e4;border-bottom-color:#f1e3c4}:is(:is(.app.wb,.app.mg>.mgpage)>.card,.app.pdash .card)>.head.ch-block:first-child :is(h2,.ico){color:var(--pink-t)}:is(:is(.app.wb,.app.mg>.mgpage)>.card,.app.pdash .card)>.head.ch-wait:first-child :is(h2,.ico){color:var(--amber-t)}:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>.head:first-child .btn{display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 10px;border-radius:9px;font-size:.8rem}:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>.head:first-child select{height:32px;padding-top:0;padding-bottom:0;border-radius:9px;font-size:.8rem}:is(.app.wb,.app.mg,.app.pdash) .pill{border-radius:999px;padding:.12rem .62rem}:is(:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>.head:first-child,.app.wb>.card>.rows,:is(.app.wb,.app.mg) table.ctable,.qtile) .pill{display:inline-flex;align-items:center;gap:5px}:is(:is(:is(.app.wb,.app.mg>.mgpage)>:is(.card,[id=matrix]),.app.pdash .card)>.head:first-child,.app.wb>.card>.rows,:is(.app.wb,.app.mg) table.ctable,.qtile) .pill:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:currentColor}.app.wb>.card>.rows>.row:first-child{padding-top:2px}.app.wb>.card>.rows>.row:last-child{padding-bottom:2px}.app.wb>.todo-card>.rows>.row{grid-template-columns:minmax(0,1fr);gap:6px;padding:12px 0}.app.wb>.todo-card>.rows>.row>.pill{justify-self:start}.app.wb>.todo-card>.rows>.row>span:empty{display:none}.app.wb>.todo-card>.rows>.row>.btn{min-height:44px;margin-top:4px;border-radius:12px;border-color:var(--green);background:var(--green);color:#fff;font-size:.94rem}.app.wb>.card>.rows>.qrow{grid-template-columns:minmax(0,1fr);gap:6px}.app.wb>.card>.rows>.qrow>:nth-child(2){order:-1;justify-content:flex-start!important}.app.wb>.card>.rows>.qrow>:is(:nth-child(2),:nth-child(3)):empty{display:none}.app.wb>.card>.rows>.qrow>:nth-child(3){display:flex;flex-wrap:wrap;gap:8px;white-space:normal!important}.app.wb>.card>.rows>.drow{grid-template-columns:minmax(0,1fr);gap:6px}.app.wb>.card>.rows>.drow>.dpills{grid-column:auto;justify-content:flex-start!important}.app.wb :is(.s1-acts,.s2-acts){display:flex;flex-wrap:wrap;gap:8px;width:100%}.app.wb>.card .ph-acts{width:100%}:is(.app.wb :is(.s1-acts,.s2-acts),.app.wb>.card .ph-acts,.app.wb>.card>.rows>.qrow>:nth-child(3))>.btn,:is(.app.wb,.app.mg) table.ctable td.c-act .btn{display:inline-flex;align-items:center;justify-content:center;flex:1 1 0;min-width:0;min-height:42px;border-radius:10px;font-size:.9rem}:is(.app.wb,.app.mg) table.ctable td.c-st{order:-1}:is(.app.wb,.app.mg) table.ctable td.c-act>:is(span,div){display:flex!important;flex-wrap:wrap;gap:8px;width:100%}:is(.app.wb,.app.pdash)>.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px;background:none;border:0;border-radius:0;overflow:visible}:is(.app.wb,.app.pdash)>.kpis>.kpi{min-width:0;padding:12px 14px!important;background:var(--card);border:1px solid var(--line)!important;border-radius:14px}:is(.app.wb,.app.pdash)>.kpis>.kpi .v{font-size:1.5rem}:is(.app.wb,.app.pdash)>.kpis>.kpi .v.na{font-size:1rem}.qtiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.qtile{display:flex;flex-direction:column;min-width:0;padding:9px 12px 10px;border:1px solid var(--line);border-radius:12px}.qt-n{display:block;font-size:.88rem;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.qt-k{font-size:.76rem;line-height:1.5;color:var(--faint)}.qt-k .nw{white-space:nowrap}.qt-r{display:flex;align-items:baseline;justify-content:space-between;margin-top:auto;padding-top:4px}.qt-r b{font-size:1.25rem;line-height:1.2;color:var(--green)}.q-tight .qt-r b{color:var(--amber-t)}.q-over .qt-r b{color:var(--pink-t)}.qt-track{height:4px;margin:5px 0 6px;border-radius:4px;background:var(--bg);overflow:hidden}.qt-track i{display:block;height:100%;border-radius:4px;background:var(--green)}.q-tight .qt-track i{background:var(--amber-t)}.q-over .qt-track i{background:var(--pink-t)}.qt-f{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap}.app.wb>[id=matrix] .mx :is(th,td):first-child{position:sticky;left:0;z-index:1;min-width:96px;max-width:112px;background:var(--card);box-shadow:inset -1px -1px 0 var(--line),6px 0 8px -6px #1018282e}.app.pdash{padding:0 12px 96px}.app.pdash .grid2{gap:12px}.app.pdash .bb-card,.app.pdash .bb-grid,.app.pdash .bb-tiles{margin-bottom:12px}.pband-ctl{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:12px}.pband-ctl .seg{border-color:#ffffff73}.pband-ctl .seg button{padding:5px 14px;background:#ffffff14;color:#fff;border-right-color:#ffffff4d;font-size:.82rem}.pband-ctl .seg button.on{background:#fff;color:var(--green);font-weight:600}.pband-ctl .btn{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:8px;border-color:#ffffff73;background:#ffffff1f;color:#fff;font-size:.8rem}.pband-asof{font-size:.78rem;opacity:.8;white-space:nowrap}}@media(max-width:640px){.mask,.drawer{padding:0;align-items:stretch;overscroll-behavior:contain}.modal,.modal.wide,.sheet,.sheet.wide{display:flex;flex-direction:column;max-width:none;min-height:100%;margin:0;padding:0 16px 16px;border-radius:0;box-shadow:none;animation:psheet .24s ease-out}.drawer>.sheet{align-self:flex-start}.modal>.head:first-child,.sheet>h2:first-child{position:sticky;top:0;z-index:3;margin:0 -16px 12px!important;padding:12px 16px;background:var(--card);border-bottom:1px solid var(--line)}.modal>.head:first-child h2,.sheet>h2:first-child{font-size:1.05rem;line-height:1.4}.modal>.acts:last-child,.sheet footer{position:sticky;bottom:0;z-index:3;display:flex;flex-wrap:wrap;justify-content:stretch;gap:8px;margin:auto -16px -16px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--card);border-radius:0;box-shadow:0 -1px 0 var(--line),0 -6px 18px #1b24220f}.modal>.acts:last-child>.btn,.sheet footer>.btn{flex:1 1 0;min-width:0;min-height:46px;border-radius:12px;font-size:.95rem}.modal>.acts:last-child>span,.sheet footer>span{flex:1 1 100%;order:-2;margin-left:0!important;text-align:center}.modal>.acts:last-child>[data-modal-close]{order:-1}:is(.modal>.acts:last-child,.sheet footer)>.btn.pri{order:1}:is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea,.msel-btn){font-size:16px!important}.app.shell>.head h1{font-size:1.4rem;line-height:1.35}.app.shell>.head>div:last-child{margin-left:0!important;flex-wrap:wrap}.cmt-sheet{position:fixed;left:0;right:0;bottom:0;z-index:45;padding:8px 16px calc(12px + env(safe-area-inset-bottom));background:var(--card);border-radius:18px 18px 0 0;box-shadow:0 -10px 30px #1018282e;animation:cmt-up .22s ease-out}.cmt-sheet:before{content:"";display:block;width:40px;height:4px;margin:0 auto 10px;border-radius:2px;background:var(--line2)}.cmt-sheet-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.cmt-sheet-h b{font-size:1rem}.cmt-sheet textarea{min-height:110px;max-height:36vh}.cmt-sheet .acts{flex-wrap:nowrap;margin-top:10px}.cmt-sheet .acts .btn{flex:1 1 0;min-height:44px;border-radius:12px;font-size:.95rem}.cmt-pad{height:48vh}.app.mg>.mgpage>.tw{border-radius:16px}.app.mg table.ctable td.c-rcpt>div{display:inline}.app.mg table.ctable td.c-rcpt>div+div{margin-left:6px}.app.mg table.ctable td .linkdot{display:inline-block;vertical-align:-2px;margin:0 0 0 4px}}@keyframes psheet{0%{transform:translateY(28px);opacity:.5}to{transform:none;opacity:1}}@keyframes cmt-up{0%{transform:translateY(100%)}to{transform:none}}@media(prefers-reduced-motion:reduce){.modal,.sheet,.cmt-sheet{animation:none!important}}.chk-err{color:var(--pink-t,#C2185B);font-size:.8rem;line-height:1.4;margin-top:4px}input.chk-bad,textarea.chk-bad{border-color:var(--pink-t,#C2185B)!important}.agr-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.agr-acts .btn{padding:6px 10px}.agr-done{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}.agr-signers{display:flex;flex-direction:column;gap:6px}.agr-signer{display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap}.agr-who{white-space:nowrap}.agr-card-bad{color:var(--pink-t)}.sheet footer{flex-wrap:wrap;row-gap:8px}.s1-kpipick{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.kt .s1-kpipick select.mini{width:auto;max-width:none}.s1-kpipick-m{display:flex;align-items:center;gap:12px}@media(max-width:640px){.s1-kpiset{grid-template-columns:minmax(0,1fr)}.s1-kpiset .inline{flex-wrap:wrap;row-gap:6px}.s1-kpiset .inline>span.s1-wrap{white-space:normal;min-width:0}}.s1-kpicards{display:flex;flex-direction:column;gap:10px}.s1-kpicard{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--card)}.s1-kpicard .t{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.s1-kpicard .t b{min-width:0}.s1-kpicard dd{min-width:0;overflow-wrap:anywhere}.s1-current{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:245px;text-align:left;white-space:normal}.s1-current-value{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}@media(max-width:640px){.s1-current{min-width:0;width:100%}}.s1-daylist{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:0 12px}.s1-day{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.s1-day:last-child{border-bottom:none}.s1-day .dd{font-size:.8rem;color:var(--soft);white-space:nowrap;line-height:1.35}.s1-day .dd b{display:block;font-size:.98rem;color:var(--ink)}.s1-day.today .dd b{color:var(--green)}.s1-day .slot{white-space:normal;overflow-wrap:anywhere;margin-bottom:4px}.s1-trow{grid-template-columns:150px minmax(0,1fr) fit-content(45%)}.s1-trow>b,.s1-trow>div{min-width:0}.s1-tags{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.s1-tags .pill{white-space:normal;max-width:100%;overflow-wrap:anywhere}.s1-tags .btn{white-space:nowrap}.s1-acts{display:inline-flex;gap:8px;align-items:center;flex:none}.s1-pills{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}.s1-tcode{display:flex;flex-direction:column;gap:2px}.s1-tcode>span{white-space:nowrap}@media(max-width:900px){.s1-tcode{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:10px}}@media(max-width:900px)and (min-width:641px){.s1-trow{grid-template-columns:minmax(0,1fr) fit-content(45%);row-gap:4px}.s1-trow>.mono{grid-column:1/-1}}@media(max-width:640px){.s1-trow{grid-template-columns:minmax(0,1fr);gap:6px}.s1-tags{justify-content:flex-start;gap:8px}.s1-pills{margin-left:0}}table.s1-narrow{min-width:0}@media(max-width:640px){.s1-dashhead{flex-wrap:wrap;align-items:flex-start}.s1-dashhead .nodenav{margin-left:0;width:100%;flex-wrap:wrap;align-items:center}.s1-dashhead .seg{flex:none}}.s1-swap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card)}.s1-swap>.alert{grid-column:1/-1}.s1-swap-all{grid-column:1/-1;display:flex;align-items:center;gap:8px}.s1-swap-all span{min-width:0}.s1-swap-acts{grid-column:1/-1;display:flex;gap:10px}.s1-swap-acts .btn{white-space:nowrap}@media(max-width:640px){.s1-swap{grid-template-columns:1fr}}.s2-ai-launch{display:grid;grid-template-columns:minmax(220px,1fr) minmax(360px,520px);gap:18px;align-items:center;margin:10px 0 14px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}.s2-ai-launch-copy{min-width:0;line-height:1.45}.s2-ai-launch-copy b{display:block;margin-bottom:3px}.s2-ai-launch-actions{display:flex;gap:8px;align-items:center;min-width:0}.s2-ai-launch-actions select{flex:1 1 auto;min-width:0;padding:9px 11px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font-size:.86rem}.s2-ai-launch-actions .btn{flex:0 0 auto}.row.s2-srow{grid-template-columns:190px minmax(0,1fr) auto auto}.row.s2-orow{grid-template-columns:minmax(0,1fr) 180px auto}.s2-acts{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;align-items:center}.s2-hl{animation:s2-hl 2.4s ease-out 1}@keyframes s2-hl{0%,40%{background:var(--amber-s)}to{background:transparent}}@media(max-width:640px){.s2-ai-launch{grid-template-columns:1fr;gap:10px}.s2-ai-launch-actions{align-items:stretch;flex-direction:column}.s2-ai-launch-actions select,.s2-ai-launch-actions .btn{width:100%}.row.s2-srow{grid-template-columns:minmax(0,1fr) auto}.s2-srow>:nth-child(2){grid-column:1/-1;order:-1}.s2-srow>:nth-child(4){grid-column:1/-1;justify-content:flex-start}.row.s2-orow{grid-template-columns:minmax(0,1fr)}.s2-orow .track{display:none}.s2-orow .s2-acts{justify-content:flex-start}}.s2-rowerr{grid-column:1/-1;font-size:.8rem;color:var(--pink-t)}.s2-w-out{width:280px}.s2-w-date{width:150px}.s2-w-slot{width:92px}@media(max-width:640px){.s2-sched thead{display:none}.s2-sched,.s2-sched tbody,.s2-sched tr,.s2-sched td{display:block;width:100%}table.s2-sched{min-width:0}.s2-sched tr{padding:10px 12px;border-bottom:1px solid var(--line)}.s2-sched tr:last-child{border-bottom:none}.s2-sched td{border:0;padding:4px 0!important;min-width:0!important;white-space:normal}.s2-sched td[data-label]:before{content:attr(data-label);display:block;font-size:.78rem;color:var(--soft)}.s2-sched select,.s2-sched input{width:100%!important}}.s2-revbar{display:none}@media(max-width:1000px){.s2-revbar{display:flex;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:30;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);box-shadow:0 -6px 18px #1b242214}.s2-revbar .btn{flex:1 1 0;min-width:0}.s2-revpad{height:72px}.s2-decide{display:none!important}}.kpm-head h1{margin:0}.kpm-head .kpm-month{margin-left:auto;display:flex;align-items:center;gap:8px}.kpm-head .kpm-month select{height:37px;padding:0 12px;border:1px solid var(--line2);border-radius:8px;background:var(--card);font-size:.84rem;color:var(--ink)}.kpm-list{display:flex;flex-direction:column;gap:18px}.kpm-card{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}.kpm-top{display:flex;align-items:center;gap:12px;padding:18px 22px 0;flex-wrap:wrap}.kpm-av{width:38px;height:38px;border-radius:50%;background:var(--green-s);color:var(--green);display:flex;align-items:center;justify-content:center;font-weight:700;flex:none}.kpm-who b{font-size:1.08rem;display:block;line-height:1.25}.kpm-who span{font-size:.8rem;color:var(--faint)}.kpm-top .pill{margin-left:auto}.kpm-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:16px 22px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden}.kpm-tile{padding:14px 18px;border-right:1px solid var(--line);background:linear-gradient(180deg,#fff,#fafcfb)}.kpm-tile:last-child{border-right:0}.kpm-tile .l{font-size:.78rem;color:var(--soft)}.kpm-tile .v{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:1.75rem;line-height:1.15;font-weight:600;color:var(--ink);white-space:nowrap}.kpm-tile .v.na{font-family:var(--sans);font-size:1rem;color:var(--faint);font-weight:400;line-height:2.1}.kpm-tile .v small{font-family:var(--sans);font-size:.85rem;font-weight:400;color:var(--soft);margin-left:6px}.kpm-tile.g .v{color:var(--green)}.kpm-calc{margin:8px 22px 0;font-size:.8rem;color:var(--soft)}.kpm-sec{margin:18px 22px 0}.kpm-sec>h3{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:.86rem;font-weight:700;color:var(--green-d);margin:0 0 8px;letter-spacing:.02em}.kpm-sec>h3 .t{white-space:nowrap}.kpm-sec>h3 .mono{overflow-wrap:anywhere}.kpm-sec>h3 .muted{font-weight:400;font-size:.8rem}.kpm-sec>h3 .btn{margin-left:auto}.kpm-items{width:100%;border-collapse:separate;border-spacing:0;min-width:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}.kpm-items th{background:#f6f9f8;color:var(--soft);font-weight:500;font-size:.76rem;padding:9px 12px;white-space:nowrap;border-bottom:1px solid var(--line)}.kpm-items td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:.88rem}.kpm-items tr:last-child td{border-bottom:0}.kpm-items .acc{font-weight:600;display:block;line-height:1.35}.kpm-items .met{font-size:.78rem;color:var(--faint)}.kpm-items .num{white-space:nowrap}.kpm-items .c{text-align:center}.kpm-g{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 6px;border-radius:7px;font-weight:700;font-size:.86rem;background:var(--idle-s);color:var(--soft)}.kpm-g.S,.kpm-g.A{background:var(--green-s);color:var(--green)}.kpm-g.B{background:#e8f0f6;color:#2d5c7f}.kpm-g.C{background:var(--amber-s);color:var(--amber-t)}.kpm-g.D{background:var(--pink);color:var(--pink-t)}.kpm-sc{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--soft);font-size:.8rem;margin-left:6px}.kpm-tag{display:inline-block;font-size:.72rem;border-radius:5px;padding:0 6px;margin-left:6px;vertical-align:1px}.kpm-tag.zero{background:var(--pink);color:var(--pink-t)}.kpm-tag.wait{background:var(--amber-s);color:var(--amber-t)}.kpm-bar{display:flex;gap:3px;margin-top:5px}.kpm-bar i{flex:1;height:5px;border-radius:3px;background:#e9eeed}.kpm-bar i.hit{background:var(--green)}.kpm-bar i.tgt{box-shadow:inset 0 0 0 1.5px var(--amber-t)}.kpm-adj{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}.kpm-adj li{display:flex;gap:12px;align-items:baseline;padding:9px 14px;border-bottom:1px solid var(--line);font-size:.88rem}.kpm-adj li:last-child{border-bottom:0}.kpm-adj li b{font-family:var(--mono);margin-left:auto;white-space:nowrap}.kpm-adj li.none{color:var(--faint)}.kpm-adj .n{color:var(--faint);font-family:var(--mono);font-size:.8rem}.kpm-signers{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-size:.86rem}.kpm-signer{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.kpm-signer .tiny{color:var(--faint)}.kpm-disputes{display:flex;flex-direction:column;gap:8px;margin-top:10px}.kpm-dispute{border:1px solid var(--line);border-left:3px solid var(--line2);border-radius:0 10px 10px 0;padding:9px 12px;font-size:.84rem;color:var(--soft);background:var(--bg)}.kpm-dispute.open{border-left-color:var(--pink-t);background:#fff7f9}.kpm-dispute .h{font-weight:700;color:var(--ink);margin-bottom:2px}.kpm-dispute.open .h{color:var(--pink-t)}.kpm-dispute .rc{color:var(--green-d)}.kpm-dispute .oc{color:var(--ink)}.kpm-rc{width:100%;border-collapse:separate;border-spacing:0;min-width:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:.86rem}.kpm-rc th{background:#f6f9f8;color:var(--soft);font-weight:500;font-size:.76rem;padding:8px 10px;white-space:nowrap;border-bottom:1px solid var(--line)}.kpm-rc td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}.kpm-rc tr:last-child td{border-bottom:0}.kpm-rc tr.chg td{background:#fff7e8}.kpm-rc .note{display:block;font-size:.76rem;color:var(--faint)}.kpm-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 22px 18px;margin-top:18px;border-top:1px solid var(--line);background:#fbfcfc}.kpm-foot .why{font-size:.8rem;color:var(--faint);margin-right:auto}.kpm-foot .acts{display:flex;gap:8px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.kpm-note{margin:10px 22px 0}.kpm-paper-wrap{background:#e9eeed;border-radius:12px;padding:22px;max-height:70vh;overflow:auto}.kpm-paper{background:#fff;max-width:820px;margin:0 auto;padding:34px 38px;box-shadow:0 6px 24px #1b242224;border-radius:4px}.kpm-adjrow{display:grid;grid-template-columns:1fr 110px auto;gap:8px;align-items:start;margin-bottom:8px}.kpm-adjrow input{width:100%}.kpm-adjsum{display:flex;gap:14px;flex-wrap:wrap;font-size:.86rem;color:var(--soft);margin:6px 0 0}.kpm-adjsum b{color:var(--ink);font-family:var(--mono)}.kpm-ro{padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink)}@media(max-width:640px){.kpm-top{padding:14px 14px 0}.kpm-tiles{grid-template-columns:1fr 1fr;margin:12px 14px 0}.kpm-tile{padding:11px 12px}.kpm-tile:nth-child(2){border-right:0}.kpm-tile:nth-child(3){grid-column:1 / span 2;border-top:1px solid var(--line);border-right:0}.kpm-tile .v{font-size:1.45rem}.kpm-calc,.kpm-note{margin-left:14px;margin-right:14px}.kpm-sec{margin:14px 14px 0}.kpm-items thead{display:none}.kpm-items,.kpm-items tbody{display:block}.kpm-items tr{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 12px;border-bottom:1px solid var(--line)}.kpm-items tr:last-child{border-bottom:0}.kpm-items td{padding:0;border:0}.kpm-items td.i-acc{grid-column:1}.kpm-items td.i-g{grid-column:2;grid-row:1 / span 2;align-self:center;text-align:right}.kpm-items td.i-act{grid-column:1;font-size:.84rem}.kpm-items td.i-w,.kpm-items td.i-t{display:none}.kpm-foot{padding:12px 14px 14px}.kpm-foot .acts{width:100%}.kpm-foot .acts .btn{flex:1}.kpm-paper-wrap{padding:8px;max-height:none}.kpm-paper{padding:18px 14px}.kpm-adjrow{grid-template-columns:1fr 86px auto}}.chart-style-control{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.chart-preview-row{display:flex;gap:12px;flex-wrap:wrap;margin:4px 0 10px}.chart-preview-row figure{margin:0;flex:1 1 200px;min-width:0;max-width:260px}.chart-preview-row img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.chart-preview-row figcaption{font-size:.78rem;color:var(--faint);text-align:center;margin-top:4px;white-space:nowrap}.stock-provider{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;align-items:center;min-width:0}.stock-provider>span{font-size:.86rem;color:var(--soft);white-space:nowrap}.stock-provider input:not([type=checkbox]){width:100%;min-width:0;padding:9px 11px;border:1px solid var(--line2);border-radius:8px;background:var(--card);color:var(--ink);font:inherit}.stock-provider input:not([type=checkbox]):focus{outline:2px solid var(--green-s);border-color:var(--green)}.stock-provider input:not([type=checkbox]):disabled{color:var(--soft);background:var(--bg)}.stock-provider-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}.stock-provider-line>input{flex:1 1 180px}.stock-provider .pill{white-space:normal}@media(max-width:720px){.stock-provider{grid-template-columns:1fr}}.figure-tile{display:flex;flex-direction:column;align-items:center;max-width:200px}.figure-tile .figure-cap{font-size:.78rem;color:var(--faint);margin-top:4px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.figure-edit{display:flex;flex-direction:column;gap:6px;align-self:stretch;width:200px;max-width:100%;min-width:0;margin-top:6px}.figure-edit.wide{width:352px}.figure-edit-form{display:flex;flex-direction:column;gap:6px;min-width:0}.figure-edit-form textarea{min-height:64px;padding:8px 10px;font-size:.84rem;resize:vertical}.figure-edit-acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.figure-edit-acts .btn{white-space:nowrap}.figure-edit-acts select{flex:1 1 auto;min-width:0;padding-top:4px;padding-bottom:4px;font-size:.76rem}.figure-marks{display:flex;flex-direction:column;gap:4px}.figure-mark{font-size:.8rem;background:var(--bg);border-radius:6px;padding:4px 6px;overflow-wrap:anywhere}.sg-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 0}.sg-meta+.tiny{margin-bottom:4px}.sg-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid var(--line)}.sg-row:last-child{border-bottom:none}.sg-row>.pill{margin-top:3px}.sg-row .why{font-size:.84rem;color:var(--soft);margin-top:4px;overflow-wrap:anywhere}.sg-row .why>i{font-style:normal;color:var(--faint)}.sg-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.sg-follow{margin:12px 0 4px;padding:10px 14px 4px;border-radius:10px;background:var(--bg)}.sg-follow h3{margin:0}.sg-follow .sg-row{padding:10px 0}.sg-toggles{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sg-diff{margin-top:12px}.sg-diff td{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.86rem}.sg-diff td:first-child{white-space:normal;color:var(--soft)}@media(max-width:640px){.sg-row{grid-template-columns:auto minmax(0,1fr)}.sg-acts{grid-column:2;justify-content:flex-start}}.bb-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.bb-tile{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px 10px;min-width:0}.bb-tile-k{font-size:.86rem;color:var(--soft);cursor:help;width:fit-content}.bb-tile-v{font-size:1.75rem;font-weight:600;line-height:1.2;margin-top:4px;color:var(--ink)}.bb-delta{font-size:.8rem;color:var(--faint);margin-top:2px;white-space:nowrap}.bb-delta.up{color:var(--ok)}.bb-delta.down{color:var(--pink-t)}.bb-delta.flat{color:var(--soft)}.bb-delta.sm{font-size:.74rem;margin-top:0}.bb-chart{position:relative;width:100%;min-width:0;margin-top:6px;touch-action:manipulation}.bb-chart svg{display:block;overflow:visible}.bb-axis{stroke:var(--line2);stroke-width:1}.bb-grid{stroke:var(--line);stroke-width:1}.bb-none{fill:var(--line2)}.bb-val{font-size:11px;font-weight:600;fill:var(--ink);font-family:var(--sans)}.bb-x{font-size:10.5px;fill:var(--faint);font-family:var(--sans);font-variant-numeric:tabular-nums}.bb-x.on{fill:var(--ink);font-weight:600}.bb-tip{position:absolute;transform:translate(-50%,-100%);pointer-events:none;background:var(--ink);color:#fff;border-radius:8px;padding:6px 10px;font-size:.78rem;line-height:1.35;white-space:nowrap;box-shadow:0 4px 14px #00000024;z-index:2}.bb-tip-h{color:#ffffffb8;font-size:.72rem}.bb-tip-b{font-weight:600}.bb-card,.bb-grid{margin-bottom:16px}.bb-head-r{margin-left:auto;display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.bb-sum{color:var(--ink);font-size:.9rem}.bb-legend{display:inline-flex;gap:10px;font-size:.78rem;color:var(--soft);white-space:nowrap}.bb-legend span{display:inline-flex;align-items:center;gap:5px}.bb-legend i{display:inline-block;width:10px;height:10px;border-radius:3px}.bb-accs{display:flex;flex-direction:column}.bb-acc{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line)}.bb-acc:last-child{border-bottom:none}.bb-acc-h{font-size:.8rem;color:var(--faint);padding-top:0}.bb-acc-n{font-size:.88rem;color:var(--ink);overflow-wrap:anywhere}.bb-acc-c{display:flex;flex-direction:column;min-width:0}.bb-acc-c b{font-weight:600;font-variant-numeric:tabular-nums}.bb-acc-k{display:none;font-size:.74rem;color:var(--faint)}.bb-kpis{display:flex;flex-direction:column;gap:14px}.bb-kpi-h{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:.88rem;color:var(--ink);margin-bottom:6px}.bb-kpi-h>span:first-child{min-width:0;overflow-wrap:anywhere}.bb-kpi-h .pill{flex:none}.bb-meter{display:flex;flex-direction:column;gap:4px}.bb-meter-track{height:8px;border-radius:4px;background:var(--green-s);overflow:hidden}.bb-meter-fill{height:100%;border-radius:4px;background:var(--green)}.bb-kpi-v{font-size:.8rem;color:var(--soft)}.bb-kpi-v b{color:var(--ink)}.bb-sec{margin-top:6px}.bb-hbars{display:flex;flex-direction:column;gap:8px}.bb-hbar{display:grid;grid-template-columns:minmax(84px,max-content) minmax(0,1fr) 36px;gap:10px;align-items:center}.bb-hbar .num{text-align:right;font-variant-numeric:tabular-nums}.bb-hbar-track{height:10px;display:block}.bb-hbar-track i{display:block;height:100%;min-width:0;background:var(--green);border-radius:0 4px 4px 0;opacity:.85}@media(max-width:900px){.bb-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.bb-tiles{gap:10px}.bb-tile{padding:12px 12px 8px}.bb-tile-v{font-size:1.35rem}.bb-delta{white-space:normal}.bb-acc{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:6px}.bb-acc-h{display:none}.bb-acc-n{grid-column:1/-1;font-weight:600}.bb-acc-k{display:block}.bb-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.bb-flow .kpi{border-right:none;border-bottom:1px solid var(--line);padding:14px}.bb-flow .kpi .v{font-size:1.5rem}}
