.heatmap-wrap{margin-bottom:4px;overflow:visible}.heatmap{border-collapse:collapse;width:100%;font-size:12px}.heatmap__label-col{text-align:left;color:#8b949e;white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;max-width:160px;padding:2px 8px 2px 0;font-size:11px;overflow:hidden}.heatmap__day-col{text-align:center;color:#6e7681;font-variant-numeric:tabular-nums;padding:2px 4px 4px;font-size:10px;font-weight:600}.heatmap__cell{text-align:center;vertical-align:middle;border:1px solid #050505;width:38px;height:24px;position:relative}.heatmap__cell:hover{z-index:10;border-color:#58a6ff}.heatmap__cell:hover .heatmap__tooltip{display:block}.heatmap__cell--last .heatmap__tooltip{left:auto;right:0;transform:none}.heatmap__tooltip{z-index:100;pointer-events:none;background:#0a0a0a;border:1px solid #1a1a1a;border-radius:4px;min-width:200px;max-height:320px;padding:8px 10px;font-size:11px;display:none;position:absolute;top:calc(100% + 6px);left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 4px 12px #000c}.tooltip__title{color:#f0f6fc;white-space:nowrap;margin-bottom:2px;font-weight:600}.tooltip__date{color:#8b949e;font-variant-numeric:tabular-nums;margin-bottom:6px}.tooltip__hours{flex-direction:column;gap:1px;display:flex}.tooltip__hour-row{color:#c9d1d9;font-variant-numeric:tabular-nums;gap:8px;line-height:1.4;display:flex}.hour__time{color:#6e7681;flex-shrink:0;width:36px}.hour__in{color:#58a6ff;text-align:right;width:60px}.hour__out{color:#bc8cff;text-align:right;width:60px}.legend{align-items:center;gap:6px;margin-top:4px;margin-bottom:8px;display:flex}.legend__item{color:#6e7681;font-size:10px}.legend__gradient{background:linear-gradient(90deg,#111,#58a6ff4d,#58a6ffb3,#58a6ff);border-radius:2px;width:80px;height:8px;display:inline-block}*{box-sizing:border-box;margin:0;padding:0}body{color:#c9d1d9;background:#000;min-height:100vh;font-family:Berkeley Mono,Fira Mono,Cascadia Code,monospace;line-height:1.5}.container{max-width:720px;margin:0 auto;padding:24px 16px}.header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.header__label{letter-spacing:1px;text-transform:uppercase;color:#6e7681;margin-bottom:6px;font-size:10px;font-weight:700}.header__date{color:#f0f6fc;font-size:18px;font-weight:600}.header__meta{color:#6e7681;margin-left:auto;font-size:11px}.section{margin-bottom:28px}.section__title{letter-spacing:2px;text-transform:uppercase;color:#6e7681;border-bottom:1px solid #111;margin-bottom:12px;padding-bottom:6px;font-size:10px;font-weight:700}.section__sub{letter-spacing:1px;text-transform:uppercase;color:#484f58;margin-top:16px;margin-bottom:8px;font-size:10px;font-weight:700}.section__sub:first-child{margin-top:0}table{border-collapse:collapse;width:100%;font-size:13px}td{padding:5px 0}.row__label{color:#8b949e}.row__value{text-align:right;color:#f0f6fc;font-variant-numeric:tabular-nums;font-weight:600}.row__dim{text-align:right;color:#6e7681;font-variant-numeric:tabular-nums;width:48px;padding-left:12px}.row__hint{color:#6e7681;margin-left:6px;font-size:11px;font-weight:400}.swatch{vertical-align:middle;border-radius:2px;width:10px;height:10px;margin-right:8px;display:inline-block}.tag{letter-spacing:.5px;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.tag--ok{color:#3fb950;background:#3fb9501f}.tag--warn{color:#e3b341;background:#e3b3411f}.tag--urgent{color:#f85149;background:#f851491f}.tag--neutral{color:#58a6ff;background:#58a6ff1f}.bar{background:#111;border-radius:3px;height:6px;margin:4px 0 10px;display:flex;overflow:hidden}.bar__fill{border-radius:3px;height:100%;transition:width .4s}.stackbar{background:#111;border-radius:4px;height:28px;margin-bottom:14px;display:flex;overflow:hidden}.stackbar>div{transition:width .4s}.note{color:#6e7681;margin-bottom:8px;font-size:11px}.note--indent{padding-left:18px}.item{justify-content:space-between;align-items:center;padding:4px 0;font-size:13px;display:flex}.item__text{color:#c9d1d9}.item__sub{color:#6e7681;font-size:11px}.footer{color:#484f58;text-align:right;border-top:1px solid #111;margin-top:8px;padding-top:20px;font-size:11px}
