html,body,#root{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5}.board{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;align-items:flex-start}.board-column{min-width:280px;max-width:280px;background:#fafafa;border-radius:8px;padding:8px;border:1px solid #f0f0f0}.board-column__body{max-height:calc(100vh - 320px);overflow-y:auto;display:flex;flex-direction:column;gap:8px;min-height:60px}.board-column--over{background:#e6f4ff;border-color:#91caff}.board-card{cursor:grab;-webkit-user-select:none;user-select:none}.board-card:active{cursor:grabbing}.row-overdue td:first-child{box-shadow:inset 3px 0 #ff4d4f}.row-cooling td:first-child{box-shadow:inset 3px 0 #faad14}.clickable{cursor:pointer}.row-active td{background:#e6f4ff!important}.field-grid{display:grid;background:#fff;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}.field-grid__item{padding:10px 14px;min-width:0;border-right:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0}.field-grid__label{font-size:12px;line-height:18px;color:#8c8c8c;margin-bottom:2px}.field-grid__value{font-size:14px;line-height:20px;color:#262626;overflow-wrap:anywhere}.contact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.contact-tile{background:#fff;border:1px solid #f0f0f0;border-radius:10px;padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:10px;transition:border-color .15s,box-shadow .15s}.contact-tile:hover{border-color:#91caff;box-shadow:0 2px 10px #0000000f}.contact-tile--active{border-color:#1677ff;box-shadow:0 0 0 2px #1677ff1f}.contact-tile__head{display:flex;gap:10px;align-items:flex-start;min-width:0}.contact-tile__name{font-weight:600;font-size:14px;line-height:20px;color:#262626;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-tile__sub{font-size:12px;line-height:18px;color:#8c8c8c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-tile__context{font-size:13px;line-height:19px;color:#595959;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.contact-tile__foot{display:flex;justify-content:space-between;gap:10px;font-size:12px;line-height:18px;border-top:1px solid #f5f5f5;padding-top:8px;margin-top:auto}.contact-tile__foot span:last-child{text-align:right}.feed-month{font-size:12px;font-weight:600;color:#8c8c8c;text-transform:uppercase;letter-spacing:.03em;margin:14px 0 8px}.feed-month:first-child{margin-top:0}.feed-item{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:10px 0;border-top:1px solid #f5f5f5}.feed-item:first-of-type{border-top:none}.feed-item__date{font-size:12px;line-height:18px;color:#8c8c8c;white-space:nowrap}.feed-item__day{font-size:15px;font-weight:600;color:#262626;line-height:20px}.feed-item__body{min-width:0}.feed-item__summary{font-size:14px;line-height:20px;color:#262626;overflow-wrap:anywhere}.feed-item__meta{font-size:12px;line-height:18px;color:#8c8c8c;margin-top:2px}.feed-item__note{font-size:13px;line-height:19px;color:#595959;margin-top:6px;white-space:pre-wrap;overflow-wrap:anywhere}.feed-item__note--clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cal-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:12px;align-items:start}@media (max-width: 1100px){.cal-grid{grid-template-columns:minmax(0,1fr)}}.cal-legend{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:#8c8c8c}.cal-legend i{width:7px;height:7px;border-radius:50%;display:inline-block}.cal-day{position:sticky;top:16px}.cal-header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px 12px}.cal-cell{display:flex;flex-direction:column;gap:2px;overflow:hidden}.cal-chip{font-size:11px;line-height:16px;padding:1px 6px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.cal-chip--plan{background:#e6f4ff;color:#0958d9}.cal-chip--done{background:#f5f5f5;color:#595959}.cal-chip:hover{filter:brightness(.95)}.cal-more{font-size:11px;line-height:15px;color:#8c8c8c;padding-left:6px}.cal-row{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:8px;border-radius:8px;cursor:pointer;border:1px solid transparent}.cal-row:hover{background:#fafafa}.cal-row--active{background:#e6f4ff;border-color:#91caff}.metric-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.metric{background:#fff;border:1px solid #f0f0f0;border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:2px;min-height:104px}.metric--clickable{cursor:pointer;transition:border-color .15s}.metric--clickable:hover{border-color:#91caff}.metric__title{font-size:13px;line-height:20px;color:#8c8c8c}.metric__value{font-size:26px;font-weight:600;line-height:36px;color:#262626}.metric__hint{font-size:12px;line-height:18px;color:#bfbfbf;margin-top:auto}.dash-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:12px;align-items:start}@media (max-width: 1100px){.dash-grid{grid-template-columns:minmax(0,1fr)}}.segment-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:#f5f5f5}.segment-bar>div{height:100%}.share-bar{height:6px;border-radius:3px;background:#f5f5f5;overflow:hidden}.share-bar>div{height:100%;background:#1677ff;border-radius:3px}.detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:12px;align-items:start}@media (max-width: 1100px){.detail-grid{grid-template-columns:minmax(0,1fr)}}.tile-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.accent-tile{background:#fff;border:1px solid #f0f0f0;border-radius:10px;padding:12px 16px;display:flex;flex-direction:column;gap:2px;min-height:92px}.accent-tile__title{font-size:12px;line-height:18px;color:#8c8c8c;display:flex;align-items:center;gap:6px}.accent-tile__value{font-size:18px;font-weight:600;line-height:26px;color:#262626}.accent-tile__hint{font-size:12px;line-height:18px;color:#8c8c8c;margin-top:auto;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
