*,:after,:before{box-sizing:border-box}body,html{margin:0}body{background:#f4f3ef;color:#15171c;font-family:Inter Tight,system-ui,sans-serif;font-size:14px;line-height:1.45}a{color:#2446c7}a:hover{color:#16308f}button,select{font:inherit}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.hdr{background:#15171c;color:#f4f3ef}.sel{background:#22252c;padding:6px 10px}.hbtn,.sel{color:#f4f3ef;border:1px solid #3a3e48;border-radius:6px;font:inherit;font-size:13px;min-height:40px;cursor:pointer}.hbtn{display:inline-flex;align-items:center;gap:8px;background:transparent;padding:6px 12px}.hbtn,.nav a{text-decoration:none}.nav a{display:block;color:#5b6070;padding:14px 2px;border-bottom:2px solid transparent;white-space:nowrap;font-weight:500}.nav a.on,.nav a:hover{color:#15171c}.nav a.on{border-bottom-color:#2446c7}.card{background:#fff;border:1px solid #e3e1da;border-radius:10px}.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.ok{background:#e3f1e8;color:#17603a}.warn{background:#fbebd3;color:#7f4a00}.bad{background:#fbe4e1;color:#a01f15}.tbd{background:#ecebe6;color:#4c5161}.info{background:#e5eafb;color:#1e3aa8}.lock{background:#15171c;color:#f4f3ef}.lbl{font-weight:500}.hint,.lbl{font-size:12px;color:#5b6070}.dash{font-family:JetBrains Mono,ui-monospace,monospace;color:#6b7080}h1{font-size:28px;font-weight:700;letter-spacing:-.02em}h1,h2{margin:0}h2{font-size:15px;font-weight:600}h3{margin:0;font-size:16px}table{border-collapse:collapse;width:100%}th{text-align:left;font-size:12px;font-weight:600;color:#5b6070;padding:10px 14px;border-bottom:1px solid #e3e1da;white-space:nowrap;background:#fafaf7}td{padding:12px 14px;border-bottom:1px solid #eeece6;vertical-align:top}.banner{background:#fbe4e1;color:#7a1810;text-align:center;padding:8px 16px;font-size:13px;font-weight:600}.menu{position:absolute;right:0;top:calc(100% + 8px);background:#fff;color:#15171c;border:1px solid #e3e1da;border-radius:10px;min-width:240px;padding:8px;box-shadow:0 12px 40px rgba(21,23,28,.12);z-index:20}.menu a,.menu button{display:flex;width:100%;text-align:left;background:transparent;border:0;color:inherit;text-decoration:none;padding:8px 10px;border-radius:6px;cursor:pointer;font:inherit;font-size:13px}.menu a:hover,.menu button:hover{background:#f4f3ef}.abtn,.dbtn{font:inherit;font-size:12px;font-weight:600;padding:6px 10px;border-radius:6px;border:1px solid #e3e1da;background:#fafaf7;color:#6b7080;min-height:32px}.abtn{color:#15171c}.abtn,.pill{background:#fff;cursor:pointer}.pill{font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;border:1px solid #e3e1da;color:#3a3e48;min-height:36px}.pill.on{background:#15171c;color:#f4f3ef;border-color:#15171c}.tab{font:inherit;font-size:14px;font-weight:600;padding:10px 16px;border:0;border-radius:8px;background:transparent;color:#5b6070;min-height:44px;cursor:pointer}.tab.on{background:#fff;color:#15171c;box-shadow:0 0 0 1px #e3e1da}.col{background:#ecebe6;border-radius:10px;padding:12px;flex-direction:column;gap:10px;min-height:220px}.col,.colh{display:flex}.colh{justify-content:space-between;align-items:baseline;font-weight:600;font-size:13px}.empty{border:1px dashed #cfccc2;border-radius:8px;padding:14px;font-size:12px;color:#5b6070;background:#f4f3ef}.slot{border:1px solid #eeece6;border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:8px;background:#fff}.day{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;color:#5b6070}.blk{background:#fff;border:1px solid #e3e1da;border-radius:10px;padding:18px 20px;flex-direction:column;gap:10px}.blk,.rule{display:flex}.rule{gap:12px;padding:12px 0;border-top:1px solid #2c3038}.rn{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;color:#a9adb8;width:22px;flex:none;padding-top:2px}.brow{display:grid;grid-template-columns:130px 1fr 44px;grid-gap:12px;gap:12px;align-items:center;padding:7px 0}.bar{height:10px;border-radius:5px;background:#ecebe6;overflow:hidden}.bar>span{display:block;height:100%;background:#2446c7}.up{color:#17603a}.down,.up{font-weight:600;font-size:12px}.down{color:#a01f15}.lk{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#f4f3ef;background:#15171c;padding:2px 8px;border-radius:999px;white-space:nowrap}.cks{flex-wrap:wrap;gap:4px}.cks,.ms{display:flex}.ms{gap:14px;align-items:flex-start;padding:12px 0;border-top:1px solid #eeece6}.md{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;color:#5b6070;width:92px;flex:none;padding-top:2px}[hidden]{display:none!important}body[data-blur=on] .person{filter:blur(6px);-webkit-user-select:none;-moz-user-select:none;user-select:none}body[data-hide-dollars=off] .amount-mask,body[data-hide-dollars=on] .amount{display:none}.page,.wrap{max-width:1392px;margin:0 auto}.page{padding:28px 24px 64px;display:flex;flex-direction:column;gap:24px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:12px;gap:12px}.stack{display:flex;flex-direction:column;gap:16px}